Пятница, 03.05.2024, 09:52


Главная
Регистрация
Вход
Dota Allstars ✪ World of WarCraft Приветствую Вас Гость | RSS  
Меню сайта

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Главная » Статьи » Dota Allstars » Полезные статьи

WARCRAFT 3: MULTIBOARD'АХ - ПРАКТИКА
WARCRAFT 3: MULTIBOARD'АХ - ПРАКТИКА                                                   
 

Практика

Действия я подробно расписывать не буду, т.к. если вы внимательно хотя бы 2 раза прочитали "теорию” у вас не должно возникнуть с этих проблем, и вы должны постараться справиться сами, т.к. практика учит быстрее теории.
В конце статьи прикреплен файл, с уже сделанным MultiBoard’ом, о котором будет идти речь. Вы можете просмотреть его, НО!! Суть практики не в том, чтобы смотреть уже сделанную работу, а в том, чтобы самим ее сделать. Настоятельно рекомендуется сначала попробовать самим, хоть даже если это и покажется сложным.
Рассмотрим создание multiboard’a, который будет отображать, жив юнит или мертв, и если он мертв, то будет показано, через какое время он воскреситься.
Сначала попробуйте сделать MultiBoard сами, прочитав только его описание и руководствуясь этой картинкой (на ней изображено что должно получится).
если вы сможете его сделать, то читать практику необязательно, но можете скачать прикрепленный файл для сравнения.
Если не получилось - прочитайте инструкцию. Смысл инструкции в том, что она не указывает, какие действия надо ставить, а только говорит, каков эффект будет от данного действия. Вы прочитали теорию, и должны знать, какое действие поставить. Если все равно не получается - смотрите пример.

Состояние юнита

Создадим простейший MultiBoard

Инструкция

Для начала создадим карту, удалим все действия из триггера "Initialization”, и первое, что поставим - это "Wait 0.1”. После этого создаём MultiBoard c 2-я столбцами и 3-я строчками, назовем этот MultiBoard "Состояние юнита”.
Далее можно пользоваться циклами, но так как предполагается, что читатель – новичок, будем делать без циклов - просто по порядку.
(Чтобы было меньше писать столбики и строчки будем обозначать так: x-y, где X- столбцы, Y – строчки.)
Далее делаем, чтобы в позициях 1-1, 1-2, 1-3, 2-1, 2-2, 2-3, скрывалась иконка, но показывался текст.
Далее:
**Событие** 
**Generic Unit Event**, !!Юнит умирает!!.
**В действиях**: Создаем 2 действия – **If / Then / Else, Multiple Functions**.
В первом ставим, что:
Если: **Умерший юнит = Артес**
То: 
Set OTC4ET (1) = 30
__//Далее без циклов тут не обойтись потому создаем цикл__
**For each (integer B) from 1 to 30, do (Actions)**
 **Цикл – Действия**
 __//Далее создаём в позиции 2-2 текст, используя пару функций__
 __(Делаем действие создание текста с функцией 
(Мертв(+((String(OTC4ET(1)))+сек.)))__
 __//Что это значит? Это означает что создастся текст "Мертв
(" + "[текущее значение переменной OTC4ET(1)]" + "сек.)”__
 __//Далее, конечно же, ставим действие:__
 **Set OTC4ET (1) = OTC4ET (1) - 1**
 **Wait 1.00 game-time second**
__//На этом цикл закончился.__
(Создаем текст в позиции 2-2 "Жив”)
__//И ставим действие возрождение героя:__
**Герой – Instantly revive (Triggering unit at (Position of (Triggering unit), 
Показать revival graphics))**
__//Все__
//(В следующем действии (__If / Then / Else__) ставим ВСЕ ТО ЖЕ САМОЕ только 
заменяем в условии **Иллидана** на **Артеса**
//А во всех действиях создания текста в **MultiBoard**’е заменяем 2-2 на 2-3. 
И везде используем переменную не **OTC4ET(1)**, а **OTC4ETT(2)**.

Теперь запустите карту, и убейте любого юнита другим юнитом и посмотрите на Multiboardd. Всё отлично!
Надеюсь, вы поняли, как делать MultiBoard, ниже я выложил его пример.
Примечание: Действие - Wait, очень плохо работает, и если зделать через него промежуток в 30 сек, то он будет ждать не 30 сек, а совсем другое время но примерно равное 30, также лучше вместо него использовать таймер.

Категория: Полезные статьи | Добавил: TRACTOR (24.04.2012)
Просмотров: 747 | Рейтинг: 0.0/0
Вход на сайт

Поиск

Copyright MyCorp © 2024Сделать бесплатный сайт с uCoz