32

» WarCraft 3 / GroupClear?

Принятый ответ
Для того чтобы не удалять, а использовать снова одну и ту же глобальную группу.
Это часто используется в триггерных способностях когда нужно найти в аое подходящих юнитов в множестве точек, к примеру в триггерном аналоге "Волны силы" или "Темная стая"", таким образом можно оптимизировать код, используя одну группу для поиска всего и вся.
Юный IceFrog может взять пример со старшего собрата и скачать с хайва наработку кастомного ресайкла групп, таймеров и прочего...
32

» WarCraft 3 / Задачка на знание способностей для предметов

Принятый ответ
Лол, кто так делает, интервал урона в 0.00 выставил..
Ставь 99999, чтобы движек не наносил по 100500 раз в секунду урон цели и не вызывались лишние события.
32

» WarCraft 3 / Абсолютное игнорирование приказа

У ракетного удара все параметры в 0 нельзя, там время появление ракет должно быть больше 0, да и ракетный удар багнутая абилка, нестоит её использовать в качестве пустышки, попробуйте канал.
32

» WarCraft 3 / Dooble Free

Чето в структуре спелла наделал не так...
Код или карту в студию...
32

» WarCraft 3 / Идеи для расы магов :)

Способ добычи золота - нежить, стоим махаем ручками, золото капает...
Дерево рубят какиенить робогоблины, за звонкую монету.
32

» WarCraft 3 / Общая перезарядка спеллбука

У многих предметных абилок уровни нормально не работают, то же повышение хп\мы там наплевать сколько уровней, работает только один.
32

» WarCraft 3 / Есть ли утилита, исправляющая ошибки в карте ?

Конечно же есть, Корзина - находится на рабочем столе ос семейства Windows!
P.S сначала разберитесь что там у вас не работает, а потом уже думайте а утилитах...
Здания можно возводить ток на своей порче + не триггерной насколько я помню.
32

» WarCraft 3 / альтернативная форма

Можно, там дело в тегах анимаций, смотри внимательно как сделан охотник на демонов (злой), в настройках юнита есть особые параметры отвечающие за отображение альтернативных анимаций.
Так же можно морфить 'Aave' (Avenger form - сфинкс или как то так) скилл статуи хилера у нежити, морфается в такое летуче чудище, его морф не сбивает приказа и не блочится всякими сайленсами, его можно засунуть в руну и вручить эту руну герою, он морфнится незаметно, без махания ручками и потери приказа делать что либо...
32

» WarCraft 3 / Некорректное увеличение здоровья зданию

Принятый ответ
Простите, насколько я помню у абилок на хп не работают уровни, тупо ничего не происходит.
Там 2 уровня и баг с удалением абилки, у юнита будет хп обратное тому что во втором уровне способности, иначе это не работает...
32

» WarCraft 3 / ExecuteFunc десинк?

Принятый ответ
Там не локальный экзикут, там локальная строка...
Т.е имя функции разное, а экзикуты по расписанию у всех. там либо DoNothing либо смена\чтение имени нейтрального игрока, можно так же баловатся с кешем...
32

» WarCraft 3 / Не отображаются эффекты.

Быть может эффект битый, нераз попадался на хайве, вроде все норм, скрины из игры, отзывы, а модель не открывается даже в Ро, никакую, зеленый клетчатый квадрат.
32

» WarCraft 3 / какое количество таймеров поддерживает вар?

Мда, кол-во хендлов теоретически не ограниченно, зависит от мощности машины на котором идет игра + особенности движка которые в полной мере знают только близзарды.
50 таймером конечно много но далеко не предел.
32

» WarCraft 3 / Моб арена

hift+Enter позволяет ставить больше 1800.
Чепуху не пиши, нельзя поставить больше 1800 ед. обзора, да и вовсе нельзя поставить столько сколько хочешь, у юнита обзор не реальный а приближенный, как порча разлазится квадратами, так и обзор, тока квадратами по 64, 0-64 нет обзора, 64-128 будет 128 на 128 квадрат и так далее..
Нужно делать ИИ. ибо добавить героям пламя феникса с радиусом поболье, все анимации удалить, урон в 0.01 и допустимые цели враги \нейтралы, пламя феникса будет жечь монстров и те будут агрится.
32

» WarCraft 3 / почему дота не лагает?

Еще как лагает, багается, вспомни сфа и вокера, после часика игры бывает тоже не все гладко.
Самое основное у фрога исправили, (как это вовсе хохма) к примеру фрог оч. часто не удаляет даммиков, а вы не знали?
Каждый раз когда вы тыкайте у инвокера скилл, пересчитываются все бонусы инвокера, там если кликер сделать (кое кто уже делал) гейм овер в вашу пользу обеспечен, на ракапе все узьбеки вылетят, тока тсс...
32

» WarCraft 3 / вопрос о dammy

Принятый ответ
Как как, через таймер двигать функциями:
SetUnitX()
SetUnitY()
SetUnitFlyingHegth()
для полетов дамми должен быть летающим.
32

» WarCraft 3 / Отследить приказ

Принятый ответ
Событие такое есть, в гуях Особый юнит обнаружил цель в пределах досягаемости.
в jass это EVENT_UNIT_TARGET_IN_RANGE на конкретного юнита.
32

» WarCraft 3 / Можно Ли Спелу сделать перезарядку до ево применение

Чаво? Моя ваш русский не понимать!
P.S Сбросить перезарядку у способности можно либо удалив её и снова добавив (если только одну) или спец функцией UnitResetColdownAbilites( unit ) - которая сбросит перезарядку у всех способностей указанного юнита.
32

» WarCraft 3 / TriggerAddCondition создает хэндл или нет?

И кстати да, чуть не забыл Использовать Boolexpr как IceFrog не нужно, ничего хорошего в этом нет.
для тех кто в танке ниже пример кода айсфрога
код

function A takes nothing returns boolean
	return IsUnitDead( GetFilterUnit() ) == false and IsUnitType( GetFilterUnit(), UNIT_TYPE_ANCIENT )) == false and IsUnitEnemy( GetFilterUnit(), bj_groupEnumOwningPlayer()
endfunction

function B takes nothing returns boolean
	return IsUnitDead( GetFilterUnit() ) == false and IsUnitType( GetFilterUnit(), UNIT_TYPE_ANCIENT )) == false and IsUnitEnemy( GetFilterUnit(), bj_groupEnumOwningPlayer()
endfunction

function C takes nothing returns boolean
	return IsUnitDead( GetFilterUnit() ) == false and IsUnitType( GetFilterUnit(), UNIT_TYPE_ANCIENT )) == false and IsUnitEnemy( GetFilterUnit(), bj_groupEnumOwningPlayer()
endfunction
// ...
// потом где то в коде спеллов
// 
call GroupEnumUnitsInRange( grp, x,y, 450.00, Condition( function A ) )
...
call GroupEnumUnitsInRange( grp, x,y, 450.00, Condition( function B ) )
...
call GroupEnumUnitsInRange( grp, x,y, 450.00, Condition( function C ) )
32

» WarCraft 3 / TriggerAddCondition создает хэндл или нет?

Кет:
quq_CCCP, а как удалить triggercondition и triggeraction? Они не удаляются при уничтожении триггера?
Нет не удаляются, есть TriggerRemoveCondition\Action и TriggerClearConditions\Actions
Ивенты триггера тоже никуда не деются, пока есть связанный с ними обьект.
        method FlushData takes nothing returns nothing
            call DisableTrigger( .trg )
            call TriggerRemoveCondition( .trg, .trc )
            call TriggerRemoveAction( .trg, .tra )
            call TriggerRemoveAction( .trg, .extra )
            call TriggerClearActions( .trg )
            call TriggerClearConditions( .trg )
            call RemoveDataBX( .trg )
            call RemoveDataBX( .trix )
            call DestroyTrigger( .trg )
            call DestroyTimer( .trix )
// и так далее...
32

» WarCraft 3 / Оптимизация: один большой или много мелких?

nvc123:
1 триггер лучше чем 2
размер триггера в данном случае значения не имеет
исключения касаются лишь утечек и прочий фигни
Ну или 10005000 триггеров примерно одного содержания, по большей части потому что создается куча обьектов и карта загружается медленне, актуально для гуи в первую очередь.
32

» WarCraft 3 / TriggerAddCondition создает хэндл или нет?

Принятый ответ
Zeuz:
nvc123, тогда получается boolexpr не утечна?
его можно создать где угодно)
и использовать как фрог
Лол, обьясняю еще раз
  • Condition( function SomeFunc ) и Filter( function SomeFunc ) возвращают Boolexpr, он кешируется, и не утекает
Но в триггере еще есть TriggerAddCondition( trigger, boolexpr ) который возвращает triggercondition - который какраз и утекает, это хендл который висит в памяти и требует удаления... туда же triggeraction .
Поэтому там где используются локальные триггеры которые будут удалены нужно удалять и triggeraction и triggercondition а для этого их нужно куда то сохранить, много городушек и лишних действий, посему там где можно не юзать триггеры лучше их не юзать.
32

» WarCraft 3 / Оптимизация: один большой или много мелких?

Принятый ответ
Есть, триггер для триггерных скиллов 1, 3 ивента, кастанул, завершил каст, выучил - все, далее условие что абилка в базе данных и собственно действие екзикут функции взятой из базы данных.
32

» WarCraft 3 / TriggerAddCondition создает хэндл или нет?

Период 0.5 - и счетчик, если кол-во циклов таймера больше 8 то удалить там спеллбук, запаузить таймер и удалить. И точно так же проверяешь хп кастера раз в 0.5 сек, вот и ненужно триггера.