/// /// Исходный код текстовой онлайн игры "Демонстрация-пример использования Таймеров " скачан с сайта https://apero.ru/ /// Пройти онлайн или скачать последнюю версию этой игры можно по адресу: https://apero.ru/Текстовые-игры/Демонстрация-пример-использования-Таймеров /// Авторы: Агент007 /// Версия: от 2023-04-12 11:31:47 /// \ТАЙМЕР(3,0,"запуск",1,1,1000,1,1) Ожидайте \СТОП \запуск [b]\ТАЙМЕР(7,11,3,2,3)[/b] Первый параметр - начальное значение, с которого идет отсчет. Таймер от 7 до 0 \ТАЙМЕР(7) (\(запуск,обнови)[i] чтобы посмотреть заново[/i]) [b]\ТАЙМЕР(7)[/b] [hr] Второй параметр - конечное значение, до которого идет отсчет. Может быть меньше начального, тогда отсчет будет в обратную сторону. Таймер от 7 до 15 \ТАЙМЕР(7,15) (\(запуск,обнови)[i] чтобы посмотреть заново[/i]) [b]\ТАЙМЕР(7,15)[/b] [hr] Если начальное или конечное это строка, то происходит смена с начального значения на конечное и обратно. Сменяемые значения день/ночь \ТАЙМЕР("день", "ночь") (\(запуск,обнови)[i] чтобы посмотреть заново[/i]) [b]\ТАЙМЕР("день", "ночь") [/b] [hr] Таймер при превышении конечного значения переходит на локацию[i](она специально не объявлена в этом примере, чтобы не перекидывало на другую локацию)[/i] \ТАЙМЕР(7,15[b],"локация"[/b]) (\(запуск,обнови)[i] чтобы посмотреть заново[/i]) [b]\ТАЙМЕР(7,15,"локация")[/b] [hr] Таймер при превышении конечного значения останавливается \ТАЙМЕР(7,15[b],"СТОП"[/b]) (\(запуск,обнови)[i] чтобы посмотреть заново[/i]) [b]\ТАЙМЕР(7,15,"СТОП")[/b] [hr] Таймер при превышении конечного значения обнуляет значение на 3 \ТАЙМЕР(7,15[b],3[/b]) (\(запуск,обнови)[i] чтобы посмотреть заново[/i]) [b]\ТАЙМЕР(7,15,3)[/b] [hr] Таймер с шагом 2 \ТАЙМЕР(7,15,3[b],2[/b]) (\(запуск,обнови)[i] чтобы посмотреть заново[/i]) [b]\ТАЙМЕР(7,15,3,2)[/b] [hr] Таймер с 3 значимыми цифрами \ТАЙМЕР(7,15,3,2[b],3[/b]) (\(запуск,обнови)[i] чтобы посмотреть заново[/i]) [b]\ТАЙМЕР(7,15,3,2,3)[/b] [hr] Таймер обновляется каждые 2,5 секунды (минимальное значение 50). \ТАЙМЕР(7,15,3,2,3[b],2500[/b]) (\(запуск,обнови)[i] чтобы посмотреть заново[/i]) [b]\ТАЙМЕР(7,15,3,2,3,2500)[/b] [hr] Максимальная скорость таймера каждые 50мс: [b]\ТАЙМЕР(0,1000,0,2,3,50)[/b] [hr] Таймер вместо самообновления по времени ждет пока его обновят по номеру 4(от 1 до 49) \ТАЙМЕР(7,15,3,2,3[b],4[/b]) (\(запуск,обнови)[i] чтобы посмотреть заново[/i]) [b]\ТАЙМЕР(7,15,3,2,3,4)[/b] [hr] Таймер при превышении конечного значения обновляет другой таймер под номером 4(который выше) \ТАЙМЕР(7,15,3,2,3,2500[b],4[/b]) (\(запуск,обнови)[i] чтобы посмотреть заново[/i]) [b]\ТАЙМЕР(7,15,3,2,3,2500,4)[/b] [hr] 8-й параметр - скрыть таймер. Таймер при превышении конечного значения обновляет другой таймер под номером 20(он рядом и виден), при этом сам таймер спрятан. Ниже два таймера, но виден и обновляется только второй. \ТАЙМЕР(7,15,3,2,3,1000,20[b],1[/b]) \ТАЙМЕР("опять","обновился","опять",1,1,20) (\(запуск,обнови)[i] чтобы посмотреть заново[/i]) [b]\ТАЙМЕР(7,15,3,2,3,1000,20,1) \ТАЙМЕР("опять","обновился",0,1,1,20) [/b] [hr] 4 зависимые таймера, увеличивают соседний при превышении конечного значения: \ТАЙМЕР(31,31,1,1,1,13,14) \ТАЙМЕР("мая", "июня", "СТОП", 1, 1, 14), время \ТАЙМЕР(23,23,0,1,2,12,13):\ТАЙМЕР(55,59,0,1,2,1000,12) // ТАЙМЕР(31,31,1,1,1,13,14) // таймер №13(6-й параметр) - 31 день в месяце, при превышении конечного значения вызывает таймер №14(7-й параметр), а сам обнуляется на 1(3-й параметр) // \ТАЙМЕР("мая", "июня", "СТОП", 1, 1, 14) // таймер №14 - месяц мая/июня, при превышении конечного значения ни кого не вызывает, а сам останавливается (3-й параметр) // \ТАЙМЕР(23,23,0,1,2,12,13) // таймер №12 - часы, при превышении конечного значения вызывает таймер №13(7-й параметр), а сам обнуляется на 0(3-й параметр) // \ТАЙМЕР(55,59,0,1,2,1000,12) // таймер без номера(6-й параметр 1000>=50, поэтому обновляется сам каждые 1000мс) - часы, при превышении конечного значения вызывает таймер №12(7-й параметр), а сам обнуляется на 0(3-й параметр) \ТАЙМЕР(31,31,1,1,1,13,14) \ТАЙМЕР("мая", "июня", "СТОП", 1, 1, 14), время \ТАЙМЕР(23,23,0,1,2,12,13):\ТАЙМЕР(55,59,0,1,2,1000,12) (\(запуск,обнови)[i] чтобы посмотреть заново[/i]) [hr] Обратный отсчет 2 минуты 20 секунд с переходом на локация2: \ТАЙМЕР(2,0,"локация2",1,2,5):\ТАЙМЕР(20,0,59,1,2,1000,5) [b]\ТАЙМЕР(2,0,"локация2",1,2,5):\ТАЙМЕР(20,0,59,1,2,1000,5)[/b] \(локация2,перейти досрочно) [hr] Обратити внимание, если хочешь использовать переменные в таймере, чтобы переменная воспринималась именно как число, а не пустая строка "", к переменной добавляй +0. \(время.сек=0)/­/здесь переменная становится не объявленной, и при выводе будет восприниматься как пустая строка. А строки обрабатываются иначе(смотри выше третий пример про "день"/"ночь"). \(время.мин=2) \ТАЙМЕР(время.мин+0,59,0,1,2,5):\ТАЙМЕР(время.сек+0,59,0,1,2,1000,5) \(время.сек=0) \(время.мин=2) \ТАЙМЕР(время.мин+0,59,0,1,2,5):\ТАЙМЕР(время.сек+0,59,0,1,2,1000,5) \СТОП \локация3 \(АПЕРО.режим вывода="динамичный") \ТАЙМЕР(4,0,"локация3",1,2,1000) динамичная локация, обноваляется каждые 5 сек. Текущее время:[b]\(АПЕРО.время(3))[/b] \(АПЕРО.конец=1) \СТОП \локация2 Прошло 2 минуты 20 секунд, совершен переход \(локация3,Добавить динамическую локацию) \(запуск,перезапустить) \(АПЕРО.конец=1) \СТОП