каст наносит 0 урона
потом урон с молота
потом 0 урона при получении баффа
потом 0 урона при потери баффа
Если тебе нужен таргетовый снаряд и триггерный урон - используй "Кислотную бомбу".
Период урона не трогай, урон поставь на 0, время на 0.01
В момент каста начинай писать урон принимаемый целью
Проверяй что урона больше 0, и цель имеет бафф кислотной бомбы
При срабатывании принудительно снимай бафф и наноси свой урона
Плюс ты не урон наносишь, а уменьшаешь ХП юнита.
Ставишь его % здоровья на тот, которому равен текущий % уменьшенный на произведение уровня скилла и некого AzuneArrowDamage (который не известно что имеет в себе).
В итоге, если число в переменной будет больше 100 / 50 / 33 / 25 / 20 ... то цель умрёт даже имея 100% здоровья.
Задавая число 5.607 в переменной будет храниться именно 5.607
Но при попытке читать оттуда число с двумя знаками после запятой (именно так обычно выводятся реальные обратно), то ты уже получишь 5.61
Есть отдельная функция, которая позволяет указать количество знаков после запятой при выводе числа
Она даже в GUI есть
Лимит вроде 10 знаков или около того, больше не покажет
Фрост меняет цвет юниту, при этом игнорируя его базовый цвет (из РО).
Это хорошо видно в доте, когда Невер (он же Повелитель Огня) имея 0/0/0 цвета, вдруг из чёрного становится огненным со слегка посиневшим окрасом...
Если например саморучно добавить имитацию какого-нибудь эффекта, например "огня/крови" (красный тон) или "магии тьмы" (фиолетовый), то получится бредовая хрень которая будет постоянно сбиваться, уже не говоря о том что постоянно будет перекрашиваться юнит, и хорошо если он вообще сможет вернуть в итоге свой базовый оттенок (из РО).
Для этого придётся делать всё триггерно, и при этом придумать как совместить цветовые гаммы
Ну например выводить среднее арифметическое между всеми цветами - из РО, от крови, от тьмы, от холода
Если у юнита базовый цвет 127/127/127, а холод (условно) даёт 127/127/255, то мб наверно логично было бы дать ему 63/63/127 цвета ( красный 0.5 * 0.5 = 0.25 , зелёный 0.5 * 0.5 = 0.25 , синий 0.5 * 1.0 = 0.5 )
И для этого придётся писать отдельную системку, при условии что такой вариант комбинирования цвета вообще будет вменяемо выглядеть...
После создания текста скрываешь его от всех.
Обращение идёт на группу игроков - все игроки.
Далее берёшь группу (новую, переменная) и заносишь в неё только тех игроков, которые должны увидеть этот текстаг.
Например через аналог "отряда" для юнитов - Группа игроков - действие...
Если выбранный игрок видит точку/юнита - то добавить его в группу
Далее - показать текст этой группе
В конце - очистить группу (удалить/затереть, если это локалка)
Проверка на наличие предмета, которая даёт ответ "да/нет", сделана за через цикл, который проверяет слоты юнита и даёт нужный ответ.
Функция, которая возвращала бы количество предметов одного типа, выглядела бы точно так же, но с небольшим изменением...
В идеале должна быть BJ-функция которая считает число предметов, а та которая проверяет есть ли он вообще - должна была бы проверять вернётся ли предыдущая функция число больше 0, или нет... Но увы, так не сделали. Поэтому надо делать всё самому.
. . .
Проходишься циклом по слотам и считаешь предметы нужного типа, если это число больше или равно нужному тебе - то... ок ок
Вот вариант с отниманием контроля может забагать игровой процесс...
Нет, фатала не будет, но может произойти какая-нибудь хрень в случаи проверки владельца юнита...
Поэтому лучше кидать молот с дамми-юнита, либо вообще делать триггерно (если оно имеет смысл)
А так вообще - заводишь таймер, создаёшь юнита, запоминаешь героя
Когда таймер истекает - запускаешь таймер заново (или делает сразу повторым его)
Двигаешь юнита под героя, пикаешь врагов рядом
Если враги есть - выбираешь случайного и отдаёшь юниту приказ кинуть в него молот
События в триггер являются мультиактивными.
Если хотя бы ОДНО из них сработает - запустится триггер.
В данном случаи у тебя их ДВА.
Первое - игра началась, и тут же ворота открываются...
Второе - генератор погиб, и при его смерти ворота открываются...
На старте карты у тебя они уже сразу будут открыты. Если ты хочешь что бы они были закрыты (не открывались на старте), то тебе нужно убрать событие "Инициализация карты".
Либо например если у тебя их другой триггер "восстанавливает/закрывает", то тогда будет нормально.
При старте карты ворота откроются... потом закроются когда надо
А при уничтожении генератора - снова откроются...
Можно сделать достаточно просто и поступательно...
Создать магазин с выбором ОДНОГО рабочего нужной расы (или же даже просто кнопки)
Каждому игроку создать по такому магазину на старте
Создавать в рандомных областях, вычитая уже занятые
Таким образом можно будет запросто сделать 12 рас, или же 11 и кнопку "выбрать случайную"
и создать более 12-ти случайных точек для старта (например 20-50, если карта позволяет)
Ну можно триггерно их "строить", когда нужно получать % их готовности.
Здание закладывать и паузить, триггерно увеличивать переменную и приравнивать в ней текущий % постройки.
Работоспособно.
Кастуешь, проверяешь скилл
Даёшь "Ауру Смерти", с выставленным регеном на 30/60/90 ед.
через 20 сек отнимаешь
Скилл можно скрыть в спеллбук
Задержку можно сделать даже через вэйт ("ждать")
...правильнее было бы через таймер и с проверкой на смерть героя
. . .
Похожи, но всё же немного другой эффект можно получить если использовать "Рёв" с выставленным эффектом регена вместо атаки, таким образом герой баффнет пивом всех кто был рядом в момент каста, на 20 сек...
можно дать тип атаки "артиллерия", и убрать UI обычной атаки
дать канал с приказом "smart", при получении которого - будет отдаваться приз атаки или атаки по местности
либо пилить систему снарядов для атаки, и делать атаку триггерной (тогда нахрена вообще сохранять обычную атаку?)
смотря что именно ты хочешь получить в итоге и как это использовать вдальнейшем
» WarCraft 3 / Способность Storm Bolt
потом урон с молота
потом 0 урона при получении баффа
потом 0 урона при потери баффа
Период урона не трогай, урон поставь на 0, время на 0.01
В момент каста начинай писать урон принимаемый целью
Проверяй что урона больше 0, и цель имеет бафф кислотной бомбы
При срабатывании принудительно снимай бафф и наноси свой урона
Ставишь его % здоровья на тот, которому равен текущий % уменьшенный на произведение уровня скилла и некого AzuneArrowDamage (который не известно что имеет в себе).
» WarCraft 3 / Как сделать грамотно RPG карту?
Идеи/концепция самой карты? Код? Задумки скиллов/предметов? Реализация боя/фарма/прокачки?
» WarCraft 3 / Как настроить редактор, что бы не округлял цифры?
Но при попытке читать оттуда число с двумя знаками после запятой (именно так обычно выводятся реальные обратно), то ты уже получишь 5.61
Она даже в GUI есть
Лимит вроде 10 знаков или около того, больше не покажет
» WarCraft 3 / Бафф Slowed
Это хорошо видно в доте, когда Невер (он же Повелитель Огня) имея 0/0/0 цвета, вдруг из чёрного становится огненным со слегка посиневшим окрасом...
Ну например выводить среднее арифметическое между всеми цветами - из РО, от крови, от тьмы, от холода
Если у юнита базовый цвет 127/127/127, а холод (условно) даёт 127/127/255, то мб наверно логично было бы дать ему 63/63/127 цвета ( красный 0.5 * 0.5 = 0.25 , зелёный 0.5 * 0.5 = 0.25 , синий 0.5 * 1.0 = 0.5 )
» WarCraft 3 / Автокаст Канибализма
то отдавать приказ юзать канибализм... если рядом будет труп - он пойдёт его жрать
» WarCraft 3 / Точки крепления
» WarCraft 3 / Можно ли сделать плавающий текст не видимым сквозь Туман Войны?
Обращение идёт на группу игроков - все игроки.
Например через аналог "отряда" для юнитов - Группа игроков - действие...
Если выбранный игрок видит точку/юнита - то добавить его в группу
Далее - показать текст этой группе
» WarCraft 3 / Условие подсчета предметов
» WarCraft 3 / Юнит использует спелл
Нет, фатала не будет, но может произойти какая-нибудь хрень в случаи проверки владельца юнита...
Поэтому лучше кидать молот с дамми-юнита, либо вообще делать триггерно (если оно имеет смысл)
Когда таймер истекает - запускаешь таймер заново (или делает сразу повторым его)
Двигаешь юнита под героя, пикаешь врагов рядом
Если враги есть - выбираешь случайного и отдаёшь юниту приказ кинуть в него молот
» WarCraft 3 / Триггер
Если хотя бы ОДНО из них сработает - запустится триггер.
В данном случаи у тебя их ДВА.
Второе - генератор погиб, и при его смерти ворота открываются...
При старте карты ворота откроются... потом закроются когда надо
А при уничтожении генератора - снова откроются...
» WarCraft 3 / По поводу карты.
в итоге крест Дазла висит 3600. сек х)
» WarCraft 3 / Помогите сделать простенькую муи систему
при касте под кастером создаётся даммик и движется за ним
один каст = один новый даммик на кастере
» WarCraft 3 / Как сделать больше 4 рас!
И сделай тоже самое, как при выборе через скилл/покупку
» WarCraft 3 / Как сделать больше 4 рас!
Каждому игроку создать по такому магазину на старте
Создавать в рандомных областях, вычитая уже занятые
и создать более 12-ти случайных точек для старта (например 20-50, если карта позволяет)
» WarCraft 3 / Как зделать так что-бы каждые 10 сек ратуша давала 100 золота??
» WarCraft 3 / Скиллы "Порча" и "Огненный голем"
Либо попробуй изменить количество ХП у деревьев... или вовсе сделать их неуязвимыми
Ред. Extremator
» WarCraft 3 / Улучшение способности в редакторе объектов
улучшение - спавнит 3х сильных жуков (2 закопанных и 1 обычный)
» WarCraft 3 / Способность на основе ледяной брони
оно так же повышает армор
» WarCraft 3 / Текущий прогресс строительства
» WarCraft 3 / Текущий прогресс строительства
как все цивилизованные люди
» WarCraft 3 / Текущий прогресс строительства
Здание закладывать и паузить, триггерно увеличивать переменную и приравнивать в ней текущий % постройки.
Работоспособно.
Ред. Extremator
» WarCraft 3 / Волшебный Эль
Даёшь "Ауру Смерти", с выставленным регеном на 30/60/90 ед.
через 20 сек отнимаешь
Задержку можно сделать даже через вэйт ("ждать")
...правильнее было бы через таймер и с проверкой на смерть героя
Ред. Extremator
» WarCraft 3 / как сделать стрельбу левой кнопкой мыши?
дать канал с приказом "smart", при получении которого - будет отдаваться приз атаки или атаки по местности
Ред. Extremator
» WarCraft 3 / Бросок условие
» WarCraft 3 / Вопрос насчет "бессмертия" с EventDamage