Форум » » Как это сделать? » Ответить

Как это сделать?

denis: Только начал программить на QSP. Вопрос: как сделать так, чтобы после выполнения одного действия, в этой же локации становились видны другие, до этого не видимые? Хелп читал - не нашёл ответа. И ещё - можно ли с помощью оператора DYNAMIC создавать новые действия и предметы?

Ответов - 201, стр: 1 2 3 4 5 6 7 8 9 10 11 All

Byte: Мне не нужно. Смотреть до конкурса в любом случае не буду.

denis-1: Хорошо, я уже договорился со знакомым в оффлайне, так что тестера я нашёл. Другой вопрос - в правилах указан размер до 2-х мегабайт, что делать, если у меня в игре много изображений (не крупных, но под 70 штук). Просто в локациях можно осматриваться вверх-вниз, влево-вправо. Думаю, урезать не получится. :(

Byte: 2мб это рекомендация :) в принципе, можно и больше.


denis-1: А почему может не работать код USEHTML=1 '<img src="фон.jpg" usrmap="#map">' '<MAP NAME="map"><AREA shape="rect" coords="0,0,1000,1000" href="exec:gt ''...''"></MAP>' Картинка выводится. Локация ... есть.

Byte: "usrmap" вместо "usemap"?

denis-1: Да, спасибо! %)

denis-1: Byte, опят траблы с сохранкой... Игра сохраняется в определённый момент, затем появляется действие act 'загрузить': $ongload='load' opengame '1.sav' end В локации load if прошли_первый_уровень=1: gt 'улица' end Локация 'улица' тоже есть. При попытке всё это проделать плеер ругается и говорит, что нельзя открыть файл (ошибка 105). При попытке загрузить вручную (средствами плеера, т.е.) - тоже самое. Игра сохраняется так: #улица прошли_первый_уровень=1 NoSave=0 SAVEGAME "Другое_зрение.sav" NoSave=1 ... остальное В общем, сохранки, сделанные ручками (Игра->сохранить состояние...) грузятся нормально, сделанные с помощью savegame - не пашут.

Byte: act 'загрузить': $ongload='load' opengame '1.sav' end $ongload='load' здесь ни к чему, так как при загрузке сохранения переменные будут загружены из файла. $ongload нужно устанавливать перед savegame. ругается на файл именно в этой локации и в этой строчке?

Byte: Сохранения savegame - абсолютно такие же, что и сделанные вручную :)

Byte: А ругается на файл - у тебя [pre2]SAVEGAME "Другое_зрение.sav"[/pre2] но при этом [pre2]opengame '1.sav'[/pre2] имя файла должно быть одинаковым.

denis-1: Да нет, уже одинаковые, всё равно ругается. :( P.S. Да, спасибо, заработало - нужно было $ongload='load' перед сохранением поставить. :)

Nex: Какие-то извращения... Первая игра, и уже в такие дебри залез? Нафига?

denis-1: :) Хочу победить. Чтобы победить, нужно, чтобы моя игра понравилась. Чтобы она понравилась, нужно не халтурить.

Nex: Да не, я просто не могу представить, зачем делать сейвы прямо из игры. Ну, автору виднее. Может, это и правда пригодится.

denis-1: Вот ещё вопрос: т.к. до этого момента моё произведение больше напоминало книгу-игру, то с предметами я особо не работал. А вот теперь не могу понять, как сделать, чтобы по выделению предмета совершалось какое-нибудь действие. Например, у меня есть объект 'мобильник', и после его выделения я хочу перейти на локацию, где обрабатывается работа с мобильным. add obj 'мобильник', 'Объекты\мобильник.jpg' if $SELOBJ='мобильник': GOSUB $SELOBJ end На практике нужно совершение какого-нибудь другого действия - только тогда выделенный объект начинает работать, и выполняется GOSUB $SELOBJ

Byte: denis-1, создай локацию 'OBJSEL', и установи [pre2]$ONOBJSEL='OBJSEL'[/pre2] далее, уже на самой локации [pre2] if $SELOBJ='мобильник': GOSUB $SELOBJ end unselect[/pre2] Неужели совсем справку не читаем?

denis-1: Читаем, иначе как бы я про $SELOBJ узнал :) Да, спасибо, заработало.

denis-1: Как программно выделить объект?

Byte: Зачем?

denis-1: Всё, уже не надо. :) Сделал по-другому, и даже лучше вписалось в сюжет - получилась небольшая загадка.



полная версия страницы