Counter — различия между версиями
Steps (обсуждение | вклад) |
Steps (обсуждение | вклад) |
||
| Строка 2: | Строка 2: | ||
объекты. Используется для визуализации числа сделанных ходов в игре, оставшихся доступных | объекты. Используется для визуализации числа сделанных ходов в игре, оставшихся доступных | ||
подсказок и т.п. | подсказок и т.п. | ||
| + | |||
| + | == Введение == | ||
В качестве графического ресурса в него перетаскивается анимационный клип из 10 кадров | В качестве графического ресурса в него перетаскивается анимационный клип из 10 кадров | ||
| Строка 18: | Строка 20: | ||
По умолчанию разряды числа счетчика сдвигаются справа налево от его положения в редакторе (неподвижен правый край числа). Если в свойствах счетчика поле "'''влево'''" установить в 1, то | По умолчанию разряды числа счетчика сдвигаются справа налево от его положения в редакторе (неподвижен правый край числа). Если в свойствах счетчика поле "'''влево'''" установить в 1, то | ||
неподвижным будет левый край. | неподвижным будет левый край. | ||
| + | |||
| + | Если начальное значение не попадает в диапазон min, max (например, val=-1), то счетчик становится невидимым. | ||
| + | |||
| + | == Прямое изменение значения == | ||
| + | |||
| + | Значение счетчика можно изменить напрямую, например, их машины состояний: | ||
| + | <pre> | ||
| + | st = "wait" | ||
| + | { | ||
| + | click { go="change" } // при клике - идем в состояние "change" | ||
| + | } | ||
| + | |||
| + | st = "change" | ||
| + | { | ||
| + | set { obj=counter par="val" val="5" } // меняем значение счетчика | ||
| + | set { obj=counter st="reset" } // переустанавливаем его | ||
| + | wait{ go="wait" } | ||
| + | } | ||
| + | </pre> | ||
| + | При клике на машину, она переходит в состояние "change". | ||
| + | В этом состоянии устанавливается параметр счетчика '''val''' в значение 5, после чего он перезапускается, переводясь в состояние "reset" (параметр '''val''' является строковым и его счетчику перечитать, что и делается в состоянии "reset"). Аналогично счетчик можно было бы перевести в состояние "init", но тогда он бы полностью переинитился (обновились бы все его параметры из начальных) настроек. В состоянии "reset" обновляется только поле "val". | ||
| + | |||
| + | Напомним, что если устанавливаемое значение не попадает в диапазон min, max, то счетчик окажется невидимым. | ||
| + | |||
| + | == Значение из options == | ||
| + | |||
| + | Начальное значение счетчика можно задавать не только в редакторе (поле '''val'''), но и получать его сохраненное значение в опциях игры. Пусть некоторая миниигра или машина состояний сохранили в опциях целое значение в переменной, например, с именем "scores". Тогда это значение будет присвоено счетчику, если в настройках счетчика в поле "уровень" написать "scores". | ||
| + | |||
| + | Например, пусть на первом экране есть машина со следующим состоянием | ||
Версия 20:58, 9 февраля 2012
Счетчик является целым положительным числом, значение которого могут изменять другие объекты. Используется для визуализации числа сделанных ходов в игре, оставшихся доступных подсказок и т.п.
Введение
В качестве графического ресурса в него перетаскивается анимационный клип из 10 кадров с цифрами от 0 до 9. Диапазон изменения задается в полях min, max. Начальное значение в поле val. Счетчик можно увеличивать или уменьшать.
Рассмотрим пример применения. Пусть есть счетчик и кнопка. При помощи правой кнопки мыши на кнопке btn_inc добавим раздел "изменить состояние объекта", в котором изменим состояние счетчика на inc (неважные поля опущены):
В результате, при клике на кнопку будет происходить увеличение цифр 0 до 10. После достижения максимальной границы, равной 10, счетчик перестанет увеличиваться. Аналогично, при помощи состояния dec, можно уменьшить значения счетчика. Состояния min и max переводят значение счетчика в минимальное и максимальное значение соответственно.
По умолчанию разряды числа счетчика сдвигаются справа налево от его положения в редакторе (неподвижен правый край числа). Если в свойствах счетчика поле "влево" установить в 1, то неподвижным будет левый край.
Если начальное значение не попадает в диапазон min, max (например, val=-1), то счетчик становится невидимым.
Прямое изменение значения
Значение счетчика можно изменить напрямую, например, их машины состояний:
st = "wait"
{
click { go="change" } // при клике - идем в состояние "change"
}
st = "change"
{
set { obj=counter par="val" val="5" } // меняем значение счетчика
set { obj=counter st="reset" } // переустанавливаем его
wait{ go="wait" }
}
При клике на машину, она переходит в состояние "change". В этом состоянии устанавливается параметр счетчика val в значение 5, после чего он перезапускается, переводясь в состояние "reset" (параметр val является строковым и его счетчику перечитать, что и делается в состоянии "reset"). Аналогично счетчик можно было бы перевести в состояние "init", но тогда он бы полностью переинитился (обновились бы все его параметры из начальных) настроек. В состоянии "reset" обновляется только поле "val".
Напомним, что если устанавливаемое значение не попадает в диапазон min, max, то счетчик окажется невидимым.
Значение из options
Начальное значение счетчика можно задавать не только в редакторе (поле val), но и получать его сохраненное значение в опциях игры. Пусть некоторая миниигра или машина состояний сохранили в опциях целое значение в переменной, например, с именем "scores". Тогда это значение будет присвоено счетчику, если в настройках счетчика в поле "уровень" написать "scores".
Например, пусть на первом экране есть машина со следующим состоянием
