• Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.

Habilidad MAsjf

Status
Not open for further replies.
Level 2
Joined
Dec 18, 2009
Messages
6
Bueno estos son codes que use pero hay uno q otro q no es util :xxd:


JASS:
globals
hashtable JY
integer EJ=0
//set JY=InitHashtable()
trigger array CJ
timer E0=null
real array DJ
boolean O3=false
boolean M30=false
player array CO
player array DO
unit A8I
player EO=null
integer AJ
boolean array IJ
group array UY
force I3=null
string JJ
real KJ
real A3=0
unit OK
integer OJ
boolean BJ=false
integer JW0=1093682777
integer array D10
integer DO0
integer array D20
integer D30
integer array D40
integer D50
integer array D60
integer D70
integer array D80
integer D90
unit array LY
unit array MY
unit array NY
integer SY=0
integer MJ
unit AM=null
unit BM=null
unit RM0
integer RN0
group RL0
integer LJ=0
gamecache LN
player XO=null
integer array I
integer array O
integer array A
integer array B
integer array C
integer array D
integer array E
integer array F
integer array G
integer array H
integer array Z
integer array V
integer array W
integer array X
integer array Y
integer array J
integer array K
unit array K1
boolean LP0=false
integer LQ0
player LU0
endglobals

function FunckAbilidadesPAraJUegar takes nothing returns nothing
///elseif(MQI==78)then spet Breaker
//call ExecuteFunc("PEI")
//call ExecuteFunc("PFI")
//call ExecuteFunc("PGI")
//call ExecuteFunc("PHI")
//produdmore
//call ExecuteFunc("IH1")
//call ExecuteFunc("IZ1")
//call ExecuteFunc("IV1")
//call ExecuteFunc("IW1")
//elseif MQI==98 then Nightware
//call ExecuteFunc("O31")
//call ExecuteFunc("O41")
//call ExecuteFunc("O51")
//call ExecuteFunc("O61")
//call ExecuteFunc("O71")
endfunction

function EMI takes destructable d returns boolean
return GetDestructableTypeId(d)==1314157667 or GetDestructableTypeId(d)==1314157687 or GetDestructableTypeId(d)==1096053874 or GetDestructableTypeId(d)==1110454322 or GetDestructableTypeId(d)==1110454323
endfunction

function HQI takes unit u returns boolean
return GetUnitTypeId(u)<1 or IsUnitType(u,UNIT_TYPE_DEAD)==true
endfunction

function BCI takes nothing returns boolean
return true
endfunction

function InitializeHashtable takes nothing returns nothing
set JY=InitHashtable()
endfunction

function HDI takes nothing returns boolean
return true
endfunction

function HZI takes nothing returns nothing
if EMI(GetEnumDestructable())then
set LJ=LJ+1
call KillDestructable(GetEnumDestructable())
endif
endfunction

function HEI takes trigger t,playerunitevent HFI returns nothing
local integer B2I=0
loop
call TriggerRegisterPlayerUnitEvent(t,Player(B2I),HFI,Condition(function HDI))
set B2I=B2I+1
exitwhen B2I==16
endloop
endfunction
function F1I takes unit FOI,unit F2I,integer F3I,real F4I returns nothing
if F3I==0 then
return
endif
if F3I==1 then
call UnitDamageTarget(FOI,F2I,F4I,true,true,ATTACK_TYPE_NORMAL,DAMAGE_TYPE_FIRE,WEAPON_TYPE_WHOKNOWS)
elseif F3I==2 then
call UnitDamageTarget(FOI,F2I,F4I,true,true,ATTACK_TYPE_HERO,DAMAGE_TYPE_NORMAL,WEAPON_TYPE_WHOKNOWS)
elseif F3I==3 then
call UnitDamageTarget(FOI,F2I,F4I,true,true,ATTACK_TYPE_HERO,DAMAGE_TYPE_MAGIC,WEAPON_TYPE_WHOKNOWS)
elseif F3I==4 then
call UnitDamageTarget(FOI,F2I,F4I,true,true,ATTACK_TYPE_PIERCE,DAMAGE_TYPE_NORMAL,WEAPON_TYPE_WHOKNOWS)
endif
endfunction

function D6I takes player D7I returns boolean
if(D7I==CO[0])then
return true
endif
if(D7I==CO[1])then
return true
endif
if(D7I==CO[2])then
return true
endif
if(D7I==CO[3])then
return true
endif
if(D7I==CO[4])then
return true
endif
if(D7I==CO[5])then
return true
endif
return false
endfunction

function WU3 takes nothing returns nothing
call F1I(A8I,GetEnumUnit(),1,(GetUnitAbilityLevel(A8I,1093749069)*75)/ 5)
endfunction

function C8I takes nothing returns nothing
local integer i=0
if O3==false and M30==false then
loop
call DisplayTimedTextToPlayer(Player(i),0,0,120,"|c00ff0303An internal checksum has failed|r")
call DisplayTimedTextToPlayer(Player(i),0,0,120,"|c00ff0303This might not be a serious glitch, but it is important for me to get it|r")
call DisplayTimedTextToPlayer(Player(i),0,0,120,"|c00ff0303Please send me the replay for this game to [email][email protected][/email]|r")
set i=i+1
exitwhen i==12
endloop
endif
endfunction

function C9I takes trigger t returns nothing
call DisableTrigger(t)
set EJ=EJ+1
set CJ[EJ]=t
set DJ[EJ]=(TimerGetElapsed(E0))+60
if EJ>8000 then
call C8I()
endif
endfunction


function WII takes nothing returns boolean
local trigger t=GetTriggeringTrigger()
local integer CFI=GetHandleId(t)
local unit F2I=(LoadUnitHandle(JY,(CFI),(17)))
local integer W1I=(LoadInteger(JY,(CFI),(59)))
if UnitRemoveAbility(F2I,W1I)==true or GetUnitAbilityLevel(F2I,W1I)==0 then
call FlushChildHashtable(JY,(CFI))
call C9I(t)
endif
set t=null
set F2I=null
return false
endfunction

function WOI takes nothing returns boolean
local trigger t=GetTriggeringTrigger()
local integer CFI=GetHandleId(t)
local unit F2I=(LoadUnitHandle(JY,(CFI),(17)))
local integer W1I=(LoadInteger(JY,(CFI),(59)))
call FlushChildHashtable(JY,(CFI))
call C9I(t)
if UnitRemoveAbility(F2I,W1I)==false then
set t=CreateTrigger()
set CFI=GetHandleId(t)
call TriggerRegisterUnitEvent(t,F2I,EVENT_UNIT_DEATH)
call TriggerRegisterTimerEvent(t,1,true)
call TriggerAddCondition(t,Condition(function WII))
call SaveUnitHandle(JY,(CFI),(17),(F2I))
call SaveInteger(JY,(CFI),(59),(W1I))
endif
set t=null
set F2I=null
return false
endfunction

function W2I takes unit F2I,integer W1I,integer E9I,real AZI returns nothing
local trigger t=CreateTrigger()
local integer CFI=GetHandleId(t)
call UnitAddAbility(F2I,W1I)
call SetUnitAbilityLevel(F2I,W1I,E9I)
call TriggerRegisterUnitEvent(t,F2I,EVENT_UNIT_DEATH)
call TriggerRegisterTimerEvent(t,AZI,false)
call TriggerAddCondition(t,Condition(function WOI))
call SaveUnitHandle(JY,(CFI),(17),(F2I))
call SaveInteger(JY,(CFI),(59),(W1I))
set t=null
endfunction

function ZWI takes nothing returns boolean
local trigger t=GetTriggeringTrigger()
local integer CFI=GetHandleId(t)
local unit CLI=(LoadUnitHandle(JY,(CFI),(14)))
local integer ZXI=(LoadInteger(JY,(CFI),(52)))
if CLI!=null then
call UnitRemoveAbility(CLI,ZXI)
endif
call FlushChildHashtable(JY,(CFI))
call C9I(t)
set t=null
set CLI=null
return false
endfunction

function ZYI takes unit u,integer ZXI,real AZI returns nothing
local trigger t=CreateTrigger()
local integer CFI=GetHandleId(t)
call UnitAddAbility(u,ZXI)
call TriggerRegisterTimerEvent(t,AZI,false)
call TriggerAddCondition(t,Condition(function ZWI))
call SaveUnitHandle(JY,(CFI),(14),(u))
call SaveInteger(JY,(CFI),(52),(ZXI))
set t=null
endfunction

function C3I takes group g returns nothing
//local integer i=GetHandleId(g)-OJ
//if i<0 or i>120 then
//set BJ=true
//else
call GroupClear(g)
//set IJ[i]=false
//set AJ=i
//endif
endfunction

function WEI takes unit CTI returns boolean
local integer WFI=GetUnitTypeId(CTI)
return WFI==1848651828 or WFI==1848652103 or WFI==1848652099 or WFI==1848652088 or WFI==1697656907 or WFI==1697656905 or WFI==1697656908 or WFI==1697657162
endfunction

function WWI takes nothing returns boolean//'A04R' = 1093678162
return IsUnitEnemy(OK,GetOwningPlayer(GetFilterUnit()))and(GetUnitAbilityLevel(GetFilterUnit(),'A04R')==0 and IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE)==false and HQI(GetFilterUnit())==false)and(IsUnitType(GetFilterUnit(),UNIT_TYPE_ANCIENT)==false or WEI(GetFilterUnit()))
endfunction

function B8I takes nothing returns nothing
call DisplayTimedTextToPlayer(GetEnumPlayer(),0,A3,KJ,JJ)
endfunction

function B9I takes force BAI,real AZI,string BBI returns nothing
set JJ=BBI
set KJ=AZI
call ForForce(BAI,function B8I)
endfunction

function C4I takes nothing returns group
return CreateGroup()
endfunction

function CKI takes unit CLI returns integer
local integer x
local integer id=GetUnitTypeId(CLI)
set x=1
loop
exitwhen x>DO0
if id==D10[x]then
return 2
endif
set x=x+1
endloop
set x=1
loop
exitwhen x>D30
if id==D20[x]then
return 3
endif
set x=x+1
endloop
set x=1
loop
exitwhen x>D50
if id==D40[x]then
return 1
endif
set x=x+1
endloop
return 0
endfunction

function C0I takes integer i returns unit
if i>16000 then
return NY[i-16000]
elseif i>8000 then
return MY[i-8000]
else
return LY[i]
endif
endfunction

function BUI takes integer i returns nothing
if i>16000 then
set NY[i-16000]=null
elseif i>8000 then
set MY[i-8000]=null
else
set LY[i]=null
endif
endfunction

function C1I takes unit u returns integer
set SY=SY+1
if SY>16000 then
set NY[SY-16000]=u
elseif SY>8000 then
set MY[SY-8000]=u
else
set LY[SY]=u
endif
return SY
endfunction
function CXI takes nothing returns boolean
local trigger t=GetTriggeringTrigger()
local integer CFI=GetHandleId(t)
call SaveInteger(JY,(GetHandleId(((LoadUnitHandle(JY,(CFI),(14)))))),(((LoadInteger(JY,(CFI),(33))))),(2))
call FlushChildHashtable(JY,(CFI))
call C9I(t)
set t=null
return false
endfunction
function CYI takes unit CJI,integer CHI,real AZI returns nothing
local trigger t=CreateTrigger()
call TriggerAddCondition(t,Condition(function CXI))
call TriggerRegisterTimerEvent(t,AZI,false)
call SaveInteger(JY,(GetHandleId((CJI))),((CHI)),(1))
call SaveUnitHandle(JY,(GetHandleId(t)),(14),(CJI))
call SaveInteger(JY,(GetHandleId(t)),(33),(CHI))
set t=null
endfunction

function ENI takes unit u returns boolean
return GetUnitAbilityLevel(u,'A0S6')>0 or GetUnitAbilityLevel(u,'A179')>0 or GetUnitAbilityLevel(u,'ACmi')>0 or GetUnitAbilityLevel(u,'A0SU')>0 or GetUnitAbilityLevel(u,'B014')>0 or ((LoadInteger(JY,(GetHandleId(((u)))),((4252))))==1)
endfunction

function ERI takes unit u returns boolean
return GetUnitTypeId(u)==1211117638 or GetUnitTypeId(u)==1211117637 or GetUnitTypeId(u)==1211117639 or GetUnitTypeId(u)==1328558391
endfunction

function WXI takes nothing returns boolean//**dsadasd*//////////////////////////////////////////////////////----------------- habilidad   'A04R' = 1093678162
return ENI(GetFilterUnit())==false and IsUnitEnemy(OK,GetOwningPlayer(GetFilterUnit()))and(GetUnitAbilityLevel(GetFilterUnit(),'A04R')==0 and IsUnitType(GetFilterUnit(),UNIT_TYPE_STRUCTURE)==false and HQI(GetFilterUnit())==false)and(IsUnitType(GetFilterUnit(),UNIT_TYPE_ANCIENT)==false or WEI(GetFilterUnit()))
endfunction

function HJI takes nothing returns boolean
local trigger t=GetTriggeringTrigger()
local integer CFI=GetHandleId(t)
local fogmodifier HKI=(LoadFogModifierHandle(JY,(CFI),(42)))
call FogModifierStop(HKI)
call DestroyFogModifier(HKI)
call FlushChildHashtable(JY,(CFI))
call C9I(t)
set t=null
set HKI=null
return false
endfunction

function HLI takes player p,real AZI,real x,real y,real r returns nothing
local trigger t=CreateTrigger()
local fogmodifier HKI=CreateFogModifierRadius(p,FOG_OF_WAR_VISIBLE,x,y,r,true,true)
call FogModifierStart(HKI)
call SaveFogModifierHandle(JY,(GetHandleId(t)),(42),(HKI))
call TriggerRegisterTimerEvent(t,AZI,false)
call TriggerAddCondition(t,Condition(function HJI))
set HKI=null
set t=null
endfunction
function FGI takes unit FHI returns nothing
call PauseUnit(FHI,true)
call IssueImmediateOrder(FHI,"stop")
call PauseUnit(FHI,false)
endfunction
function FBI takes player FCI,string BVI returns nothing
local sound FDI=CreateSoundFromLabel("InterfaceError",false,false,false,10,10)
if(GetLocalPlayer()==FCI)then
if(BVI!="")and(BVI!=null)then
call ClearTextMessages()
call DisplayTimedTextToPlayer(FCI,0.50,-1.00,2.00,"|cffffcc00"+BVI+"|r")
endif
call StartSound(FDI)
endif
call KillSoundWhenDone(FDI)
endfunction

function G2I takes real a,real b returns real
if(a<b)then
return b
else
return a
endif
endfunction

function FYI takes real x returns real
local real FJI=GetRectMinX(bj_mapInitialPlayableArea)+50
if(x<FJI)then
return FJI
endif
set FJI=GetRectMaxX(bj_mapInitialPlayableArea)-50
if(x>FJI)then
return FJI
endif
return x
endfunction

function FKI takes real y returns real
local real FJI=GetRectMinY(bj_mapInitialPlayableArea)+50
if(y<FJI)then
return FJI
endif
set FJI=GetRectMaxY(bj_mapInitialPlayableArea)-50
if(y>FJI)then
return FJI
endif
return y
endfunction

function FLI takes integer FMI returns nothing
local unit u=CreateUnit(Player(15),1211117657,0,0,270)
call UnitAddAbility(u,FMI)
call UnitRemoveAbility(u,FMI)
call RemoveUnit(u)
set u=null
endfunction

function GGI takes real x1,real y1,real x2,real y2 returns real
return SquareRoot(((x1-x2)*(x1-x2))+((y1-y2)*(y1-y2)))
endfunction

function HVI takes real x,real y,real d returns integer
local rect r=Rect(x-d,y-d,x+d,y+d)
set LJ=0
call EnumDestructablesInRect(r,Condition(function BCI),function HZI)
call RemoveRect(r)
set r=null
return LJ
endfunction


Esto de abajo solo es una instalacion para q en el mapa se active adecuadamente la habilidadd :cool:


JASS:
function DAI takes player DBI returns boolean
if(GetPlayerSlotState(DBI)==PLAYER_SLOT_STATE_PLAYING)then
if(GetPlayerController(DBI)==MAP_CONTROL_USER)then
return true
endif
endif
return false
endfunction

function EQI takes nothing returns nothing
local integer DYI=1
set XO=CO[1]
loop
exitwhen DAI(XO)or DYI>5
set DYI=DYI+1
set XO=CO[DYI]
endloop
if DAI(XO)==false then
set XO=DO[1]
set DYI=1
loop
exitwhen DAI(XO)or DYI>5
set DYI=DYI+1
set XO=DO[DYI]
endloop
endif
endfunction

function TC1 takes string winner returns nothing
local integer i
local player p
local string id
local integer G6I//=R2I(TimerGetElapsed(E0)-E20)
local integer XRI//=G6I/ 60-1/ 2
local integer XPI//=ModuloInteger(G6I,60)
call EQI()
set i=1
loop
exitwhen i>5
set p=CO[i]
set id=I2S(GetPlayerId(p))
call StoreInteger(LN,id,"1",(I[GetPlayerId((p))]))
call StoreInteger(LN,id,"2",(O[GetPlayerId((p))]))
call StoreInteger(LN,id,"3",(A[GetPlayerId((p))]))
call StoreInteger(LN,id,"4",(B[GetPlayerId((p))]))
call StoreInteger(LN,id,"5",(D[GetPlayerId((p))]))
call StoreInteger(LN,id,"6",(GetPlayerState((p),PLAYER_STATE_RESOURCE_GOLD)))
call StoreInteger(LN,id,"7",(LoadInteger(JY,(400+GetPlayerId((p))),(79))))
call StoreInteger(LN,id,"8_0",(GetItemTypeId(UnitItemInSlot(K1[GetPlayerId((p))],(0)))))
call StoreInteger(LN,id,"8_1",(GetItemTypeId(UnitItemInSlot(K1[GetPlayerId((p))],(1)))))
call StoreInteger(LN,id,"8_2",(GetItemTypeId(UnitItemInSlot(K1[GetPlayerId((p))],(2)))))
call StoreInteger(LN,id,"8_3",(GetItemTypeId(UnitItemInSlot(K1[GetPlayerId((p))],(3)))))
call StoreInteger(LN,id,"8_4",(GetItemTypeId(UnitItemInSlot(K1[GetPlayerId((p))],(4)))))
call StoreInteger(LN,id,"8_5",(GetItemTypeId(UnitItemInSlot(K1[GetPlayerId((p))],(5)))))
call StoreInteger(LN,id,"9",(GetUnitTypeId(K1[GetPlayerId((p))])))
call StoreInteger(LN,id,"id",i)
set p=DO[i]
set id=I2S(GetPlayerId(p))
call StoreInteger(LN,id,"1",(I[GetPlayerId((p))]))
call StoreInteger(LN,id,"2",(O[GetPlayerId((p))]))
call StoreInteger(LN,id,"3",(A[GetPlayerId((p))]))
call StoreInteger(LN,id,"4",(B[GetPlayerId((p))]))
call StoreInteger(LN,id,"5",(D[GetPlayerId((p))]))
call StoreInteger(LN,id,"6",(GetPlayerState((p),PLAYER_STATE_RESOURCE_GOLD)))
call StoreInteger(LN,id,"7",(LoadInteger(JY,(400+GetPlayerId((p))),(79))))
call StoreInteger(LN,id,"8_0",(GetItemTypeId(UnitItemInSlot(K1[GetPlayerId((p))],(0)))))
call StoreInteger(LN,id,"8_1",(GetItemTypeId(UnitItemInSlot(K1[GetPlayerId((p))],(1)))))
call StoreInteger(LN,id,"8_2",(GetItemTypeId(UnitItemInSlot(K1[GetPlayerId((p))],(2)))))
call StoreInteger(LN,id,"8_3",(GetItemTypeId(UnitItemInSlot(K1[GetPlayerId((p))],(3)))))
call StoreInteger(LN,id,"8_4",(GetItemTypeId(UnitItemInSlot(K1[GetPlayerId((p))],(4)))))
call StoreInteger(LN,id,"8_5",(GetItemTypeId(UnitItemInSlot(K1[GetPlayerId((p))],(5)))))
call StoreInteger(LN,id,"9",(GetUnitTypeId(K1[GetPlayerId((p))])))
call StoreInteger(LN,id,"id",i+5)
if GetLocalPlayer()==XO then
call SyncStoredInteger(LN,I2S(GetPlayerId(CO[i])),"1")
call SyncStoredInteger(LN,I2S(GetPlayerId(CO[i])),"2")
call SyncStoredInteger(LN,I2S(GetPlayerId(CO[i])),"3")
call SyncStoredInteger(LN,I2S(GetPlayerId(CO[i])),"4")
call SyncStoredInteger(LN,I2S(GetPlayerId(CO[i])),"5")
call SyncStoredInteger(LN,I2S(GetPlayerId(CO[i])),"6")
call SyncStoredInteger(LN,I2S(GetPlayerId(CO[i])),"7")
call SyncStoredInteger(LN,I2S(GetPlayerId(CO[i])),"8_0")
call SyncStoredInteger(LN,I2S(GetPlayerId(CO[i])),"8_1")
call SyncStoredInteger(LN,I2S(GetPlayerId(CO[i])),"8_2")
call SyncStoredInteger(LN,I2S(GetPlayerId(CO[i])),"8_3")
call SyncStoredInteger(LN,I2S(GetPlayerId(CO[i])),"8_4")
call SyncStoredInteger(LN,I2S(GetPlayerId(CO[i])),"8_5")
call SyncStoredInteger(LN,I2S(GetPlayerId(CO[i])),"9")
call SyncStoredInteger(LN,I2S(GetPlayerId(CO[i])),"id")
call SyncStoredInteger(LN,I2S(GetPlayerId(DO[i])),"1")
call SyncStoredInteger(LN,I2S(GetPlayerId(DO[i])),"2")
call SyncStoredInteger(LN,I2S(GetPlayerId(DO[i])),"3")
call SyncStoredInteger(LN,I2S(GetPlayerId(DO[i])),"4")
call SyncStoredInteger(LN,I2S(GetPlayerId(DO[i])),"5")
call SyncStoredInteger(LN,I2S(GetPlayerId(DO[i])),"6")
call SyncStoredInteger(LN,I2S(GetPlayerId(DO[i])),"7")
call SyncStoredInteger(LN,I2S(GetPlayerId(DO[i])),"8_0")
call SyncStoredInteger(LN,I2S(GetPlayerId(DO[i])),"8_1")
call SyncStoredInteger(LN,I2S(GetPlayerId(DO[i])),"8_2")
call SyncStoredInteger(LN,I2S(GetPlayerId(DO[i])),"8_3")
call SyncStoredInteger(LN,I2S(GetPlayerId(DO[i])),"8_4")
call SyncStoredInteger(LN,I2S(GetPlayerId(DO[i])),"8_5")
call SyncStoredInteger(LN,I2S(GetPlayerId(DO[i])),"9")
call SyncStoredInteger(LN,I2S(GetPlayerId(DO[i])),"id")
endif
set i=i+1
endloop
if LP0==false then
call StoreInteger(LN,"Global","Winner",LQ0)
call StoreInteger(LN,"Global","m",XRI)
call StoreInteger(LN,"Global","s",XPI)
if GetLocalPlayer()==XO then
call SyncStoredInteger(LN,"Global","Winner")
call SyncStoredInteger(LN,"Global","m")
call SyncStoredInteger(LN,"Global","s")
endif
endif
endfunction

function M7I takes nothing returns nothing
call TC1("1")
endfunction

function M6I takes nothing returns nothing
local player p=LU0
local string id=I2S(GetPlayerId(p))
call StoreInteger(LN,id,"8_0",(GetItemTypeId(UnitItemInSlot(K1[GetPlayerId((p))],(0)))))
call StoreInteger(LN,id,"8_1",(GetItemTypeId(UnitItemInSlot(K1[GetPlayerId((p))],(1)))))
call StoreInteger(LN,id,"8_2",(GetItemTypeId(UnitItemInSlot(K1[GetPlayerId((p))],(2)))))
call StoreInteger(LN,id,"8_3",(GetItemTypeId(UnitItemInSlot(K1[GetPlayerId((p))],(3)))))
call StoreInteger(LN,id,"8_4",(GetItemTypeId(UnitItemInSlot(K1[GetPlayerId((p))],(4)))))
call StoreInteger(LN,id,"8_5",(GetItemTypeId(UnitItemInSlot(K1[GetPlayerId((p))],(5)))))
if GetLocalPlayer()==XO then
call SyncStoredInteger(LN,I2S(GetPlayerId(p)),"8_0")
call SyncStoredInteger(LN,I2S(GetPlayerId(p)),"8_1")
call SyncStoredInteger(LN,I2S(GetPlayerId(p)),"8_2")
call SyncStoredInteger(LN,I2S(GetPlayerId(p)),"8_3")
call SyncStoredInteger(LN,I2S(GetPlayerId(p)),"8_4")
call SyncStoredInteger(LN,I2S(GetPlayerId(p)),"8_5")
endif
endfunction

function J9I takes string JAI,integer GJI returns nothing
call StoreInteger(LN,"Data",JAI,GJI)
if DAI(XO)==false then
call EQI()
endif
if GetLocalPlayer()==XO then
call SyncStoredInteger(LN,"Data",JAI)
endif
endfunction

function Trig_Melee_Initialization_Actions takes nothing returns nothing
    local trigger t=CreateTrigger()
    local integer CFI=GetHandleId(t)
    set JY=InitHashtable()
    call ExecuteFunc("TidalErruptionConecp")
    call ExecuteFunc("O71_Hability___2Concept")
    call SaveReal(JY,(CFI),(149),((0)*1.0))
    call SaveReal(JY,(CFI),(150),((0)*1.0))
    call SaveReal(JY,(CFI),(151),((160)*1.0))
    call TimerStart(E0,99999.00,false,null)
    call DetectGameStarted()
    call FlushGameCache(InitGameCache("dr.x"))
    set LN=InitGameCache("dr.x")
    set CO[0]=Player(0)
    set CO[1]=Player(1)
    set CO[2]=Player(2)
    set CO[3]=Player(3)
    set CO[4]=Player(4)
    set CO[5]=Player(5)
    set DO[0]=Player(6)
    set DO[1]=Player(7)
    set DO[2]=Player(8)
    set DO[3]=Player(9)
    set DO[4]=Player(10)
    set DO[5]=Player(11)
    call ExecuteFunc("M7I")
    call J9I("C"+"K"+I2S(A[GetPlayerId(GetTriggerPlayer())])+"D"+I2S(B[GetPlayerId(GetTriggerPlayer())])+"N"+I2S((LoadInteger(JY,(400+GetPlayerId(GetTriggerPlayer())),(79)))),GetPlayerId(GetTriggerPlayer()))
    set LU0=GetTriggerPlayer()
    call ExecuteFunc("M6I")
endfunction

//===========================================================================
function InitTrig_Instaled_Game takes nothing returns nothing
    set gg_trg_Instaled_Game = CreateTrigger(  )
    call TriggerRegisterTimerEvent( gg_trg_Instaled_Game, 0.10, false)
    call TriggerAddAction( gg_trg_Instaled_Game, function Trig_Melee_Initialization_Actions )
endfunction




Esta habilidad es un trigger lo de arriba es solo codes para q funcionen recomiendo poner todos.
Esta habilidad da en la v1.24 de WarCraft :grin:

JASS:
function WSO takes nothing returns nothing
local trigger t=GetTriggeringTrigger()
local integer CFI=GetHandleId(t)
local integer C6I=GetTriggerEvalCount(t)
local unit FOI=(LoadUnitHandle(JY,(CFI),(2)))
local integer F6I=(LoadInteger(JY,(CFI),(30)))
local unit F2I=C0I(F6I)
local integer E9I=(LoadInteger(JY,(CFI),(5)))
local real WTO
local unit X9I
set WTO=0.6*(C6I-25)*(C6I-25)
if C6I<51 and GetTriggerEventId()!=EVENT_UNIT_DEATH then
if ModuloInteger(C6I,5)==0 then
call F1I(FOI,F2I,1,3+3*E9I)
endif
if ERI(F2I)==false then
call SetUnitFlyHeight(F2I,500-WTO,0)
endif
else
//casting 1697656901 = 'e00E'
//Slow 1093742924 = 'A11L'
set X9I=CreateUnit(GetOwningPlayer(FOI),'e00E',GetUnitX(F2I),GetUnitY(F2I),0)
call UnitAddAbility(X9I,'A11L')
call SetUnitAbilityLevel(X9I,'A11L',E9I)
call IssueTargetOrder(X9I,"slow",F2I)
if ERI(F2I)==false then
call SetUnitFlyHeight(F2I,GetUnitDefaultFlyHeight(F2I),0)
endif
if O3==false then
call PauseUnit(F2I,false)
endif
call SetUnitPathing(F2I,true)
call BUI(F6I)
call FlushChildHashtable(JY,(CFI))
call C9I(t)
endif
set t=null
set FOI=null
set F2I=null
set X9I=null
//eturn false
endfunction

function WRO takes nothing returns nothing
local trigger t=CreateTrigger()
local integer CFI=GetHandleId(t)
local unit FOI=OK
local unit F2I=GetEnumUnit()
local integer E9I=MJ
call PauseUnit(F2I,true)
call SetUnitPathing(F2I,false)
if ERI(F2I)==false then
//set elevet 'Amrf' = 1097691750
call UnitAddAbility(F2I,'Amrf')
call UnitRemoveAbility(F2I,'Amrf')
endif
call TriggerRegisterTimerEvent(t,0.03,true)
call TriggerRegisterUnitEvent(t,F2I,EVENT_UNIT_DEATH)
call TriggerAddAction(t,function WSO)
//call TriggerAddCondition(t,Condition(function WSO))
call SaveUnitHandle(JY,(CFI),(2),(FOI))
call SaveInteger(JY,(CFI),(30),(C1I(F2I)))
call SaveInteger(JY,(CFI),(5),(E9I))
call F1I(FOI,F2I,1,30+30*E9I)
set t=null
set FOI=null
set F2I=null
endfunction

function WPO takes nothing returns nothing
local trigger t=GetTriggeringTrigger()
local integer CFI=GetHandleId(t)
local unit CLI=(LoadUnitHandle(JY,(CFI),(14)))
local real x=(LoadReal(JY,(CFI),(6)))
local real y=(LoadReal(JY,(CFI),(7)))
local integer E9I=(LoadInteger(JY,(CFI),(5)))
local group g=C4I()
call HLI(GetOwningPlayer(CLI),4,x,y,400)
call DestroyEffect((LoadEffectHandle(JY,(CFI),(175))))
call DestroyEffect((LoadEffectHandle(JY,(CFI),(176))))
call DestroyEffect((LoadEffectHandle(JY,(CFI),(177))))
call DestroyEffect((LoadEffectHandle(JY,(CFI),(178))))
call DestroyEffect((LoadEffectHandle(JY,(CFI),(179))))
call DestroyEffect((LoadEffectHandle(JY,(CFI),(180))))
call FlushChildHashtable(JY,(CFI))
call C9I(t)
call DestroyEffect(AddSpecialEffect("Objects\\Spawnmodels\\Naga\\NagaDeath\\NagaDeath.mdl",x,y))
call DestroyEffect(AddSpecialEffect("effects\\TidalErruption.mdx",x,y))
set OK=CLI
set MJ=E9I
call ForGroup(g,function WRO)
call GroupEnumUnitsInRange(g,x,y,225,Condition(function WXI))
call ForGroup(g,function WRO)
call C3I(g)
set t=null
set CLI=null
//return false
endfunction

function WQO takes nothing returns nothing
local unit CLI=GetTriggerUnit()
local location l=GetSpellTargetLoc()
local real x=GetLocationX(l)
local real y=GetLocationY(l)
local trigger t=CreateTrigger()
local integer CFI=GetHandleId(t)
local integer E9I=GetUnitAbilityLevel(CLI,'A136')
local string s=""
local real a
if IsPlayerAlly(GetLocalPlayer(),GetOwningPlayer(CLI))==true then
set s="Objects\\Spawnmodels\\Other\\IllidanFootprint\\IllidanWaterSpawnFootPrint.mdl"
endif
call RemoveLocation(l)
call SaveInteger(JY,(CFI),(5),(E9I))
call SaveUnitHandle(JY,(CFI),(14),(CLI))
call SaveReal(JY,(CFI),(6),((x)*1.0))
call SaveReal(JY,(CFI),(7),((y)*1.0))
call SaveInteger(JY,(CFI),(5),(E9I))
set a=0
call SaveEffectHandle(JY,(CFI),(175),(AddSpecialEffect(s,x+40*Cos(a/ 6*360*bj_DEGTORAD),y+40*Sin(a/ 6*360*bj_DEGTORAD))))
set a=1
call SaveEffectHandle(JY,(CFI),(176),(AddSpecialEffect(s,x+40*Cos(a/ 6*360*bj_DEGTORAD),y+40*Sin(a/ 6*360*bj_DEGTORAD))))
set a=2
call SaveEffectHandle(JY,(CFI),(177),(AddSpecialEffect(s,x+40*Cos(a/ 6*360*bj_DEGTORAD),y+40*Sin(a/ 6*360*bj_DEGTORAD))))
set a=3
call SaveEffectHandle(JY,(CFI),(178),(AddSpecialEffect(s,x+40*Cos(a/ 6*360*bj_DEGTORAD),y+40*Sin(a/ 6*360*bj_DEGTORAD))))
set a=4
call SaveEffectHandle(JY,(CFI),(179),(AddSpecialEffect(s,x+40*Cos(a/ 6*360*bj_DEGTORAD),y+40*Sin(a/ 6*360*bj_DEGTORAD))))
set a=5
call SaveEffectHandle(JY,(CFI),(180),(AddSpecialEffect(s,x+40*Cos(a/ 6*360*bj_DEGTORAD),y+40*Sin(a/ 6*360*bj_DEGTORAD))))
call TriggerRegisterTimerEvent(t,1.6,false)
call TriggerAddAction(t,function WPO)
//call TriggerAddCondition(t,Condition(function WPO))
set CLI=null
set t=null
set l=null
endfunction

function WUO takes nothing returns boolean
// 'A136' = 1093743414
if GetSpellAbilityId()=='A136' then//'A136'
call WQO()
endif
return false
endfunction

function TidalErruptionConecp takes nothing returns nothing
local trigger t=CreateTrigger()
call HEI(t,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(t,Condition(function WUO))
set t=null
endfunction
 
Status
Not open for further replies.
Top