Изменения

Перейти к навигации Перейти к поиску

FireURQ:Таймер через pause

3646 байт добавлено, 11:52, 13 июня 2012
Новая: Пример реализации таймера при помощи оператора pause. :init ; локация инициализации perkill ; очищаем все пер...
Пример реализации таймера при помощи оператора pause.

:init ; локация инициализации
perkill ; очищаем все переменные
textalign = 3 ; выравниванием текст по центру
timer = 9 ; устанавливаем таймер на 9 секунд
year = "" ; задаём строковую переменную, в которой будет храниться введённая игроком информация<br />
:go ; основная локация
cls ; очищаем экран
if go_1 <> 0 then year = year + "#go_1$" ; проверяем, если переданный в локацию параметр не равен 0, то «приписываем» его строковое значение переменной year
if go_1 = 666 then year = "" ; если переданный параметр равен 666 (передаётся от кнопки «Очистить»), то очищаем переменную year
pln Год рождения Александра Сергеевича Пушкина, быстро! ; печатаем задачу
pln
pln -#%year$- ; печатаем содержимое переменной year
pln
pln 00:0#timer$ ; печатаем содержимое переменной timer в виде «00:09»
pln
if #year$ = 4 and year <> "1799" then goto wrong ; проверяем равно ли количество цифр в переменной year четырём и не равно ли её содержимое правильному ответу, если условия истинны, переходим на локацию-обработчик неправильного ответа
if year = "1799" then goto right ; проверяем равно ли содержимое переменной year правильному ответу, если равно, переходим на локацию-обработчик правильного ответа
pln
; далее кнопки, ведущие на эту же локацию go и передающие параметры для занесения в переменную year
btn go (1), 1
btn go (2), 2
btn go (4), 4
btn go (6), 6
btn go (7), 7
btn go (8), 8
btn go (9), 9
btn go (666), Очистить ; кнопка для очистки переменной year, см. выше
pause 1000 ; пауза на одну секунду (собственно, самый главный оператор =)
timer = timer - 1 ; после паузы таймер уменьшается на единицу
if timer = 0 then goto timeout ; проверяем, не равен ли таймер нулю, если равен переходим на соответствующую локацию-обработчик
goto go ; зацикливаем весь процесс<br />
:right ; локация-обработчик правильного ответа
cls
pln
pln Всё правильно.
pln А. С. Пушкин родился 6 июня (26 мая по старому стилю) 1799 года.
end<br />
:wrong ; локация-обработчик неправильного ответа
cls
pln
pln #%year$? Неверно.
pln Похоже, кто-то плохо учился в школе.
pln
btn init, Исправиться?
end<br />
:timeout ; если время вышло, осуществляется переход сюда
cls
pln
pln Время вышло.
btn init, Ещё раз?
end

[[Категория:FireURQ:Примеры]]

Навигация