Я крч скилл мастырил-мастырил, и заступорился в самом конце, а именно: нужно чтобы труп ожил по типу гальванизации, и так как я не знаю как триггерно создать загальваненый труп, я решил, что нужно просто даммиком заюзать скилл. И вот тут-то моя тупость себя проявила. Я не умею юзать даммиков.
зырьте код
Тут я юзаю таблю от брайба
library DeadLease initializer Init{

    	private TableArray ta
    
	private bool Conditions(){
    	return (GetSpellAbilityId() == 'A032')
	}

	private void Damage(){
    	local timer t = GetExpiredTimer()
    	local integer h = GetHandleId(t)
    	local unit caster = ta[h].unit[1]
    	local unit target = ta[h].unit[2]
    	local integer co = ta[h].integer[3]
    	local unit dummy

        	if co > 0 {
            	UnitDamageTarget(caster,target,0.50,true,true,ATTACK_TYPE_MAGIC,DAMAGE_TYPE_MAGIC,null)
            	set ta[h].integer[3] = co-1
            
            	if (GetUnitState(target,UNIT_STATE_LIFE) <= 0.300) {
           	    	DestroyTimer(t)
            set dummy = CreateUnit(GetOwningPlayer(caster),DummyId,GetUnitX(target),GetUnitY(target),270.00)
                	SetUnitPathing(dummy,false)
                	SetUnitPosition(dummy,GetUnitX(target),GetUnitY(target))
                	UnitAddAbility(dummy,GalvanId)
                	IssueImmediateOrder(dummy,"animatedead")
                	RemoveUnit(dummy)
                	ta[h].clean()
	            }
            
            
        }else{
            	DestroyTimer(t)
            	ta[h].clean()
        }
        
   	 	set target = null
    	set caster = null
   		set t = null
    	set dummy = null
	}

	private void Actions(){
    	local unit caster = GetSpellAbilityUnit()
    	local unit target = GetSpellTargetUnit()
    	local timer t = CreateTimer()
    	local integer h = GetHandleId(t)
    
    
	    set ta[h].unit[1] = caster
    	set ta[h].unit[2] = target
    	set ta[h].integer[3] = 300
    
    	TimerStart(t,0.10,true, function Damage)
    
    	set caster = null
    	set target = null
	}


	private void Init(){
    	set ta = TableArray[99999999]
    	integer i = 0
    	set gg_trg_DeadLease = CreateTrigger()
    	loop{
        	TriggerRegisterPlayerUnitEvent(gg_trg_DeadLease,Player(i) ,EVENT_PLAYER_UNIT_SPELL_CAST,null)
        	exitwhen i == 11
    	    set i = i+1
	    }
    	TriggerAddCondition(gg_trg_DeadLease, function Conditions)
    	TriggerAddAction( gg_trg_DeadLease, function Actions )
	}

}
Название ресурса должно отображать суть вопроса

Принятый ответ

создать дамми с временем жизни
приказать заюзать скил
что тут можно не уметь?
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
26
8 лет назад
0
Создай юнита по рав-коду оригинала, подкрась в нужный цвет, дай неуязвимость, и таймер жизни... всё?
0
5
8 лет назад
0
set ta = TableArray[99999999999999] мои глаза
Не рэмувь юнита сразу, он не успел еще ничего скастовать, даже если у него каст поинт 0 так может не сработать.
Дай ему 1 секунду пожить.
0
18
7 лет назад
0
Extremator, проверено, скиллы остаются.
BonBo:
set ta = TableArray[99999999999999] мои глаза
без цифр не создается вроде как.
Shuex:
Дай ему 1 секунду пожить.
тоже не помогает, тоже пробовал
0
32
7 лет назад
0
Че там создавать то? Найди всех мертвых которых нужно оживить, затем определи их ро код, удали и создай на их месте новых, добавив таймер длительности с баффом гальванизации, все.
0
18
7 лет назад
0
quq_CCCP, бафф гальванки удаляет их скиллы и возможность строить у рабов?
0
32
7 лет назад
0
mishanka122:
quq_CCCP, бафф гальванки удаляет их скиллы и возможность строить у рабов?
Сделай кастомный, что мешает?
0
28
7 лет назад
0
создать дамми с временем жизни
приказать заюзать скил
что тут можно не уметь?
Принятый ответ
0
18
7 лет назад
0
nvc123, что я криворукий - даммики не юзают скилл и не удляются.
В целом-общем, скиллы удаляется именно у тех, у кого родной рав-код баффа.
2
26
7 лет назад
2
без этого даже суваться в раздел вопросов нельзя
Чтобы оставить комментарий, пожалуйста, войдите на сайт.