Hola , estuve tratando de hacer un Misil MUI en jass . . .
Entonces me salta error . . .
Detonador Completo :
[jass]
function Trig_Misil_Conditions takes nothing returns nothing
//En las hashtables debo usar UDG
//En las Strings debo usar "Texto"
//La mayoria de las funciones tienen que estar separadas
//Hay más funciones complicadas
//Lo siento es mi segunda vez usando jass
local Timer t = GetExpiredTimer()
local integer i = GetHandleId( t )
local unit caster = GetTriggerUnit()
local unit misil = LoadUnitHandle( udg_Hashtable, i,0)
//Posiciones
local real X = GetUnitX(misil) + 50 * Cos(GetUnitFacing(misil) * bj_DEGTORAD
local real Y = GetUnitY(misil) + 50 * Sin(GetUnitFacing(misil) * bj_DEGTORAD
//Fin Posiciones
local integer distancia = LoadInteger( udg_hashtable, i,0) - 50
//Actualizamos el Valor
call SaveInteger( udg_Hashtable, i,1, Distancia )
if (Distancia<=0) then
call DestroyEffect("Abilities\Spells\Human\ThunderClap\ThunderClapCaster.mdl")
//Movemos
call SetUnitPosition(misil,X,Y)
call DestroyEffect("Abilities\Spells\Human\ThunderClap\ThunderClapCaster.mdl")
call KillUnit( misil )
//Removemos los Valores
call FlushChildHashtable( udg_Hashtable , i )
call PauseTimer( t )
call destroytimer( t )
endif
set misil = null
set t = null
endfunction
//===========================================================================
function InitTrig_Misil takes nothing returns nothing
local trigger t
local integer i
local unit caster = Gettriggerunit()
local unit target
local unit misil
local real X
local real Y
set target = GetSpellTargetUnit()
set X = GetunitX(caster)
set Y = GetUnitY(caster)
//Creamos
set misil = Createunit(GetTriggerPlayer(),'h000',i,X,Y, bj_RADTODEG*Atan2(GetunitY(target)-Y,GetunitX(target)-X) )
set misil = Createunit(GetTriggerPlayer(),'h000',i,X,Y, bj_RADTODEG*Atan2(GetspelltargerY()-Y,GetSpellTargetX()-X) )
//Configuramos
call PauseUnit(misil,true)
call SetUnitPathing(misil,true)
//Creamos timer y guardamos valores
set t = CreateTimer()
set i = GetHandleId( t )
call SaveUnitHandle( udg_Hashtable, i,0,misil)
call SaveInteger ( udg_HashTable, i, 1, 1700 )
call TimerStart(t,.02,true,function Arrow_Main)
//Limpiamos Leaks
set t = null
set caster = null
set target = null
set Misil = null
endfunction
//=================================================================
function Trig_Arrow_Conditions takes nothing returns boolean
return GetSpellAbilityId() == 'A000'
endfunction
function InitTrig_Misil takes nothing returns nothing
set gg_trg_Misil=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Misil,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition( gg_trg_Misil, Condition( function Trig_Misil_Conditions ))
call TriggerAddAction( gg_trg_Misil, function Misil Actions )
endfunction
[/jass]
Y me da error . . .
PD :
[jass]
set misil = Createunit(GetTriggerPlayer(),'h000',i,X,Y, bj_RADTODEG*Atan2(GetunitY(target)-Y,GetunitX(target)-X) )
set misil = Createunit(GetTriggerPlayer(),'h000',i,X,Y, bj_RADTODEG*Atan2(GetspelltargerY()-Y,GetSpellTargetX()-X) )
[/jass]