Поставить дамми здание нежити с нужной анимкой, а само строящееся здание сделать полностью прозрачным, в нужный момент возвращать видимость здания и удалять дамми не подходит?
... черная маска это затемненные области тумана войны, повторюсь, попробуй модификаторы видимости, ты наверное даже триггеры ещё не открыл с этими функциями
Это рефордж что-ли? На 1.26 только с помощью бд можно было узнавать атаку героя) могу ошибаться ибо я лох
Бонусный урон обычно считался через когти с 9999 лвлами, а все скиллы на добавление бонусного урона на самом деле повышали/понижали лвл когтей
У меня со сферками в спеллпаке есть проблема, что если юнит умер через артиллерию, то одна единственная сферка из 5 не удаляется (группа сферок к юниту прикреплены), хз с чем связанно и при нормальной смерти юнита всё работает как надо, хоть и удаляю все сферки через ForGroup(g,function(){KillUnit(GetEnumUnit);});
upd хотя предполагаю, я просто на мёртвого юнита вешал сферку, надо будет проверить, хе))
Предполагаю, что нужно включить зрителей, объявить поражение игроку, выбрать всех юнитов игрока, пройтись по их слотам и удалить предметы, а потом уничтожить их, ну а после, просто создаём модификатор видимости на всю карту для игрока, вродь всё
Я не смотрел банши в редакторе, но если ты там не настраивал урон (если он там есть вообще), то нет, это не нормально)
Мб ты триггер какой-то создавал на реакцию с получением урона и забыл про него
Я на этом моменте, когда только начинал учить джасс, всегда запарывался
короче, вот карта, всё у тебя работает) Добавил просто udg_hash = InitHashtable() внизу события
library mylib initializer init{
private hashtable H = InitHashtable()
private function Trig_Agility_Blade_Remove_Agi_Actions takes nothing returns nothing
local timer t = GetExpiredTimer()
local integer i = GetHandleId(t)
local unit caster = LoadUnitHandle(H,i,0)
call SetHeroAgi(caster,GetHeroAgi(caster,false)-LoadInteger(H,i,1),true)
call DestroyEffect(LoadEffectHandle(H,i,2))
call DestroyEffect(LoadEffectHandle(H,i,3))
call DestroyTimer(t)
call FlushChildHashtable(H,i)
set caster = null
set t = null
endfunction
private function Trig_Agility_Blade_Actions takes nothing returns nothing
local timer t = CreateTimer()
local integer i = GetHandleId(t)
local unit caster = GetSpellAbilityUnit()
local integer agi = GetHeroAgi(caster,true)
local integer clearagi = GetHeroAgi(caster,false)
local integer bonus = R2I(agi/2)
call SetHeroAgi(caster,clearagi+bonus,true)
call SaveUnitHandle(H,i,0,caster)
call SaveInteger(H,i,1,bonus)
call SaveEffectHandle(H,i,2,AddSpecialEffectTarget("Abilities\\Spells\\Other\\AcidBomb\\BottleImpact.mdl",caster,"weapon"))
call SaveEffectHandle(H,i,3,AddSpecialEffectTarget("Abilities\\Spells\\Other\\Drain\\DrainCaster.mdl",caster,"head"))
call TimerStart(t,7.,false,function Trig_Agility_Blade_Remove_Agi_Actions)
set caster = null
set t = null
endfunction
private function Trig_Agility_Blade_Conditions takes nothing returns boolean
return GetSpellAbilityId() == 'A000'
endfunction
private function init takes nothing returns nothing
local integer index = 0
local trigger gg_trg_Agility_Blade = CreateTrigger( )
loop
call TriggerRegisterPlayerUnitEvent(gg_trg_Agility_Blade, Player(index), EVENT_PLAYER_UNIT_SPELL_EFFECT , null)
set index = index + 1
exitwhen index == bj_MAX_PLAYER_SLOTS
endloop
call TriggerAddCondition( gg_trg_Agility_Blade, Condition( function Trig_Agility_Blade_Conditions ) )
call TriggerAddAction( gg_trg_Agility_Blade, function Trig_Agility_Blade_Actions )
endfunction
}
всё что я поменял по сути, это равкод применяемой абилы)
А, тьфу, увидел, ты свою карту приложил, сейчас там попробую сделать
» WarCraft 3 / По поводу "спама" в RPG-диалогах.
» WarCraft 3 / Анимация строения
» WarCraft 3 / По поводу импорта моделей (конкретный пример)
Проверяйте пути текстур в мдлвисе, если автор забыл в текстовике указать
» WarCraft 3 / Перемещение Иллюзий
» WarCraft 3 / Анимация строения
» WarCraft 3 / Туман войны
» WarCraft 3 / Туман войны
» WarCraft 3 / Как создать предмет, при взятии которого появлялся бы спецэфф...
» WarCraft 3 / Спец.эффект на "Демоническую силу"
Скорее всего ошибаюсь
» Администрация XGM / Верстка не адаптивна
Ред. rsfghd
» WarCraft 3 / Система полета снарядов
» WarCraft 3 / Таймер вместо вейт
» WarCraft 3 / Базовый урон от атак + Бонусный урон от атак
Бонусный урон обычно считался через когти с 9999 лвлами, а все скиллы на добавление бонусного урона на самом деле повышали/понижали лвл когтей
Ред. rsfghd
» WarCraft 3 / Варик не успевает считать
Ред. rsfghd
» WarCraft 3 / Как сделать команду -spect?
» WarCraft 3 / Таймер вместо вейт
пройдёмся по основам и дальше сам разберёшься
» WarCraft 3 / Сломалась кампания
» WarCraft 3 / Проклятье наносит урон цели.
Мб ты триггер какой-то создавал на реакцию с получением урона и забыл про него
Ред. rsfghd
» WarCraft 3 / Наложение Таймеров
у меня из-за маленького монитора не всё вмещалось :с
Ред. rsfghd
» WarCraft 3 / Проблема с таймером
короче, вот карта, всё у тебя работает)
Добавил просто udg_hash = InitHashtable() внизу события
» WarCraft 3 / Проблема с таймером
короче, в твоём случае решил проверить, выгружается ли юнит вообще с помощью
Хз с чем это связано, если GetSpellAbilityUnit() в действиях спокойно добавлял агилу юниту
» WarCraft 3 / Проблема с таймером
» WarCraft 3 / Проблема с таймером
Ред. rsfghd
» WarCraft 3 / Хорошие статьи и советы по оптимизации на обычных триггерах
Ред. rsfghd
» Администрация XGM / Иконки