Инструменты пользователя

Инструменты сайта


help:sluzhebnye_lokacii

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Both sides previous revision Предыдущая версия
Следущая версия
Предыдущая версия
help:sluzhebnye_lokacii [2013/11/05 17:09]
newsash
— (текущий)
Строка 1: Строка 1:
-=====Служебные локации===== 
  
-В QSP есть возможность сделать так, что бы локация выполнялась каждый раз при возникновении определенного события. Для этого нужно присвоить название локации предназначенной для этого системной переменной. Пример:​ <sxh qsp> 
-$onobjsel = '​$onobjsel'​ 
-$onnewloc = '​$перерисовка'​ 
-</​sxh>​ 
-  * Сохранения:​ 
-    * **$ONGLOAD** - сразу после загрузки состоянии игры 
-    * **$ONGSAVE** - непосредственно перед сохранением состояния игры 
-  * Предметы:​ 
-    * **$ONOBJADD** - при добавлении предмета 
-      * $ARGS[0] - название добавленного предмета 
-    * **$ONOBJDEL** - при удалении предмета 
-      * $ARGS[0] - название удалённого предмета 
-    * **$ONOBJSEL** - при выборе предмета 
-      * Получить название выбранного предмета можно через функцию "​SELOBJ"​. <sxh qsp> 
-if $selobj = '​чайник':​ 
-  P '​Самый обычный чугунный чайник.'​ 
-end 
-</​sxh>​ 
-      * При выборе играющим какого-либо предмета,​ он остаётся выделенным. Снять выделение можно командой UNSELECT или UNSEL. <sxh qsp> 
-if selobj = '​нож':​ 
-  *P '​Нельзя убить этого человека'​ 
-  unsel 
-end 
-</​sxh>​ 
-  * Локации:​ 
-    * **$ONNEWLOC** - при переходе на новую локацию 
-      * Выполняется перед передачей управления игроку (после выполнения кода всех участвующих в переходах локаций) 
-      * Получить название локации,​ на которую был осуществлён переход,​ можно с помощью функции "​CURLOC"<​sxh qsp> 
-if $curloc = '​дом':​ кошка = 1 
-</​sxh>​ 
-  * Действия:​ 
-    * **$ONACTSEL** - при выборе действия. 
-      * Именно при выборе действия,​ а не при нажатии действия. 
-      * Получить название выбранного действия можно через функцию"​SELACT"​.<​sxh qsp> 
-if instr(1,​$selact,'​Пойти'​):​ play '​sounds\walk.mp3'​ 
-</​sxh>​ 
-  * Время 
-    * $COUNTER - содержит название локации-счётчика. Локация-счётчик полезна для проверки выделенных предметов,​ введённого текста... 
-      * SETTIMER [#​выражение] - задает интервал таймера для локации-счётчика (по умолчанию 500мс, т.е. локация-счётчик обрабатывается 2 раза в секунду). Также влияет на частоту автоматического обновления интерфейса. 
-  * Строка ввода 
-    * $USERCOM - содержит название локации-обработчика строки ввода. Полезна при организации парсера (управление игрой с помощью строки ввода). Текущий текст строки ввода возвращает функция "​USER_TEXT"​. 
- 
-PS: 
- 
-При обработке локаций по GOSUB, а также локаций,​ на которые указывают пункты пользовательского меню и системные переменные ($COUNTER, $USERCOM, $ONGLOAD, $ONGSAVE, $ONNEWLOC, $ONACTSEL, $ONOBJSEL, $ONOBJADD, $ONOBJDEL), учитываются базовые описания и действия на локациях (при отсутствии действий с такими же названиями - к текущим действиям добавляются базовые действия обрабатываемой локации,​ базовое описание локации добавляется к текущему основному описанию). Аналогично,​ при вызовах XGOTO, к текущему основному описанию добавляется базовое описание локации,​ на которую произошёл переход. 
- 
- 
-PS: 
- 
-Очистить строку ввода можно в любом месте игры с помощью оператора "​CMDCLEAR"​. 
- 
-Базовые системные переменные - основные переменные. 
-Переменные,​ задающие обработчики событий - позволяют обрабатывать такие события,​ как выбор предмета,​ переход на новую локацию,​ ввод строки в поле ввода... 
-Переменные настройки интерфейса - позволяют настраивать цвета, шрифт, а также использовать в описаниях HTML. 
- 
-PS: 
-При использовании операторов "​KILLALL,​ KILLVAR"​ удаляются также все системные переменные. 
help/sluzhebnye_lokacii.1383671364.txt.gz · Последние изменения: 2013/11/05 21:09 (внешнее изменение)