Значит так =) Я сделал эту карту =) Точнее тестовую мапу =)
Никак не мог понять, почему, когда моя арча убивает последнего крипа, её не ТПхает на базу... Потом понял, в FAQ намба 2 в коде отсутствует один момент, который мне понадобился тут, а именно вычитание 1 крипа из переменной, точнее тупо арифметическое действие "set variable = variable - 1" Когда обнаружил отсутствующий элемент, карта недоделка приняла окончательный вид какой может быть карта недоделка =)))) На вопрос, помогу ли я или буду и дальше кормить всех глупыми баснями, отвечу - да, помогу =)
Создание прототипа Арены:
Подготовка:
Как всегда начинаем с неё родимой =)
Во первых чисто ради визуального восприятия и морального удовлетворения =) сделаем базу и арену.
На базе создайте 1ну область, туда попадёт герой с арены, так же создайте 2 области на арене, на одну область будет перемещаться наш герой, а на другой появляться крипы.
Так же нам понадобится 3 переменные:
1. тип - целочисленная
2. тип - таймер
3. тип - таблица рекордов
У всех оставьте значение по умолчанию, т.е. не трогайте.
В принципе для работы триггеров нам ничего больше не понадобится.
Триггерство:
У нас будет 4 триггер (я не стал уменьшать их количество и изгаляться с компактностью и простотой, там всё грубо, по варварски, но главное, что работает =) ).
1. Первый триггер отвечает за создание таймера ТП героя на арену и запуск следующего триггера.
___Второй триггер создаст таблицу рекордов и слепит крипов из того что было =))
___Третий триггер проверит как обстоят дела с убиваемым персоналом карты (то бишь кол-во крипов =)) )
___Четвёртый триггер узнает что крипов нет, перенесёт героя на базу и запустит всё это безобразие заново со второго триггера.
2. Приступим к самим триггерам:
___[double]Триггер 1:[/double]
______Событие:
_________Map initialization
______Условие:
_________-
______Действие:
_________Wait 1.00 second
_________Обратный отсчёт - Start Тimer as a Однократный timer that will expire in 15.00 seconds______//Создаём таймер и ставим его на 15 сек
_________Обратный отсчёт - Create a timer window for Timer with title На арену:______//Создаём окно таймера и обзываем его "На арену: "
_________Обратный отсчёт - Показать (Last created timer window)______//Показываем его на экране
_________Обратный отсчёт - Change the color of the time for (Last created timer window) to (100.00%, 0.00%, 0.00%) with 0.00% transparency______// Это я сделал его красным =)
_________Wait 15.00 second______//Ждём 15 секунд, если этого не сделать, то триггер продолжится т.к. таймер работает сам по себе и никаких задержек не делает... Если вы поставите таймер на 60 сек, то и тут нужно будет поменять на 60 сек.
_________Обратный отсчёт - Скрыть (Last created timer window)
_________Обратный отсчёт - Destroy (Last created timer window)
_________Боевая единица - Move Тёмная охотница 0004 <gen> instantly to (Center of Область 000 <gen>)______//По истечении времени наш герой телепортируется на заранее созданную область на арене
_________Триггер - Run триггер 2 <gen> (checking conditions)______//Запускаем следующий триггер
___[double]Триггер 2:[/double]
______Событие:
_________-
______Условие:
_________-
______Действие:
_________Wait 1.00 second
_________Таблица рекордов - Create a leaderboard for Группа игроков - Игрок 1 (Красный) titled Враги______//Создаём окно с названием враги, тут у нас будет отображаться ко-во крипов которых нужно убить.
_________Set warrior = (Last created leaderboard)______//Присваиваем переменной значение нашего табло Враги =)
_________Таблица рекордов - Add Нейтрально-Враждебный to warrior with label Осталось: and value 7______//Вставляем в наше окно надпись Осталось:
_________Set Killing = 7______//Присваиваем нашей переменной число равное нужному количеству крипов которых нужно убить
_________Боевая единица - Create 7 Сатир for Нейтрально-враждебный at (Center of Область 001 <gen>) facing Стандартная ориентация зданий degrees______//Создаём на второй области на арене 7 крипов, если крипов нужно больше, не забудьте изменить значение и в присвоении числа переменной.
___[double]Триггер 3:[/double]
______Событие:
_________Боевая единица - A unit Умирает______//Случилось ужасное, кто-то сдох ну и активировал триггер =)
______Условие:
_________(Unit-type of (Triggering unit)) равно Сатир______//Если наш трупик является Сатиром, двигаемся дальше, если нет, забиваем =)
______Действие:
_________Таблица рекордов - Change the value for Нейтрально-враждебный in warrior to (Number of living Сатир units owned by Нейтрально-Враждебный)______//Изменяем значение в таблице рекордов, равное числу живых ворогов у противника, в нашем случае это Нейтрально-враждебный.
_________Set Killing = (Killing - 1)______//Присваиваем переменной отвечающей за кол-во живых Сатиров значение равное "Наша переменная - 1", делается с помощью арифметики, найдите в выпадающем меню arithmetic
_________Триггер - Run Безымянный триггер 005 <gen> (checking conditions)______//Запускаем последний триггер(точнее последний в нашем бесконечном цикле =))
___[double]Триггер 4:[/double]
______Событие:
_________-
______Условие:
_________(Number of living Сатир units owned by Нейтрально-Враждебный) равно 0______//Проверяем все ли живые организмы нашего врага умерли
_________Killing равно 0______//Проверяем, равна ли переменная отвечающая за кол-во живых крипов 0
______Действие:
_________Боевая единица - Move Тёмная охотница 0004 <gen> instantly to (Center of Область 002 <gen>)______//Перемещаем героя на базу
_________Таблица рекордов - Destroy (Last created leaderboard)______//Убираем табло
_________Триггер - Run триггер 1 <gen> (checking conditions)______//Запускаем триггеры с начала.
Вот собственно, герой появляется, стоит 15 сек, т.к. делать больше нечего =) перемещается на арену, убивает 7 крипов, перемещается на базу, 15 сек, арена, 7 крипов, база и т.д. пока не надоест =)
Добавить можно всё что угодно, по сути из этого можно уже что-то делать =)
Вот думаю, стоит мне карты подписывать? =)))
Да кстати, карта естественно присутствует =) сначала сделал, проверил, ну и написал всё это.