Онлайн-справочник по самым часто задаваемым вопросам из темы "Как сделать?" на форуме QSP.su
14.8. Как сделать, чтоб при щелчке по предмету выполнялся какой-либо код?
В: Как сделать, чтоб при щелчке по предмету выполнялся какой-либо код?
О:
Для начала нужно завести локацию-обработчик выделения предмета. Для этого:
- создаём локацию и называем, например, "если_предмет_выбран". Название может быть любым.
в самой первой локации в игре указываем плееру, какую локацию он должен использовать, как обработчик выделения предмета. Для этого в системную переменную `$onobjsel` вносим имя нашей новой локации:
$onobjsel="если_предмет_выбран"
Теперь код локации будет выполняться всякий раз, когда мы выделяем новый предмет.
Функция `$selobj` возвращает нам название выделенного предмета, поэтому на локации-обработчике мы можем проверять, какой предмет выделен, и выполнять соответствующий код.
Например, можно выводить описание предмета в окно дополнительного описания при щелчке по предмету:
! если выделен предмет Отвёртка
! очищаем окно доп описания
clr
! выводим описание предмета
pl "Прекрасная крестовая отвёртка. Отлично подойдёт для регулирования уровня громкости"
end
Или совершать переход на локацию:
! если выделен предмет Камень телепортации
! переходим на локацию
goto "Эверест"
end
В конце локации-обработчика не забывайте ставить команду `unselect`, чтобы снять выделение и дать игроку возможность повторно воспользоваться предметом.