Онлайн-справочник по самым часто задаваемым вопросам из темы "Как сделать?" на форуме QSP.su

11.3. Видел в одной из игр, как после нажатия на действие, оно становится неактивным. Как это сделать?

В: Видел в одной из игр, как после нажатия на действие, оно становится неактивным. Как это сделать?

О:

На самом деле это всего лишь частный случай реализации действия по условию.

Для того, чтобы название неактивного действия меняло свой цвет используются html-теги. Поэтому в первую очередь необходимо включить поддержку html. Для этого, например, на самой первой локации в игре пишем:

usehtml=1

Далее в нужном месте вставляем приблизительно такой код:

if действие_не_активно=0:
! если значение переменной-маркера равно нулю (по-умолчанию)
    
! Выводим "активный" вариант действия
    act "Выключить музыку":
        
! действие выключает звуки
        close all
        
! меняем значение переменной-маркера
        действие_не_активно=1
        
! перезаходим на локацию, чтобы увидеть эффект
        goto $curloc
    
! закрываем "активный" вариант действия
    end
else
! если значение переменной-маркера не равно нулю
    
! выводим "неактивный" вариант действия
    act "<font color=#888888>Выключить музыку</font>":
        
! никакой код в действие помещать не нужно
    
! закрываем "неактивный" вариант действия
    end
! закрываем конструкцию условия
end