30

» WarCraft 3 / Юнит цель применяемой способности

Принятый ответ
Komkozavr, русские триггеры несут зло
В вашем случае искомое здесь
Загруженные файлы
30

» WarCraft 3 / Подскажите что не так с моим методом воскрешения героев!

По-быстрому сваял систему из 2 триггеров, но без мультиборда
Вписать в неё мультиборд очень легко)
30

» WarCraft 3 / Подскажите что не так с моим методом воскрешения героев!

Cardinal, что за поклонение копипасте?
Да ещё и с протекающими точками. Я же писал за переменную HERO_REVIVE_LOC. В начале создали по точке каждому игроку и воскрешайте по ид игрока.
Загруженные файлы
30

» WarCraft 3 / Подскажите что не так с моим методом воскрешения героев!

тоесть если Т[] = 0, 1, 2, 3, ... n, то T[] = T[] -1 (значит герой мертв еще)
T > 0 это 1,2,3, ... n, а в остальном всё верно. И до кучи избавьтесь от вэйтов.
30

» WarCraft 3 / Подскажите что не так с моим методом воскрешения героев!

Принятый ответ
Cardinal, за такое именование переменных нужно по рукам бить.
то бежит к третьему триггеру которій и воскрешает
Не плодите триггеров, все нужные действия можно и в цикле сделать.
У вас переменная T отвечает за состояние героя, зачем проверять жив юнит или нет?
T<0 Жив
T==0 Нужно воскресить прям сейчас
T>0 Ждёт воскрешения
Cardinal:
T[номер героя] болше или равна 1
больше или равна 0 => T[] = T[] -1
30

» WarCraft 3 / Подскажите что не так с моим методом воскрешения героев!

а на счет lua может быть, визуально он мне php напоминает
он больше на js похож.
должен же быть способ решить эту проблему и на GUI
Эллегантные решения можно и на гуи сделать, а не плодить блоки копипастой
у каждого игрока только один герой
Дык вообще элементарно
Переменные
  • HERO[] Боевая единица
  • HERO_REVIVE_LOC[] Точка
  • HERO_REVIVE_TIME[25] = -1 Целлочисленная
  • HERO_REVIVE_TIMER Таймер
Если герой умирает, то заносите в HERO_REVIVE_TIME по id игрока время воскрешения.
Запускаете HERO_REVIVE_TIMER с периодом в секунду и проверяете HERO_REVIVE_TIME.
Если меньше ноля, то герой жив, здоров и радуется жизни.
Если больше, то ожидает воскрешения в курилке
Если равно, то с вещами на рэспаун в HERO_REVIVE_LOC.
Надеюсь уточнять, что с каждым тиком нужно уменьшать HERO_REVIVE_TIME не нужно)
30

» WarCraft 3 / Подскажите что не так с моим методом воскрешения героев!

Подскажите что не так с моим методом воскрешения героев!
Она на GUI))
jass не получается осилить
осиливайте lua, он полегче
do
    local TRIGGER = CreateTrigger()
    for i = 0, bj_MAX_PLAYER_SLOTS - 1, 1 do
        TriggerRegisterPlayerUnitEvent(t, Player(i), EVENT_PLAYER_UNIT_DEATH)
    end
    TriggerAddCondition(
        TRIGGER,
        Condition(
            function()
                return not IsUnitIllusion(GetTriggerUnit()) and not IsUnitType(GetTriggerUnit(), UNIT_TYPE_SUMMONED) and
                    IsUnitType(GetTriggerUnit(), UNIT_TYPE_HERO)
            end
        )
    )
    TriggerAddAction(
        TRIGGER,
        function()
            local hero = GetTriggerUnit()
            TimerStart(
                CreateTimer(),
                3 * GetHeroLevel(hero),
                false,
                function()
                    local x = GetPlayerStartLocationX(GetOwningPlayer(hero))
                    local y = GetPlayerStartLocationY(GetOwningPlayer(hero))
                    ReviveHero(hero, x, y, true)
                    DestroyTimer(GetExpiredTimer())
                end
            )
        end
    )
end
Не обладает ли багующий герой способностью Иллюзии?
Я сам так попался, так что теперь IsUnitIllusion() мой лучший друг)
30

» WarCraft 3 / Пару фишек что я нашел

Тогда это ничем не отличается от импорта дамми модели Вексориана.
Тю, ну если сравнить 360 анимаций или одна кость, тут выбрать легко.
Зато теперь есть выбор))
30

» WarCraft 3 / Пару фишек что я нашел

То есть тебе легче каждый раз открывать снаряд в редакторе моделей и добавлять ему кость вручную?
Зачем? Можно сделать универсальную модель, с точкой крепления на кости и аттачить на неё эффекты. Или переходить на последний патч)
30

» WarCraft 3 / варианты создания способности демология

Принятый ответ
Не знаю, зачем прикрепляю код
Хорошо, что вы его вытащили. Это гуишное гуи и я бы посоветовал yblidok бросить эту идею. Без соответствующих знаний, тут ничего не светит.
30

» WarCraft 3 / Пару фишек что я нашел

Зачем делать снаряды на юнитах, если можно делать на эффектах?
30

» WarCraft 3 / вероятность в триггерах

Вот только это наивная реализация и реального шанса в нужное кол-во % не обеспечивает с высокой точностью.
А чем плох этот алгоритм в рамках заданного вопроса?
30

» WarCraft 3 / вероятность в триггерах

Steal nerves, нет редактора под рукой, но алгоритм простой
if GetRandomInteger(0,100) <= 30 then
// 30% chance
else
// 70% chance
endif
30

» WarCraft 3 / Как переходить на lua?

конечно, все по порядку делал, папки все ровно нет
Вы VSCode по этой ссыле ставили?