Сейчас 12:52:19 Среда, 18 декабря, 2024 год
[ x ] Главная ⇒ Форум ⇐ RSS Файлы Cтатьи Картинки В о й т и   или   з а р е г и с т р и р о в а т ь с я


[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: PUVer, SirNikolas, Ty3uK  
[СТАТЬЯ] О таймерах
[DUОS]Дата: Четверг, 10 Сентября 2009, 18:03:24 | Сообщение # 1
Группа: Заблокированные
Сообщений: 6279
Награды: 9
Репутация: 1708
Блокировки:
    Начну я, казалось, с неподходящей ассоциации к таймеру - обычной функции Wait (или её разновидности - Wait (Game-Time seconds)). Для чего мы используем её? Правильно. Чтобы подождать какое-то время. Однако часто мы не задумываемся о том, что использовать таймер во многих случаях было бы куда разумнее и лучше, т.к. эта функция основывается на процессорном времени, а у каждого оно разное. Отсюда баги и утечки. Таймер же не ориентирован на процессорное время, однако тоже позволяет подождать некоторое время, однако срабатывать он будет у всех одинаково и безутечно. Думаю, что бывалые со мной согласятся. Но зачем создавать целый триггер, - подумает кто-то, когда можно просто использовать Wait? Почитай то, что я написал, и всё поймёшь - скажу я ему.
    Итак, это было просто небольшое лирическое отступление. Теперь перейдём непосредственно к предмету этой статьи - таймеру. Его задача - просто отсчитывать несколько секунд, возможно, что и не один раз, хотя это полностью зависит от желания картостроителя. К этому объекту можно отнести переменные типов Таймер, Окно таймера, Строка и Реальная. Что и почему я отнёс к таймеру, читайте ниже.
- Таймер. Собственно, сам таймер. Его можно запускать, ставить на паузу, возобновлять и получать его значение в виде реальной.
- Окно таймера. Переменная, хранящая небольшое окошко, предназначенное для вывода в правом верхнем углу игры строки-названия и значения таймера.
- Строка. Переменная, в которую можно занести название таймера. В неё можно вставить несколько внутриигровых значений, таких, как имя игрока, его цвет, имя его героя, ну, или просто записать название ;)
- Реальная. Число-значение таймера.

Для хранения переменных таймера, который используется в одном триггере (например, для воскрешения героев) я настоятельно рекомендую использовать локальные переменные через действие Custom Script - local timer(local string, local real, local timerdialog) имя переменной, т.к. они меньше грузят карту и почти что совсем не вызывают утечек. Только не забывайте обнулять (Custom Script - set имя переменной = null)!
    Таймер можно выводить через "палочную" систему, но долго прописывать строки, хотя она того и стоит. Для этого просто ставьте отдельный многократный таймер на секунду и, когда он истечёт, убавляйте палочки в зависимости от значений таймера. И оригинально, и не утечно. :) Более подробно о таком виде таймера можно будет прочитать в моей наработке, в теме "Часто Требуемые Наработки".

Действия, связанные с таймером:
 1. Обратный отсчёт - Start Timer - Запускает таймер.
  Обратный отсчёт - Start Timer as Однократный that will expire in 30.00 seconds
  Timer - Переменная, хранящая таймер.
  Однократный - Определяет, будет ли таймер запускаться один раз, или же сразу запускаться заново после истечения заданного времени. Для последнего нужно поменять на Многократный
  30.00 - Кол-во секунд отсчёта. Поменяйте на своё.
 2. Обратный отсчёт - Pause Timer - Приостанавливает таймер
  Обратный отсчёт - Пауза (Last started timer)
  Пауза - Приостанавливает таймер. Чтобы продолжить отсчёт, переключите на Возобновить
  (Last started timer) - Определяет последний запущенный таймер. Можно поменять на свою переменную-таймер.
 3. Обратный отсчёт - Create Timer Window - Создаёт окно таймера
  Обратный отсчёт - Create a timer window for (Last started timer) with title Title
  (Last started timer) - Определяет последний запущенный таймер. Можно поменять на свою переменную-таймер.
  Title - Название таймера, которое будет отображаться в окне.
 4. Обратный отсчёт - Destroy Timer Window - Уничтожает окно таймера
  Обратный отсчёт - Destroy (Last created timer window)
  (Last created timer window) - Определяет последнее созданное окно таймера. Можно поменять на свою переменную-окно таймера.
 5. Обратный отсчёт - Show/Hide Timer Window For Player - Скрывает или показывает окно таймера для определённого игрока
  Обратный отсчёт - Скрыть (Last created timer window) for Игрок 1 (Красный)
  Скрыть - Скрывает окно таймера. Чтобы показать окно, поменяйте на Показать.
  (Last created timer window) - Определяет последнее созданное окно таймера. Можно поменять на свою переменную-окно таймера.
  Игрок 1 (Красный) - Определяет игрока, для которого скрывается таймер. Можно поменять на нужного.
 6. Обратный отсчёт - Show/Hide Timer Window - Скрывает или показывает окно таймера для всех игроков
  Обратный отсчёт - Скрыть (Last created timer window)
  Скрыть - Скрывает окно таймера. Чтобы показать окно, поменяйте на Показать.
  (Last created timer window) - Определяет последнее созданное окно таймера. Можно поменять на свою переменную-окно таймера.
 7. Обратный отсчёт - Change Timer Window Title - Изменяет название таймера
  Обратный отсчёт - Change the title of (Last created timer window) to Title
  (Last created timer window) - Определяет последнее созданное окно таймера. Можно поменять на свою переменную-окно таймера.
  Title - Новое название таймера, которое будет отображаться в окне.
 8. Обратный отсчёт - Change Timer Window Title Color - Меняет цвет названия таймера
  Обратный отсчёт - Change the color of the title for (Last created timer window) to (100.00%, 80.00%, 20.00%) with 0.00% transparency
  (Last created timer window) - Определяет последнее созданное окно таймера. Можно поменять на свою переменную-окно таймера.
  100.00%, 80.00%, 20.00% - Эти реальные определяют, сколько красного, зелёного и синего будет в новом цвете (скачайте программку
WarCraft III Color Master, где вы сможете узнать, каким номерам соответствует ваши цвет)
   0.00% - Определяет прозрачность названия. 100.00% - значение для невидимого названия.
 9. Обратный отсчёт - Change Timer Window Time Color - Меняет цвет времени таймера
   Change the color of the time for (Last created timer window) to (100.00%, 80.00%, 20.00%) with 0.00% transparency
  (Last created timer window) - Определяет последнее созданное окно таймера. Можно поменять на свою переменную-окно таймера.
  100.00%, 80.00%, 20.00% - Эти реальные определяют, сколько красного, зелёного и синего будет в новом цвете (скачайте программку
WarCraft III Color Master, где вы сможете узнать, каким номерам соответствует ваши цвет)
   0.00% - Определяет прозрачность названия. 100.00% - значение для невидимого названия.

Ну, вот и всё. В следующей статье расскажу вам о камерах.


НУ И ЧТО ТЕПЕРЬ?


Кликайте на дракошку ;)
 

  • Страница 1 из 1
  • 1
Поиск:

Copyright © 2006 - 2024 Warcraft3FT.info При копировании материалов c сайта ставьте, пожалуйста, активную обратную ссылку на нас • Design by gReeB04ki ©
Хостинг от uCoz