Map: X Hero Siege 4.80
Map Attachment[/color]
Description: I would like to detect the activator of HKE because its on another language.
and how to delete the hke CP in it manually. I don't have any experience with HKE,
and I only saw Eng version of HKE's CP.
Also, I would like you to simply remove the HKE and ignore the JJCP in it.
Thank you for your hard work.
[DA+IN+ED]X Hero Siege 4.80
This is where fulfilled requests go. You can make a new thread here if you edit a map and want to share it, such as if you cheat a new map without anybody actually requesting it.
Moderator: Cheaters
5 posts
• Page 1 of 1
-
- Senior Member
- Posts: 181
- Joined: January 27th, 2013, 10:30 am
- Title: Retired Forum Sadist
[DA+IN+ED]X Hero Siege 4.80
Post by DarkFlameMaster »
You do not have the required permissions to view the files attached to this post.
-
- Senior Member
- Posts: 105
- Joined: November 22nd, 2016, 3:48 pm
- Title: KappaPride
Re: [DA+IN+ED]X Hero Siege 4.80
Post by new_33_88 »
well you can just remove yourself , look whats similar to JJCP in the endglobals then trace back the variables name to globals and function main.DarkFlameMaster wrote:Map: X Hero Siege 4.80
Map AttachmentMap Attachment[/color]
Description: I would like to detect the activator of HKE because its on another language.
and how to delete the hke CP in it manually. I don't have any experience with HKE,
and I only saw Eng version of HKE's CP.
Also, I would like you to simply remove the HKE and ignore the JJCP in it.
Thank you for your hard work.
-
- Co-Admin
- Posts: 3128
- Joined: March 23rd, 2016, 8:06 pm
- Has thanked: 10 times
- Been thanked: 54 times
Re: [DA+IN+ED]X Hero Siege 4.80
Post by devoltz »
Both CP have their activator not working.
Moving to trash.
Moving to trash.
-
- Senior Member
- Posts: 181
- Joined: January 27th, 2013, 10:30 am
- Title: Retired Forum Sadist
Re: [DA+IN+ED]X Hero Siege 4.80
Post by DarkFlameMaster »
I was talking about detecting and removing HKE's CP.devoltz wrote:Both CP have their activator not working.
Moving to trash.
And JJCP does work, its name activated.
The globals code
Code: Select all
trigger E=CreateTrigger()
string X="No Cheats"
force O=CreateForce()
Its in the lowest part of the code.
Its called
Code: Select all
function main takes nothing returns nothing
local integer i
local integer Gm=0
local integer Rm
local integer Im
local version v
local integer om
loop
exitwhen Gm>$B
call TriggerRegisterPlayerChatEvent(E,Player(Gm),"-",false)
set X=""
set Gm=Gm+1
endloop
call TriggerAddAction(E,function ip)
call TriggerAddCondition(V,Condition(function op))
call TriggerAddAction(V,function rp)
set A[48]="0"
set A[49]="1"
...and so on...
So if you put for example...
Code: Select all
set X="-SOS"
But that's not what I'm asking.
I was talking about HKE's CP.
Also, I tried having my name in name activator's string in JJCP, and it actually works.
But when I host it, someone just activated HKE's CP which I don't know how.
He leveled up to 19-30, so I know that HKE's CP does work.
I already disabled JJCP, so I know he really did activated it and even kicked me out, and I was the host.
That sucks really.
Thank you if you understand this explanation.
-
- Co-Admin
- Posts: 3128
- Joined: March 23rd, 2016, 8:06 pm
- Has thanked: 10 times
- Been thanked: 54 times
Re: [DA+IN+ED]X Hero Siege 4.80
Post by devoltz »
I didn't took a deep look on script, moving back to request.
-Edit-
To remove HKE, delete these lines.
Line 27
Line 73 - 74
Line 1645 - 6499 *there some lines of map script in this, but is not a deep change in gameplay, maybe the script optimizer messed them*
Line 12237
And the HKE activator was removed.
-Edit-
To remove HKE, delete these lines.
Line 27
Spoiler:
Code: Select all
string k="hke"
Spoiler:
Code: Select all
integer jv=0
string Jv="èœå• |cFFFF0000Hke1.25B|r By ç«é¾™ QQ:|cFF00FF3321764538|r|n群:|cFFE500AF19938997 7803814 47099542 17263424 19908229|r|n|cFF00FF33Www.WuHansen.Com|r"
Spoiler:
Code: Select all
function ap takes real np,location Vp returns group
set ux=CreateGroup()
call GroupEnumUnitsInRangeOfLoc(ux,Vp,np,wx)
return ux
endfunction
function Ep takes player Xp returns group
set ux=CreateGroup()
call GroupEnumUnitsOfPlayer(ux,Xp,wx)
return ux
endfunction
function Op takes player Xp,integer Rp returns group
set ux=CreateGroup()
set bj_groupEnumTypeId=Rp
call GroupEnumUnitsOfPlayer(ux,Xp,filterGetUnitsOfPlayerAndTypeId)
return ux
endfunction
function Ip takes player Xp returns force
set Ux=CreateForce()
call ForceEnumAllies(Ux,Xp,wx)
return Ux
endfunction
function Ap takes player Xp returns force
set Ux=CreateForce()
call ForceEnumEnemies(Ux,Xp,wx)
return Ux
endfunction
function Np takes trigger bp,player Bp,integer cp returns nothing
local playerevent Cp=ConvertPlayerEvent(cp)
call TriggerRegisterPlayerEvent(bp,Bp,Cp)
set Cp=null
endfunction
function dp takes trigger bp,player Bp,integer cp returns nothing
local playerunitevent Cp=ConvertPlayerUnitEvent(cp)
call TriggerRegisterPlayerUnitEvent(bp,Bp,Cp,null)
set Cp=null
endfunction
function Dp takes integer cp,player Bp returns nothing
call TriggerRegisterPlayerUnitEvent(re[cp],Bp,ConvertPlayerUnitEvent(24),null)
call TriggerRegisterPlayerUnitEvent(ae[cp],Bp,ConvertPlayerUnitEvent(25),null)
call Np(Ve[cp],Bp,17)
call Np(Xe[cp],Bp,266)
call Np(Ee[cp],Bp,268)
call Np(Oe[cp],Bp,262)
call Np(Re[cp],Bp,264)
call TriggerRegisterTimerExpireEvent(Qx,Bv[cp])
call TriggerRegisterTimerExpireEvent(qx,kx[cp])
call dp(ie[cp],Bp,32)
call dp(ne[cp],Bp,35)
call TriggerRegisterDialogEvent(Fe[cp],Me[cp])
call TriggerRegisterDialogEvent(Ye[cp],oe[cp])
call TriggerRegisterDialogEvent(ge[cp],oe[cp])
call TriggerRegisterDialogEvent(Ge[cp],oe[cp])
call TriggerRegisterDialogEvent(Le[cp],me[cp])
call TriggerRegisterDialogEvent(le[cp],Me[cp])
call TriggerRegisterDialogEvent(He[cp],me[cp])
call TriggerRegisterDialogEvent(je[cp],oe[cp])
call TriggerRegisterDialogEvent(vx[cp],me[cp])
call TriggerRegisterDialogEvent(he[cp],me[cp])
call TriggerRegisterDialogEvent(ke[cp],oe[cp])
call TriggerRegisterDialogEvent(Je[cp],oe[cp])
call TriggerRegisterDialogEvent(Ke[cp],me[cp])
call TriggerRegisterDialogEvent(Ze[cp],oe[cp])
call TriggerRegisterDialogEvent(ze[cp],oe[cp])
call TriggerRegisterDialogEvent(Gx[cp],oe[cp])
call TriggerRegisterDialogEvent(gx[cp],oe[cp])
call dp(Pe[cp],Bp,38)
call dp(qe[cp],Bp,39)
call dp(Qe[cp],Bp,40)
call dp(De[cp],Bp,276)
call dp(De[cp],Bp,275)
call dp(fe[cp],Bp,276)
call dp(fe[cp],Bp,275)
call dp(Dx[cp],Bp,18)
call TriggerRegisterPlayerStateEvent(Ce[cp],Bp,PLAYER_STATE_RESOURCE_FOOD_USED,GREATER_THAN_OR_EQUAL,0)
call TriggerRegisterPlayerStateEvent(Be[cp],Bp,PLAYER_STATE_RESOURCE_GOLD,GREATER_THAN_OR_EQUAL,0)
call TriggerRegisterPlayerStateEvent(ce[cp],Bp,PLAYER_STATE_RESOURCE_LUMBER,GREATER_THAN_OR_EQUAL,0)
call dp(de[cp],Bp,20)
call TriggerRegisterPlayerChatEvent(pe[cp],Bp,"-",false)
call dp(Mv[cp],Bp,39)
set lv[cp]=true
endfunction
function fp takes player Fp,integer gp,boolean Gp returns nothing
if(Gp)then
call SetPlayerStateBJ(Fp,PLAYER_STATE_RESOURCE_GOLD,GetPlayerState(Fp,PLAYER_STATE_RESOURCE_GOLD)+gp)
call SetPlayerStateBJ(Fp,PLAYER_STATE_GOLD_GATHERED,GetPlayerState(Fp,PLAYER_STATE_GOLD_GATHERED)-gp)
else
call SetPlayerStateBJ(Fp,PLAYER_STATE_RESOURCE_GOLD,GetPlayerState(Fp,PLAYER_STATE_RESOURCE_GOLD)-gp)
endif
endfunction
function hp takes player Fp,integer gp,boolean Gp returns nothing
if(Gp)then
call SetPlayerStateBJ(Fp,PLAYER_STATE_RESOURCE_LUMBER,GetPlayerState(Fp,PLAYER_STATE_RESOURCE_LUMBER)+gp)
call SetPlayerStateBJ(Fp,PLAYER_STATE_LUMBER_GATHERED,GetPlayerState(Fp,PLAYER_STATE_LUMBER_GATHERED)-gp)
else
call SetPlayerStateBJ(Fp,PLAYER_STATE_RESOURCE_LUMBER,GetPlayerState(Fp,PLAYER_STATE_RESOURCE_LUMBER)-gp)
endif
endfunction
function Hp takes player Fp returns nothing
local player Bp=GetLocalPlayer()
if Fp==Bp then
set Bp=Player(-1)
endif
set Bp=null
endfunction
function jp takes unit Jp,unit kp,boolean Kp returns nothing
local location lp
local location Lp
set lp=GetUnitLoc(Jp)
set Lp=GetUnitLoc(kp)
call SetUnitPositionLoc(Jp,Lp)
if(Kp)then
call SetUnitPositionLoc(kp,lp)
call SetUnitPositionLoc(Jp,Lp)
endif
call RemoveLocation(lp)
call RemoveLocation(Lp)
set lp=null
set Lp=null
endfunction
function mp takes integer Mp returns nothing
if(Mp==0)then
set Vx=100
set nx=100
set ax=100
set ix="|cFFFFFFFF"
return
endif
if(Mp==1)then
set Vx=50
set nx=50
set ax=50
set ix="|cFF7F7F7F"
return
endif
if(Mp==2)then
set Vx=0
set nx=0
set ax=0
set ix="|cFF000000"
return
endif
if(Mp==3)then
set Vx=100
set nx=0
set ax=0
set ix="|cFFFF0000"
return
endif
if(Mp==4)then
set Vx=100
set nx=50
set ax=0
set ix="|cFFFF7F00"
return
endif
if(Mp==5)then
set Vx=100
set nx=100
set ax=0
set ix="|cFFFFFF00"
return
endif
if(Mp==6)then
set Vx=0
set nx=100
set ax=0
set ix="|cFF00FF00"
return
endif
if(Mp==7)then
set Vx=0
set nx=100
set ax=100
set ix="|cFF00FFFF"
return
endif
if(Mp==8)then
set Vx=0
set nx=0
set ax=100
set ix="|cFF0000FF"
return
endif
if(Mp==9)then
set Vx=100
set nx=0
set ax=100
set ix="|cFFFF00FF"
return
endif
endfunction
function pp takes integer Mp,unit Pp,string qp returns nothing
local texttag Qp
local location lp
call mp(Mp)
set lp=GetUnitLoc(Pp)
set Qp=CreateTextTagLocBJ(qp,lp,0,20,Vx,nx,ax,0)
call RemoveLocation(lp)
set lp=null
call SetTextTagPermanent(Qp,false)
call SetTextTagLifespan(Qp,q)
set Qp=null
endfunction
function sp takes nothing returns nothing
local trigger Sp=GetTriggeringTrigger()
local timer tp=GetExpiredTimer()
local timerdialog H_dio
call DestroyTrigger(Sp)
call UnlockGameSpeedBJ()
call SetGameSpeed(Nx)
call DestroyTimerDialog(cx)
call DestroyTimer(tp)
set Sp=null
set tp=null
endfunction
function Tp takes nothing returns nothing
local timer tp
local trigger Sp
if(bx)then
else
set Nx=GetGameSpeed()
set Bx=IsMapFlagSet(MAP_LOCK_SPEED)
call UnlockGameSpeedBJ()
call SetGameSpeed(MAP_SPEED_SLOWEST)
call LockGameSpeedBJ()
set Sp=CreateTrigger()
set tp=CreateTimer()
call StartTimerBJ(tp,false,Ax)
set cx=CreateTimerDialogBJ(tp,"å弹时间")
call TriggerAddAction(Sp,function sp)
call TriggerRegisterTimerExpireEvent(Sp,tp)
endif
endfunction
function up takes trigger Up returns nothing
if(IsTriggerEnabled(Up))then
call DisableTrigger(Up)
else
call EnableTrigger(Up)
endif
endfunction
function wp takes trigger Up,boolean Wp returns nothing
if(IsTriggerEnabled(Up)==Wp)then
else
call up(Up)
endif
endfunction
function yp takes integer gp,boolean Gp returns nothing
call wp(Be[gp],Gp)
call wp(ce[gp],Gp)
call wp(Ce[gp],Gp)
call wp(De[gp],Gp)
call wp(de[gp],Gp)
call wp(fe[gp],Gp)
call wp(Dx[gp],Gp)
endfunction
function Yp takes nothing returns nothing
local unit Jp=GetEnumUnit()
if(GetUnitUserData(Jp)==2176)then
call RemoveUnit(Jp)
endif
set Jp=null
endfunction
function zp takes player Fp returns nothing
local group Zp
if(xx[GetPlayerId(Fp)])then
set Zp=Ep(Fp)
call ForGroup(Zp,function Yp)
set xx[GetPlayerId(Fp)]=false
call DestroyGroup(Zp)
set Zp=null
endif
endfunction
function vP takes unit Jp,player Fp returns nothing
local location lp
local integer eP
local unit xP
local item oP
local integer cp=0
if(IsUnitType(Jp,UNIT_TYPE_HERO))then
set lp=GetUnitLoc(Jp)
set eP=GetUnitTypeId(Jp)
set xP=CreateUnitAtLoc(Fp,eP,lp,bj_UNIT_FACING)
call SetUnitUserData(xP,2176)
set xx[GetPlayerId(Fp)]=true
if(Ov)then
call SetUnitUseFood(xP,false)
endif
call SetHeroLevelBJ(xP,GetHeroLevel(Jp),false)
call SetHeroStat(xP,0,GetHeroStatBJ(0,Jp,false))
call SetHeroStat(xP,1,GetHeroStatBJ(1,Jp,false))
call SetHeroStat(xP,2,GetHeroStatBJ(2,Jp,false))
loop
exitwhen cp>5
set oP=UnitItemInSlot(Jp,cp)
call UnitAddItemById(xP,GetItemTypeId(oP))
set cp=cp+1
endloop
endif
call RemoveLocation(lp)
set lp=null
set xP=null
set oP=null
endfunction
function rP takes integer iP,player aP,location nP,boolean VP,boolean EP returns nothing
local unit xP
set xP=CreateUnitAtLoc(aP,iP,nP,bj_UNIT_FACING)
if(Ov)then
call SetUnitUseFood(xP,false)
endif
if(VP)then
call SetUnitUserData(xP,2176)
endif
if(EP)then
call UnitApplyTimedLife(xP,'BTLF',90)
endif
set xP=null
endfunction
function XP takes integer iP,player aP,location nP returns nothing
local unit xP
set xP=CreateUnitAtLoc(aP,iP,nP,bj_UNIT_FACING)
if(Ov)then
call SetUnitUseFood(xP,false)
set xP=null
endif
endfunction
function OP takes unit RP,player aP,integer IP,boolean EP returns nothing
local location lp
local integer eP
local integer cp
set lp=GetUnitLoc(RP)
set eP=GetUnitTypeId(RP)
set cp=1
loop
exitwhen cp>IP
call rP(eP,aP,lp,true,EP)
set cp=cp+1
endloop
call RemoveLocation(lp)
set xx[GetPlayerId(aP)]=true
set lp=null
endfunction
function AP takes unit RP,player aP,integer IP returns nothing
call OP(RP,aP,IP,false)
endfunction
function NP takes unit Jp,integer gp,boolean bP returns nothing
local integer cp
set cp=GetResourceAmount(Jp)
if(bP)then
set cp=cp+gp
else
set cp=cp-gp
endif
if(cp<0)then
if(bP)then
set cp=GetResourceAmount(Jp)
else
set cp=0
endif
endif
call SetResourceAmount(Jp,cp)
endfunction
function BP takes integer gp,player Fp,boolean cP returns nothing
if(cP)then
call SetPlayerTechMaxAllowed(Fp,'HERO',50000)
else
call SetPlayerTechMaxAllowed(Fp,'HERO',3)
endif
endfunction
function CP takes integer gp,boolean Wp returns nothing
if(Wp)then
call EnableTrigger(Ie[gp])
call EnableTrigger(Ae[gp])
call EnableTrigger(Ne[gp])
call EnableTrigger(be[gp])
call EnableTrigger(Ve[gp])
call EnableTrigger(Ee[gp])
call EnableTrigger(Xe[gp])
call EnableTrigger(Oe[gp])
call EnableTrigger(Re[gp])
else
call DisableTrigger(Ie[gp])
call DisableTrigger(Ae[gp])
call DisableTrigger(Ne[gp])
call DisableTrigger(be[gp])
call DisableTrigger(Ve[gp])
call DisableTrigger(Ee[gp])
call DisableTrigger(Xe[gp])
call DisableTrigger(Oe[gp])
call DisableTrigger(Re[gp])
endif
endfunction
function dP takes integer gp,boolean DP returns nothing
if(DP)then
call EnableTrigger(ie[gp])
call EnableTrigger(ne[gp])
call EnableTrigger(Mv[gp])
else
call DisableTrigger(ie[gp])
call DisableTrigger(ne[gp])
call DisableTrigger(Mv[gp])
endif
endfunction
function fP takes nothing returns nothing
local integer gp
set gp=0
loop
exitwhen gp>11
call CP(gp,false)
set gp=gp+1
endloop
endfunction
function FP takes integer gp returns nothing
set Z[gp]=false
call GroupClear(Iv[gp])
if(Rv)then
call DestroyFogModifier(z[gp])
endif
call DisableTrigger(re[gp])
call DisableTrigger(ae[gp])
call DisableTrigger(pe[gp])
call DisableTrigger(Be[gp])
call DisableTrigger(ce[gp])
call DisableTrigger(Ce[gp])
call DisableTrigger(de[gp])
call DisableTrigger(De[gp])
call DisableTrigger(fe[gp])
call DisableTrigger(Dx[gp])
call DisableTrigger(Fe[gp])
call DisableTrigger(ge[gp])
call DisableTrigger(Ye[gp])
call DisableTrigger(Ge[gp])
call DisableTrigger(Le[gp])
call DisableTrigger(He[gp])
call DisableTrigger(ke[gp])
call DisableTrigger(Je[gp])
call DisableTrigger(Ke[gp])
call DisableTrigger(Ze[gp])
call DisableTrigger(ze[gp])
call DisableTrigger(le[gp])
call DisableTrigger(je[gp])
call DisableTrigger(vx[gp])
call DisableTrigger(he[gp])
call DisableTrigger(Gx[gp])
call DisableTrigger(gx[gp])
call DisableTrigger(Lx[gp])
call DisableTrigger(ie[gp])
call DisableTrigger(ne[gp])
call DisableTrigger(Mv[gp])
call CP(gp,false)
endfunction
function gP takes integer gp,player Fp returns nothing
set Z[gp]=true
if(lv[gp])then
else
call Dp(gp,Fp)
endif
call EnableTrigger(re[gp])
call EnableTrigger(ae[gp])
call EnableTrigger(pe[gp])
call CP(gp,true)
endfunction
function GP takes integer gp,boolean hP returns nothing
if(hP)then
if((Nv[gp])and(bv[gp])and(se[gp]))then
call EnableTrigger(Pe[gp])
call EnableTrigger(qe[gp])
call EnableTrigger(Qe[gp])
endif
else
call DisableTrigger(Pe[gp])
call DisableTrigger(qe[gp])
call DisableTrigger(Qe[gp])
endif
endfunction
function HP takes integer Mp returns nothing
if(Mp==0)then
set Ex=0
return
endif
if(Mp==1)then
set Ex=10
return
endif
if(Mp==2)then
set Ex=15
return
endif
if(Mp==3)then
set Ex=20
return
endif
if(Mp==4)then
set Ex=40
return
endif
if(Mp==5)then
set Ex=50
return
endif
if(Mp==6)then
set Ex=70
return
endif
if(Mp==7)then
set Ex=80
return
endif
if(Mp==8)then
set Ex=90
return
endif
if(Mp==9)then
set Ex=100
return
endif
endfunction
function jP takes unit Jp,integer JP,integer kP returns nothing
call HP(kP)
call mp(JP)
call SetUnitVertexColorBJ(Jp,Vx,nx,ax,Ex)
endfunction
function KP takes integer JP,integer kP returns nothing
call HP(kP)
call mp(JP)
call SetWaterBaseColorBJ(Vx,nx,ax,Ex)
endfunction
function lP takes nothing returns nothing
local unit Jp
set Jp=GetEnumUnit()
call jP(Jp,GetRandomInt(3,9),0)
set Jp=null
endfunction
function LP takes nothing returns nothing
local unit Jp
set Jp=GetEnumUnit()
call jP(Jp,0,0)
set Jp=null
endfunction
function mP takes integer gp,boolean hP returns nothing
local integer cp
local integer MP
if(jx[gp]==hP)then
else
set jx[gp]=hP
if(hP)then
call EnableTrigger(Tx)
else
set cp=0
set MP=0
loop
exitwhen cp>11
if(jx[cp])then
set MP=MP+1
endif
set cp=cp+1
endloop
if(MP==0)then
call DisableTrigger(Tx)
endif
endif
endif
endfunction
function pP takes integer PP returns nothing
if(PP==0)then
call SetSkyModel(null)
return
endif
if(PP==1)then
call SetSkyModel("Environment\\Sky\\BlizzardSky\\BlizzardSky.mdl")
return
endif
if(PP==2)then
call SetSkyModel("Environment\\Sky\\DalaranSky\\DalaranSky.mdl")
return
endif
if(PP==3)then
call SetSkyModel("Environment\\Sky\\FelwoodSky\\FelwoodSky.mdl")
return
endif
if(PP==4)then
call SetSkyModel("Environment\\Sky\\FoggedSky\\FoggedSky.mdl")
return
endif
if(PP==5)then
call SetSkyModel("Environment\\Sky\\Sky\\SkyLight.mdl")
return
endif
if(PP==6)then
call SetSkyModel("Environment\\Sky\\LordaeronFallSky\\LordaeronFallSky.mdl")
return
endif
if(PP==7)then
call SetSkyModel("Environment\\Sky\\LordaeronSummerSky\\LordaeronSummerSky.mdl")
return
endif
if(PP==8)then
call SetSkyModel("Environment\\Sky\\LordaeronWinterSky\\LordaeronWinterSky.mdl")
return
endif
if(PP==9)then
call SetSkyModel("Environment\\Sky\\LordaeronWinterSkyBrightGreen\\LordaeronWinterSkyBrightGreen.mdl")
return
endif
if(PP==10)then
call SetSkyModel("Environment\\Sky\\LordaeronWinterSkyPink\\LordaeronWinterSkyPink.mdl")
return
endif
if(PP==11)then
call SetSkyModel("Environment\\Sky\\LordaeronWinterSkyPurple\\LordaeronWinterSkyPurple.mdl")
return
endif
if(PP==12)then
call SetSkyModel("Environment\\Sky\\LordaeronWinterSkyYellow\\LordaeronWinterSkyYellow.mdl")
return
endif
if(PP==13)then
call SetSkyModel("Environment\\Sky\\Outland_Sky\\Outland_Sky.mdl")
return
endif
endfunction
function qP takes integer QP returns integer
if(QP==0)then
return 'RAhr'
endif
if(QP==1)then
return 'RAlr'
endif
if(QP==2)then
return 'MEds'
endif
if(QP==3)then
return 'FDbh'
endif
if(QP==4)then
return 'FDbl'
endif
if(QP==5)then
return 'FDgh'
endif
if(QP==6)then
return 'FDgl'
endif
if(QP==7)then
return 'FDrh'
endif
if(QP==8)then
return 'FDrl'
endif
if(QP==9)then
return 'FDwh'
endif
if(QP==10)then
return 'FDwl'
endif
if(QP==11)then
return 'RLhr'
endif
if(QP==12)then
return 'RLlr'
endif
if(QP==13)then
return 'SNbs'
endif
if(QP==14)then
return 'SNhs'
endif
if(QP==15)then
return 'SNls'
endif
if(QP==16)then
return 'WOcw'
endif
if(QP==17)then
return 'WOlw'
endif
if(QP==18)then
return 'LRaa'
endif
if(QP==19)then
return 'LRma'
endif
if(QP==20)then
return 'WNcw'
endif
return 0
endfunction
function sP takes integer QP,boolean hP returns nothing
set QP=QP-1
if(hP)then
if(Ox[QP]==false)then
if(qP(QP)==0)then
else
set Xx[QP]=AddWeatherEffect(ov,qP(QP))
call EnableWeatherEffect(Xx[QP],true)
set Ox[QP]=true
endif
endif
else
if(Xx[QP]==null)then
else
call EnableWeatherEffect(Xx[QP],false)
call RemoveWeatherEffect(Xx[QP])
set Ox[QP]=false
set Xx[QP]=null
endif
endif
endfunction
function SP takes nothing returns nothing
local integer gp=1
loop
exitwhen gp>21
call sP(gp,false)
set gp=gp+1
endloop
endfunction
function tP takes integer TP returns integer
if(TP==0)then
return 'LTlt'
endif
if(TP==1)then
return 'FTtw'
endif
if(TP==2)then
return 'WTtw'
endif
if(TP==3)then
return 'ATtr'
endif
if(TP==4)then
return 'ATtc'
endif
if(TP==5)then
return 'BTtw'
endif
if(TP==6)then
return 'KTtw'
endif
if(TP==7)then
return 'YTwt'
endif
if(TP==8)then
return 'YTct'
endif
if(TP==9)then
return 'YTft'
endif
if(TP==10)then
return 'YTst'
endif
if(TP==11)then
return 'JTct'
endif
if(TP==12)then
return 'JTtw'
endif
if(TP==13)then
return 'DTsh'
endif
if(TP==14)then
return 'CTtr'
endif
if(TP==15)then
return 'CTtc'
endif
if(TP==16)then
return 'ITtw'
endif
if(TP==17)then
return 'ITtw'
endif
if(TP==18)then
return 'NTtc'
endif
if(TP==19)then
return 'OTtw'
endif
if(TP==20)then
return 'ZTtw'
endif
if(TP==21)then
return 'GTsh'
endif
if(TP==22)then
return 'VTlt'
endif
if(TP==23)then
return 'VTlt'
endif
return 0
endfunction
function uP takes nothing returns integer
return tP(GetRandomInt(0,23))
endfunction
function UP takes unit Jp,integer wP,integer TP,integer WP returns nothing
local real yP
local real YP
local real gp=0
local boolean zP=true
set yP=GetUnitX(Jp)
set YP=GetUnitY(Jp)
if(wP==1)then
loop
exitwhen gp==WP
if(zP)then
call CreateDestructable(TP,yP,YP+gp*40,GetRandomReal(0,360),1,0)
else
call CreateDestructable(TP,yP,YP-gp*40,GetRandomReal(0,360),1,0)
endif
set zP=not(zP)
set gp=gp+1
endloop
endif
if(wP==2)then
loop
exitwhen gp==WP
if(zP)then
call CreateDestructable(TP,yP+gp*40,YP,GetRandomReal(0,360),1,0)
else
call CreateDestructable(TP,yP-gp*40,YP,GetRandomReal(0,360),1,0)
endif
set zP=not(zP)
set gp=gp+1
endloop
endif
if(wP==3)then
loop
exitwhen gp==WP
if(zP)then
call CreateDestructable(TP,yP+gp*40,YP+gp*40,GetRandomReal(0,360),1,0)
else
call CreateDestructable(TP,yP-gp*40,YP-gp*40,GetRandomReal(0,360),1,0)
endif
set zP=not(zP)
set gp=gp+1
endloop
endif
if(wP==4)then
loop
exitwhen gp==WP
if(zP)then
call CreateDestructable(TP,yP+gp*40,YP-gp*40,GetRandomReal(0,360),1,0)
else
call CreateDestructable(TP,yP-gp*40,YP+gp*40,GetRandomReal(0,360),1,0)
endif
set zP=not(zP)
set gp=gp+1
endloop
endif
endfunction
function ZP takes integer gp returns nothing
set vv[gp]=true
call StartTimerBJ(Bv[gp],false,2.)
endfunction
function vq takes integer gp,boolean eq returns nothing
local integer cp
local integer xP
local item oP
local location lp
local unit Jp
set Jp=ev[gp]
set xP=1
loop
exitwhen xP>6
if(eq)then
set lp=GetUnitLoc(te[gp])
else
set lp=GetUnitLoc(Jp)
endif
set oP=UnitItemInSlotBJ(Jp,xP)
if(GetItemCharges(oP)>0)then
set cp=GetItemCharges(oP)
set oP=CreateItemLoc(GetItemTypeId(oP),lp)
call SetItemCharges(oP,cp)
else
call CreateItemLoc(GetItemTypeId(oP),lp)
endif
call RemoveLocation(lp)
set xP=xP+1
endloop
set Jp=null
set lp=null
set oP=null
endfunction
function xq takes integer gp,player Fp returns nothing
local integer cp
local force oq
local player Bp
if(cv[gp])then
call DestroyFogModifier(z[gp])
set cv[gp]=false
else
set oq=CreateForce()
set cp=0
loop
exitwhen cp>11
set Bp=Player(cp)
if(GetPlayerAlliance(Fp,Bp,ALLIANCE_SHARED_VISION))then
call ForceAddPlayer(oq,Bp)
call SetPlayerAlliance(Fp,Bp,ALLIANCE_SHARED_VISION,false)
endif
set cp=cp+1
endloop
set z[gp]=CreateFogModifierRect(Fp,FOG_OF_WAR_VISIBLE,ov,false,false)
call FogModifierStart(z[gp])
set cv[gp]=true
set cp=0
loop
exitwhen cp>11
set Bp=Player(cp)
if(IsPlayerInForce(Bp,oq))then
call SetPlayerAlliance(Fp,Bp,ALLIANCE_SHARED_VISION,true)
endif
set cp=cp+1
endloop
call DestroyForce(oq)
set oq=null
set Bp=null
endif
endfunction
function rq takes integer gp,player Fp returns nothing
local integer cp
local unit Jp
local item oP
local item array iq
set Jp=FirstOfGroup(Iv[gp])
if((Fp==GetOwningPlayer(Jp))and(UnitInventorySizeBJ(Jp)>0))then
set cp=1
loop
exitwhen cp>6
set oP=UnitItemInSlotBJ(Jp,cp)
set iq[(cp-1)]=oP
call UnitRemoveItemSwapped(oP,Jp)
call SetItemVisible(oP,false)
set cp=cp+1
endloop
set cp=1
loop
exitwhen cp>6
set oP=Kv[(gp*18)+(Lv[gp]*6)+(cp-1)]
call UnitAddItem(Jp,oP)
set Kv[(gp*18)+(Lv[gp]*6)+(cp-1)]=iq[(cp-1)]
set iq[(cp-1)]=null
set cp=cp+1
endloop
if(Lv[gp]==0)then
set Lv[gp]=Te-1
else
set Lv[gp]=(Lv[gp]-1)
endif
set oP=null
endif
set Jp=null
set Fp=null
endfunction
function aq takes unit Jp returns nothing
local integer cp
local item oP
set cp=1
loop
exitwhen cp>6
set oP=UnitItemInSlotBJ(Jp,cp)
call UnitRemoveItemSwapped(oP,Jp)
set cp=cp+1
endloop
set oP=null
endfunction
function nq takes integer gp returns nothing
local integer cp
local item oP
local location lp
set lp=GetUnitLoc(te[gp])
set cp=1
loop
exitwhen cp>6
set oP=UnitItemInSlotBJ(ev[gp],cp)
call UnitRemoveItemSwapped(oP,ev[gp])
call SetItemPositionLoc(oP,lp)
set cp=cp+1
endloop
call RemoveLocation(lp)
set oP=null
set lp=null
endfunction
function Vq takes integer gp returns nothing
local integer xP
local integer zP
local unit Jp
local item Sp
local item Eq
set Jp=FirstOfGroup(Iv[gp])
set xP=1
loop
exitwhen xP>5
set Sp=UnitItemInSlotBJ(Jp,xP)
if(GetItemCharges(Sp)>0)then
set zP=xP+1
loop
exitwhen zP>6
set Eq=UnitItemInSlotBJ(Jp,zP)
if(GetItemTypeId(Sp)==GetItemTypeId(Eq))then
call SetItemCharges(Sp,(GetItemCharges(Sp)+GetItemCharges(Eq)))
call RemoveItem(Eq)
endif
set zP=zP+1
endloop
endif
set xP=xP+1
endloop
set Sp=null
set Eq=null
set Jp=null
endfunction
function Xq takes integer gp,integer cp returns nothing
local unit Jp
local item oP
set Jp=FirstOfGroup(Iv[gp])
set oP=UnitItemInSlotBJ(Jp,1)
call SetItemCharges(oP,(GetItemCharges(oP)+cp))
set oP=null
set Jp=null
endfunction
function hke_ZZ8Z takes nothing returns nothing
local unit Jp
set Jp=GetEnumUnit()
call GroupAddUnit(Gv,Jp)
set Jp=null
endfunction
function hke_ZZ9Z takes nothing returns nothing
local unit Jp
set Jp=GetEnumUnit()
call GroupRemoveUnit(Gv,Jp)
set Jp=null
endfunction
function Oq takes nothing returns nothing
local unit Jp=GetTriggerUnit()
if((IsUnitDeadBJ(Jp))and(IsUnitType(Jp,UNIT_TYPE_HERO)))then
call GroupRemoveUnit(Gv,Jp)
endif
endfunction
function Rq takes nothing returns nothing
local unit Jp
set Jp=GetEnumUnit()
call ReviveHeroLoc(Jp,Av[jv],true)
call SetUnitManaPercentBJ(Jp,100)
set Jp=null
endfunction
function Iq takes player Fp returns nothing
local group Zp
set Zp=Ep(Fp)
set jv=GetPlayerId(Fp)
call ForGroup(Zp,function Rq)
call DestroyGroup(Zp)
set Zp=null
endfunction
function Aq takes nothing returns nothing
local unit Jp=GetEnumUnit()
call ModifyHeroStat(Ue,Jp,We,ue)
set Jp=null
endfunction
function Nq takes integer gp,integer bq,integer Bq,boolean Gp returns nothing
local integer cq
if(Gp)then
set cq=0
else
set cq=1
endif
if(m)then
set We=cq
set Ue=bq
set ue=Bq
call ForGroup(Iv[gp],function Aq)
else
call ModifyHeroStat(bq,ev[gp],cq,Bq)
endif
endfunction
function Cq takes unit Jp,integer Bq,boolean Gp returns nothing
local integer gp
set gp=GetHeroLevel(Jp)
if(Gp)then
set gp=gp+Bq
else
set gp=gp-Bq
endif
call SetHeroLevelBJ(Jp,gp,false)
endfunction
function dq takes nothing returns nothing
local unit Jp=GetEnumUnit()
call Cq(Jp,ye,kv)
set Jp=null
endfunction
function Dq takes integer gp,integer Bq,boolean Gp returns nothing
if(m)then
set ye=Bq
set kv=Gp
call ForGroup(Iv[gp],function dq)
else
call Cq(ev[gp],Bq,Gp)
endif
endfunction
function fq takes string Fq returns integer
local string gq="0123456789"
local string Gq="ABCDEFGHIJKLMNOPQRSTUVWXYZ"
local string hq="abcdefghijklmnopqrstuvwxyz"
local integer Id=0
local integer Hq=1
local integer jq=1
loop
exitwhen Hq>StringLength(Fq)
loop
exitwhen jq>10
if SubString(Fq,Hq-1,Hq)==SubString(gq,jq-1,jq)then
set Id=Id+R2I((48+jq-1)*Pow(256.,I2R(StringLength(Fq)-Hq)))
set jq=jq+1
else
set jq=jq+1
endif
endloop
set jq=1
loop
exitwhen jq>26
if SubString(Fq,Hq-1,Hq)==SubString(Gq,jq-1,jq)then
set Id=Id+R2I(I2R(65+jq-1)*Pow(256.,I2R(StringLength(Fq)-Hq)))
set jq=jq+1
else
set jq=jq+1
endif
endloop
set jq=1
loop
exitwhen jq>26
if SubString(Fq,Hq-1,Hq)==SubString(hq,jq-1,jq)then
set Id=Id+R2I((97+jq-1)*Pow(256.,I2R(StringLength(Fq)-Hq)))
set jq=jq+1
else
set jq=jq+1
endif
endloop
set jq=1
set Hq=Hq+1
endloop
return Id
endfunction
function Jq takes integer kq returns string
local string gq="0123456789"
local string Gq="ABCDEFGHIJKLMNOPQRSTUVWXYZ"
local string hq="abcdefghijklmnopqrstuvwxyz"
local string Kq=""
local integer Hq=0
local integer lq=0
loop
exitwhen kq==0
set Hq=ModuloInteger(kq,256)
if Hq>=48 and Hq<=57 then
set lq=Hq-48
set Kq=SubString(gq,lq,lq+1)+Kq
endif
if Hq>=65 and Hq<=90 then
set lq=Hq-65
set Kq=SubString(Gq,lq,lq+1)+Kq
endif
if Hq>=97 and Hq<=122 then
set lq=Hq-97
set Kq=SubString(hq,lq,lq+1)+Kq
endif
set kq=kq/256
endloop
return Kq
endfunction
function Lq takes unit Jp returns string
local integer gp
set gp=GetUnitTypeId(Jp)
if(gp==0)then
return""
else
return Jq(gp)
endif
endfunction
function mq takes unit Jp returns string
local item oP=UnitItemInSlotBJ(Jp,1)
local integer gp=GetItemTypeId(oP)
if(gp==0)then
return""
else
set oP=null
return Jq(gp)
endif
endfunction
function Mq takes integer pq returns integer
local string Pq=GetEventPlayerChatString()
if(StringLength(Pq)==pq+3)then
return(fq(SubStringBJ(Pq,pq,pq+3)))
else
return 0
endif
endfunction
function qq takes unit Jp,integer eP,boolean Gp returns nothing
local location lp
local integer gp
set gp=Mq(eP)
if(gp==0)then
else
if(Gp)then
set lp=GetUnitLoc(Jp)
call CreateItemLoc(gp,lp)
call RemoveLocation(lp)
set lp=null
else
call UnitAddItemById(Jp,gp)
endif
endif
endfunction
function Qq takes unit Jp,real sq,boolean Gp returns nothing
local location lp=GetUnitLoc(Jp)
local player Fp=GetOwningPlayer(Jp)
call SetBlightRadiusLocBJ(Gp,Fp,lp,sq)
call RemoveLocation(lp)
set lp=null
set Fp=null
endfunction
function Sq takes unit Jp,real sq returns nothing
call SetUnitFlyHeight(Jp,sq,.0)
endfunction
function tq takes nothing returns integer
local integer Tq=0
local integer uq=0
local integer array Uq
local integer gp=0
local player Fp=GetLocalPlayer()
loop
exitwhen gp>11
set Uq[gp]=0
set gp=gp+1
endloop
loop
exitwhen Tq>14
call StoreInteger(Mx,"Hke_Player","Hke_number",GetPlayerId(Fp)+1)
call TriggerSyncStart()
call SyncStoredInteger(Mx,"Hke_Player","Hke_number")
call TriggerSyncReady()
set uq=GetStoredInteger(Mx,"Hke_Player","Hke_number")-1
set Uq[uq]=Uq[uq]+1
call FlushStoredMission(Mx,"Hke_Player")
set Tq=Tq+1
endloop
set uq=0
set Tq=0
set Fp=null
loop
exitwhen Tq>11
if Uq[uq]<Uq[Tq]then
set uq=Tq
endif
set Tq=Tq+1
endloop
return uq+1
endfunction
function wq takes unit Jp,integer Wq,boolean Gp returns nothing
if(Gp)then
call UnitAddAbility(Jp,Wq)
call SetUnitAbilityLevel(Jp,Wq,100)
call UnitMakeAbilityPermanent(Jp,true,Wq)
else
call UnitMakeAbilityPermanent(Jp,false,Wq)
call UnitRemoveAbility(Jp,Wq)
endif
endfunction
function yq takes nothing returns nothing
local unit Jp=GetEnumUnit()
call wq(Jp,sv,Sv)
set Jp=null
endfunction
function Yq takes integer gp,integer Wq,boolean Gp returns nothing
if(m)then
set sv=Wq
set Sv=Gp
call ForGroup(Iv[gp],function yq)
else
call wq(ev[gp],Wq,Gp)
endif
endfunction
function zq takes string Pq returns integer
if(Pq=="mm")then
return 'ACm3'
endif
if(Pq=="xj")then
return 'ANpi'
endif
if(Pq=="zj")then
return 'AHbh'
endif
if(Pq=="zm")then
return 'AOcr'
endif
if(Pq=="ft")then
return 'AUts'
endif
if(Pq=="xx")then
return 'AIva'
endif
if(Pq=="sb")then
return 'AEev'
endif
if(Pq=="yx")then
return 'Apiv'
endif
if(Pq=="rh")then
return 'ANic'
endif
if(Pq=="fl")then
return 'ANca'
endif
if(Pq=="bs")then
return 'ACes'
endif
if(Pq=="jg")then
return 'AItx'
endif
if(Pq=="jf")then
return 'AId0'
endif
if(Pq=="js")then
return 'AIsx'
endif
if(Pq=="jm")then
return 'AIsr'
endif
if(Pq=="jj")then
return 'ARal'
endif
if(Pq=="fy")then
return 'Atru'
endif
if(Pq=="ghh")then
return 'AHab'
endif
if(Pq=="ghj")then
return 'AOae'
endif
if(Pq=="gqj")then
return 'AEar'
endif
if(Pq=="gxx")then
return 'AUav'
endif
if(Pq=="gzz")then
return 'AHad'
endif
if(Pq=="gxe")then
return 'AUau'
endif
if(Pq=="gjj")then
return 'AEah'
endif
if(Pq=="gml")then
return 'ACac'
endif
if(Pq=="gyl")then
return 'Aoar'
endif
if(Pq=="gjs")then
return 'Aasl'
endif
if(Pq=="qhy")then
return 'AIfb'
endif
if(Pq=="qdy")then
return 'AIpb'
endif
if(Pq=="qlh")then
return 'AIso'
endif
if(Pq=="qyz")then
return 'AIdn'
endif
if(Pq=="qbd")then
return 'AIob'
endif
if(Pq=="qfs")then
return 'AIcb'
endif
if(Pq=="qsd")then
return 'AIll'
endif
if(Pq=="qjs")then
return 'AIsb'
endif
if(Pq=="qha")then
return 'AIdf'
endif
return 0
endfunction
function Zq takes nothing returns nothing
local unit Jp=GetEnumUnit()
call SetUnitInvulnerable(Jp,Sv)
call wq(Jp,'Avul',Sv)
set Jp=null
endfunction
function vQ takes integer gp,boolean Gp returns nothing
if(m)then
set Sv=Gp
call ForGroup(Iv[gp],function Zq)
else
call SetUnitInvulnerable(ev[gp],Gp)
call wq(ev[gp],'Avul',Gp)
endif
endfunction
function eQ takes nothing returns nothing
local unit Jp=GetEnumUnit()
call SetUnitPathing(Jp,not(Sv))
set Jp=null
endfunction
function xQ takes integer gp,boolean Gp returns nothing
if(m)then
set Sv=Gp
call ForGroup(Iv[gp],function eQ)
else
call SetUnitPathing(ev[gp],not(Gp))
endif
endfunction
function oQ takes unit Jp,boolean Gp returns nothing
if(Gp)then
call SetUnitMoveSpeed(Jp,1000)
else
call SetUnitMoveSpeed(Jp,GetUnitDefaultMoveSpeed(Jp))
endif
endfunction
function rQ takes nothing returns nothing
local unit Jp=GetEnumUnit()
call oQ(Jp,Sv)
set Jp=null
endfunction
function iQ takes integer gp,boolean Gp returns nothing
if(m)then
set Sv=Gp
call ForGroup(Iv[gp],function rQ)
else
call oQ(ev[gp],Gp)
endif
endfunction
function aQ takes integer gp,boolean Gp returns nothing
call ForGroup(Gv,function Oq)
if(m)then
if(Gp)then
if(CountUnitsInGroup(Gv)==0)then
call EnableTrigger(tx)
endif
call GroupAddGroup(Iv[gp],Gv)
else
call GroupRemoveGroup(Iv[gp],Gv)
if(CountUnitsInGroup(Gv)==0)then
call DisableTrigger(tx)
endif
endif
else
if(Gp)then
if(CountUnitsInGroup(Gv)==0)then
call EnableTrigger(tx)
endif
call GroupAddUnit(Gv,ev[gp])
else
call GroupRemoveUnit(Gv,ev[gp])
if(CountUnitsInGroup(Gv)==0)then
call DisableTrigger(tx)
endif
endif
endif
endfunction
function nQ takes unit Jp,boolean Gp returns nothing
call wq(Jp,'AHab',Gp)
call wq(Jp,'AOae',Gp)
call wq(Jp,'AEar',Gp)
call wq(Jp,'AUav',Gp)
call wq(Jp,'AHad',Gp)
call wq(Jp,'AUau',Gp)
call wq(Jp,'ACac',Gp)
call wq(Jp,'AEah',Gp)
call wq(Jp,'Aoar',Gp)
call wq(Jp,'Aasl',Gp)
endfunction
function VQ takes nothing returns nothing
local unit Jp=GetEnumUnit()
call nQ(Jp,Sv)
set Jp=null
endfunction
function EQ takes integer gp,boolean Gp returns nothing
if(m)then
set Sv=Gp
call ForGroup(Iv[gp],function VQ)
else
call nQ(ev[gp],Gp)
endif
endfunction
function XQ takes unit Jp returns nothing
call wq(Jp,'ACm3',false)
call wq(Jp,'ANpi',false)
call wq(Jp,'AHbh',false)
call wq(Jp,'AOcr',false)
call wq(Jp,'AUts',false)
call wq(Jp,'AIva',false)
call wq(Jp,'AEev',false)
call wq(Jp,'Apiv',false)
call wq(Jp,'ANic',false)
call wq(Jp,'ANca',false)
call wq(Jp,'Avul',false)
call wq(Jp,'ACes',false)
call wq(Jp,'AItx',false)
call wq(Jp,'AId0',false)
call wq(Jp,'AIsx',false)
call wq(Jp,'AIsr',false)
call wq(Jp,'Atru',false)
call SetUnitInvulnerable(Jp,false)
call SetUnitPathing(Jp,true)
call oQ(Jp,false)
call GroupRemoveUnit(Gv,Jp)
endfunction
function OQ takes nothing returns nothing
local unit Jp=GetEnumUnit()
call XQ(Jp)
set Jp=null
endfunction
function RQ takes integer gp returns nothing
if(m)then
call ForGroup(Iv[gp],function OQ)
else
call XQ(ev[gp])
endif
endfunction
function IQ takes nothing returns nothing
local unit Jp=GetTriggerUnit()
local trigger Sp=GetTriggeringTrigger()
call RemoveUnit(Jp)
call DisableTrigger(Sp)
call DestroyTrigger(Sp)
set Jp=null
set Sp=null
endfunction
function AQ takes integer eP,unit NQ,player bQ returns nothing
local location lp
local unit Jp
local integer BQ=0
local integer cQ=0
local trigger Sp
if(eP==0)then
set BQ='AOvd'
set cQ=852503
endif
if(eP==1)then
set BQ='AEtq'
set cQ=852184
endif
if(eP==2)then
set BQ='AEsf'
set cQ=852183
endif
if((BQ==0)and(cQ==0))then
return
endif
set lp=GetUnitLoc(NQ)
set Jp=CreateUnitAtLoc(bQ,'nbal',lp,bj_UNIT_FACING)
call UnitAddAbility(Jp,'Avul')
call UnitAddAbility(Jp,BQ)
call ShowUnit(Jp,false)
call SetUnitUseFood(Jp,false)
call SetUnitScale(Jp,.01,.01,.01)
call SetUnitState(Jp,UNIT_STATE_MANA,GetUnitState(Jp,UNIT_STATE_MAX_MANA))
call IssueImmediateOrderById(Jp,cQ)
set Sp=CreateTrigger()
call TriggerRegisterUnitEvent(Sp,Jp,EVENT_UNIT_SPELL_ENDCAST)
call TriggerRegisterUnitEvent(Sp,Jp,EVENT_UNIT_SPELL_FINISH)
call TriggerAddAction(Sp,function IQ)
call RemoveLocation(lp)
set lp=null
set Sp=null
set Jp=null
endfunction
function CQ takes unit NQ returns nothing
local player Fp=GetTriggerPlayer()
local location lp=GetUnitLoc(NQ)
local trigger Sp=CreateTrigger()
local unit Jp=CreateUnitAtLoc(Fp,'hfoo',lp,bj_UNIT_FACING)
call UnitAddAbility(Jp,'Avul')
call UnitAddAbility(Jp,'AIse')
call ShowUnit(Jp,false)
call SetUnitUseFood(Jp,false)
call SetUnitScale(Jp,.01,.01,.01)
call IssuePointOrderByIdLoc(Jp,852592,lp)
call TriggerRegisterUnitEvent(Sp,Jp,EVENT_UNIT_SPELL_ENDCAST)
call TriggerRegisterUnitEvent(Sp,Jp,EVENT_UNIT_SPELL_FINISH)
call TriggerAddAction(Sp,function IQ)
call RemoveLocation(lp)
set lp=null
set Sp=null
set Fp=null
endfunction
function dQ takes integer gp,dialog DQ,trigger Up returns nothing
set fx[gp]=DQ
set Fx[gp]=Up
endfunction
function fQ takes integer gp,string FQ returns nothing
call DialogClear(fx[gp])
call DialogSetMessage(fx[gp],(FQ+Jv+rx))
endfunction
function gQ takes integer gp,player Fp,boolean hP returns nothing
if(hP)then
call EnableTrigger(Fx[gp])
call DialogDisplay(Fp,fx[gp],true)
call TimerStart(kx[gp],Q,false,null)
else
call DisableTrigger(Fx[gp])
call DialogDisplay(Fp,fx[gp],false)
endif
endfunction
function GQ takes integer gp,player Fp returns nothing
call dQ(gp,Me[gp],Fe[gp])
call fQ(gp,"主")
set Tv[gp]=DialogAddButton(fx[gp],"资æºèœå•[A]",65)
set Uv[gp]=DialogAddButton(fx[gp],"自动化设置[B]",66)
set wv[gp]=DialogAddButton(fx[gp],"选定å•ä½ç‰¹æ®Šå±žæ€§[C]",67)
set uv[gp]=DialogAddButton(fx[gp],"个人选项设置[D]",68)
set zv[gp]=DialogAddButton(fx[gp],"帮助èœå•[E]",69)
if(Fp==Y)then
set Yv[gp]=DialogAddButton(fx[gp],"其他玩家作弊管ç†[F]",70)
set yv[gp]=DialogAddButton(fx[gp],"其他玩家管ç†[G]",71)
set Wv[gp]=DialogAddButton(fx[gp],"游æˆä½œå¼Šé€‰é¡¹[H]",72)
if(px)then
set ve[gp]=DialogAddButton(fx[gp],"å…³é—录åƒ(æ— æ³•å†å¼€)[L]",72)
endif
endif
set xe[gp]=DialogAddButton(fx[gp],"退出èœå•[X]",88)
call gQ(gp,Fp,true)
endfunction
function hQ takes integer gp,player Fp returns nothing
local string Pq
call dQ(gp,oe[gp],ge[gp])
call fQ(gp,"自动化设置")
if(IsTriggerEnabled(Be[gp]))then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set Tv[gp]=DialogAddButton(fx[gp],(Pq+"è‡ªåŠ¨åŠ é’±[A]"),65)
if(IsTriggerEnabled(ce[gp]))then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set Uv[gp]=DialogAddButton(fx[gp],(Pq+"è‡ªåŠ¨åŠ æœ¨å¤´[B]"),66)
if(IsTriggerEnabled(Ce[gp]))then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set wv[gp]=DialogAddButton(fx[gp],(Pq+"自动清人å£[C]"),67)
if(IsTriggerEnabled(De[gp]))then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set uv[gp]=DialogAddButton(fx[gp],(Pq+"自动清CD[D]"),68)
if(IsTriggerEnabled(de[gp]))then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set zv[gp]=DialogAddButton(fx[gp],(Pq+"è‹±é›„æ— é™é‡ç”Ÿ[E]"),69)
if(IsTriggerEnabled(fe[gp]))then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set Yv[gp]=DialogAddButton(fx[gp],(Pq+"é”法释放åŽè‡ªåŠ¨MP"+I2S(R2I(rv))+"%[F]"),70)
if(IsTriggerEnabled(Dx[gp]))then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set yv[gp]=DialogAddButton(fx[gp],(Pq+"生命低于"+I2S(R2I(Cx))+"%åŠ åˆ°"+I2S(R2I(Se))+"%[G]"),71)
set Wv[gp]=DialogAddButton(fx[gp],"全部开å¯[O]",79)
set ve[gp]=DialogAddButton(fx[gp],"全部关é—[U]",85)
set Zv[gp]=DialogAddButton(fx[gp],"回主èœå•[R]",82)
set ee[gp]=DialogAddButton(fx[gp],"退出èœå•[X]",88)
call gQ(gp,Fp,true)
set Pq=""
endfunction
function HQ takes integer gp,player Fp returns nothing
call dQ(gp,oe[gp],Ge[gp])
call fQ(gp,"选定å•ä½ç‰¹æ®Šå±žæ€§")
set Tv[gp]=DialogAddButton(fx[gp],"æ— æ•Œ[A]",65)
set Uv[gp]=DialogAddButton(fx[gp],"永久éšå½¢[B]",66)
set wv[gp]=DialogAddButton(fx[gp],"穿越物体[C]",67)
set uv[gp]=DialogAddButton(fx[gp],"é”å…[D]",68)
set zv[gp]=DialogAddButton(fx[gp],"åéšå½¢[E]",69)
set Yv[gp]=DialogAddButton(fx[gp],"移动速度[F]",70)
set yv[gp]=DialogAddButton(fx[gp],"å„ç§å…‰çŽ¯[G]",71)
set Wv[gp]=DialogAddButton(fx[gp],"æ¢é¡µ[N]",78)
if((hv)or(Y==Fp))then
set ve[gp]=DialogAddButton(fx[gp],"秒æ€æ¨¡å¼[K]",75)
endif
set Zv[gp]=DialogAddButton(fx[gp],"å–消全部(ä¸å«å…‰çŽ¯)[U]",85)
set ee[gp]=DialogAddButton(fx[gp],"回主èœå•[R]",82)
set xe[gp]=DialogAddButton(fx[gp],"退出èœå•[X]",88)
call gQ(gp,Fp,true)
endfunction
function jQ takes integer gp,player Fp returns nothing
call dQ(gp,me[gp],Le[gp])
call fQ(gp,"选定å•ä½ç‰¹æ®Šå±žæ€§")
set Tv[gp]=DialogAddButton(fx[gp],"永久献ç¥[A]",65)
set Uv[gp]=DialogAddButton(fx[gp],"é—ªé¿[B]",514)
set wv[gp]=DialogAddButton(fx[gp],"é‡å‡»[C]",67)
set uv[gp]=DialogAddButton(fx[gp],"致命一击[D]",68)
set zv[gp]=DialogAddButton(fx[gp],"åå¼¹(å°å¼ºçš„壳)[E]",69)
set Yv[gp]=DialogAddButton(fx[gp],"分裂攻击[F]",70)
set yv[gp]=DialogAddButton(fx[gp],"燃ç°[G]",71)
set Wv[gp]=DialogAddButton(fx[gp],"å‡å°‘é”法伤害33%[H]",72)
set ve[gp]=DialogAddButton(fx[gp],"é—ªé¿100%[I]",73)
set Zv[gp]=DialogAddButton(fx[gp],"æ¢é¡µ[N]",78)
set ee[gp]=DialogAddButton(fx[gp],"回主èœå•[R]",82)
set xe[gp]=DialogAddButton(fx[gp],"退出èœå•[X]",88)
call gQ(gp,Fp,true)
endfunction
function JQ takes integer gp,player Fp returns nothing
call dQ(gp,me[gp],He[gp])
call fQ(gp,"光环")
set Tv[gp]=DialogAddButton(fx[gp],"辉煌光环[A]",65)
set Uv[gp]=DialogAddButton(fx[gp],"è†æ£˜å…‰çŽ¯[B]",66)
set wv[gp]=DialogAddButton(fx[gp],"è€ä¹…光环[C]",67)
set uv[gp]=DialogAddButton(fx[gp],"强击光环[D]",68)
set zv[gp]=DialogAddButton(fx[gp],"邪æ¶å…‰çŽ¯[E]",69)
set Yv[gp]=DialogAddButton(fx[gp],"å¸è¡€å…‰çŽ¯[F]",70)
set yv[gp]=DialogAddButton(fx[gp],"专注光环[G]",71)
set Wv[gp]=DialogAddButton(fx[gp],"命令光环(战鼓)[H]",72)
set ve[gp]=DialogAddButton(fx[gp],"医疗光环[I]",73)
set Zv[gp]=DialogAddButton(fx[gp],"å‡é€Ÿå…‰çŽ¯[J]",74)
set ee[gp]=DialogAddButton(fx[gp],"关所有光环[K]",75)
set xe[gp]=DialogAddButton(fx[gp],"退出èœå•[X]",88)
call gQ(gp,Fp,true)
endfunction
function kQ takes integer gp,player Fp returns nothing
local integer cp=0
local string Pq
local string KQ
local player Bp
call dQ(gp,oe[gp],ke[gp])
call fQ(gp,"玩家作弊管ç†")
loop
exitwhen cp>11
set Bp=Player(cp)
if((GetPlayerController(Bp)==MAP_CONTROL_USER)and(GetPlayerSlotState(Bp)==PLAYER_SLOT_STATE_PLAYING)and(Bp!=Y))then
set KQ=GetPlayerName(Bp)
if(Z[cp])then
set Pq="ç¦æ¢"
else
set Pq="å…许"
endif
set iv[cp]=DialogAddButton(fx[gp],(Pq+KQ+"作弊"),0)
endif
set cp=cp+1
endloop
set Tv[gp]=DialogAddButton(fx[gp],"回主èœå•[R]",82)
set Uv[gp]=DialogAddButton(fx[gp],"退出èœå•[X]",88)
call gQ(gp,Fp,true)
set Bp=null
set Pq=""
set KQ=""
endfunction
function lQ takes integer gp,player Fp returns nothing
set xv[gp]=0
call dQ(gp,Me[gp],le[gp])
call fQ(gp,"å•ä½")
set Tv[gp]=DialogAddButton(fx[gp],"å‡100级[A]",65)
set Uv[gp]=DialogAddButton(fx[gp],("åŠ ä¸‰å›´"+(I2S(T)+"[B]")),66)
set wv[gp]=DialogAddButton(fx[gp],"å¤åˆ¶ç‰©å“[C]",67)
set uv[gp]=DialogAddButton(fx[gp],"å¤åˆ¶å•ä½[D]",68)
set zv[gp]=DialogAddButton(fx[gp],"掉身上物å“[E]",69)
set Yv[gp]=DialogAddButton(fx[gp],"共享该å•ä½è§†é‡Ž[F]",70)
set yv[gp]=DialogAddButton(fx[gp],"特殊属性èœå•[G]",71)
if((gv)or(Y==Fp))then
set Wv[gp]=DialogAddButton(fx[gp],"控制它[H]",72)
endif
if(Y==Fp)then
endif
if(Fp==Y)then
set Zv[gp]=DialogAddButton(fx[gp],"改å˜å•ä½æ‰€æœ‰è€…[J]",74)
endif
set ee[gp]=DialogAddButton(fx[gp],"退出èœå•[X]",88)
call gQ(gp,Fp,true)
endfunction
function LQ takes integer gp,player Fp returns nothing
local string Pq
call dQ(gp,oe[gp],je[gp])
call fQ(gp,"游æˆä½œå¼Šé€‰é¡¹")
if(m)then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set Tv[gp]=DialogAddButton(fx[gp],(Pq+"æ“作所有å•ä½[A]"),65)
set Uv[gp]=DialogAddButton(fx[gp],("设置背包数[B]"),66)
if(Xv)then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set wv[gp]=DialogAddButton(fx[gp],(Pq+"ä¿æŠ¤CheatMaster[C]"),67)
if(Ov)then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set uv[gp]=DialogAddButton(fx[gp],(Pq+"çž¬é—´é€ å…µä¸å 用人å£[D]"),68)
if(Rv)then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set zv[gp]=DialogAddButton(fx[gp],("å–消作弊时"+Pq+"地图全开[E]"),69)
if(hv)then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set Yv[gp]=DialogAddButton(fx[gp],(Pq+"他人秒æ€æ¨¡å¼[F]"),70)
if(Hv)then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set yv[gp]=DialogAddButton(fx[gp],(Pq+"ç¦æ¢ç§’æ€å»ºç‘[G]"),71)
if(gv)then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set Wv[gp]=DialogAddButton(fx[gp],(Pq+"他人å æ®å•ä½[H]"),72)
if(ox)then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set ve[gp]=DialogAddButton(fx[gp],(Pq+"ç¦æ¢å…‹éš†æ“作农民[I]"),73)
set Zv[gp]=DialogAddButton(fx[gp],"回主èœå•[R]",82)
set ee[gp]=DialogAddButton(fx[gp],"退出èœå•[X]",88)
call gQ(gp,Fp,true)
set Pq=""
endfunction
function mQ takes integer gp,player Fp returns nothing
local string KQ
local integer cp=0
local player Bp
call dQ(gp,oe[gp],Je[gp])
call fQ(gp,"玩家管ç†")
loop
exitwhen cp>11
set Bp=Player(cp)
if(GetPlayerSlotState(Bp)==PLAYER_SLOT_STATE_PLAYING)then
set KQ=GetPlayerName(Bp)
set iv[cp]=DialogAddButton(fx[gp],("选择"+KQ+"æ“作"),0)
endif
set cp=cp+1
endloop
set iv[12]=DialogAddButton(fx[gp],("选择ä¸ç«‹ç”Ÿç‰©æ“作"),90)
set Tv[gp]=DialogAddButton(fx[gp],"回主èœå•[R]",82)
set Uv[gp]=DialogAddButton(fx[gp],"退出èœå•[X]",88)
call gQ(gp,Fp,true)
set KQ=""
set Bp=null
endfunction
function MQ takes integer gp,player Fp returns nothing
local player Bp=Player(mv)
call dQ(gp,me[gp],Ke[gp])
call fQ(gp,"玩家管ç†")
set Tv[gp]=DialogAddButton(fx[gp],"资æºç®¡ç†[A]",65)
set Uv[gp]=DialogAddButton(fx[gp],"åŒç›Ÿç®¡ç†[B]",66)
if(GetPlayerTaxRate(Bp,Fp,PLAYER_STATE_RESOURCE_GOLD)==0)then
set wv[gp]=DialogAddButton(fx[gp],"å‘他收税黄金"+I2S(Rx)+"%[C]",67)
else
set wv[gp]=DialogAddButton(fx[gp],"åœæ¢å‘他收黄金[C]",67)
endif
if(GetPlayerTaxRate(Bp,Fp,PLAYER_STATE_RESOURCE_LUMBER)==0)then
set uv[gp]=DialogAddButton(fx[gp],"å‘他收税木æ"+I2S(Rx)+"%[D]",68)
else
set uv[gp]=DialogAddButton(fx[gp],"åœæ¢å‘他收木æ[D]",67)
endif
set ee[gp]=DialogAddButton(fx[gp],"回选择èœå•[R]",82)
set xe[gp]=DialogAddButton(fx[gp],"退出èœå•[X]",88)
call gQ(gp,Fp,true)
set Bp=null
endfunction
function pQ takes integer gp,player Fp returns nothing
local integer cp=0
local player Bp
local string Pq
local string KQ
call dQ(gp,me[gp],he[gp])
call fQ(gp,"选定å•ä½æŽ§åˆ¶")
loop
exitwhen cp>12
set Bp=Player(cp)
if(GetPlayerSlotState(Bp)==PLAYER_SLOT_STATE_PLAYING)then
set KQ=GetPlayerName(Bp)
set iv[cp]=DialogAddButton(fx[gp],("给"+KQ+"控制"),0)
endif
set cp=cp+1
endloop
set Tv[gp]=DialogAddButton(fx[gp],"回å•ä½èœå•[R]",82)
set Uv[gp]=DialogAddButton(fx[gp],"退出èœå•[X]",88)
call gQ(gp,Fp,true)
set Bp=null
set Pq=""
set KQ=""
endfunction
function PQ takes integer gp,player Fp returns nothing
local string Pq
call dQ(gp,oe[gp],Ye[gp])
call fQ(gp,"资æºè®¾ç½®")
if(cv[gp])then
set Pq="å…³é—"
else
set Pq="打开"
endif
set Tv[gp]=DialogAddButton(fx[gp],(Pq+"地图[A]"),65)
set Uv[gp]=DialogAddButton(fx[gp],("å¤æ´»æ»äº¡è‹±é›„[B]"),66)
set wv[gp]=DialogAddButton(fx[gp],"人å£æ¸…5[B]",66)
set uv[gp]=DialogAddButton(fx[gp],"总人å£100[C]",67)
if(GetPlayerHandicap(Fp)==2)then
set Pq="æ¢å¤ç”Ÿå‘½éšœç¢100%"
else
set Pq="200%生命"
endif
set zv[gp]=DialogAddButton(fx[gp],Pq+"[D]",68)
if(GetPlayerHandicapXP(Fp)==2)then
set Pq="æ¢å¤æ™®é€šç»éªŒçŽ‡"
else
set Pq="2å€ç»éªŒ"
endif
set Yv[gp]=DialogAddButton(fx[gp],Pq+"[E]",69)
set Pq=I2S(s)
set yv[gp]=DialogAddButton(fx[gp],("åŠ "+Pq+"é’±[F]"),70)
set Pq=I2S(S)
set Wv[gp]=DialogAddButton(fx[gp],("åŠ "+Pq+"木[G]"),71)
set Pq=I2S(s)
set ve[gp]=DialogAddButton(fx[gp],("å‡"+Pq+"é’±[H]"),72)
set Pq=I2S(S)
set Zv[gp]=DialogAddButton(fx[gp],("å‡"+Pq+"木[I]"),73)
set ee[gp]=DialogAddButton(fx[gp],"回主èœå•[R]",82)
set xe[gp]=DialogAddButton(fx[gp],"退出èœå•[X]",88)
call gQ(gp,Fp,true)
set Pq=""
endfunction
function qQ takes integer gp,player Fp returns nothing
local player Bp=Player(mv)
local string Pq
local string KQ=GetPlayerName(Bp)
call dQ(gp,oe[gp],ze[gp])
call DialogClear(oe[gp])
call DialogSetMessage(oe[gp],(KQ+"é’±"+I2S(GetPlayerState(Bp,PLAYER_STATE_RESOURCE_GOLD))+" |CFF008000木"+I2S(GetPlayerState(Bp,PLAYER_STATE_RESOURCE_LUMBER))+"|R 人å£"+I2S(GetPlayerState(Bp,PLAYER_STATE_RESOURCE_FOOD_USED))+"/"+I2S(GetPlayerState(Bp,PLAYER_STATE_RESOURCE_FOOD_CAP))))
if(cv[mv])then
set Pq="å…³é—"
else
set Pq="打开"
endif
set Tv[gp]=DialogAddButton(fx[gp],(Pq+"地图[A]"),65)
set Uv[gp]=DialogAddButton(fx[gp],("å¤æ´»æ»äº¡è‹±é›„[B]"),66)
set wv[gp]=DialogAddButton(fx[gp],"人å£æ¸…5[B]",66)
set uv[gp]=DialogAddButton(fx[gp],"总人å£100[C]",67)
if(GetPlayerHandicap(Bp)==2)then
set Pq="æ¢å¤ç”Ÿå‘½éšœç¢100%"
else
set Pq="200%生命"
endif
set zv[gp]=DialogAddButton(fx[gp],Pq+"[D]",68)
if(GetPlayerHandicapXP(Bp)==2)then
set Pq="æ¢å¤æ™®é€šç»éªŒçŽ‡"
else
set Pq="2å€ç»éªŒ"
endif
set Yv[gp]=DialogAddButton(fx[gp],Pq+"[E]",69)
set Pq=I2S(s)
set yv[gp]=DialogAddButton(fx[gp],("åŠ "+Pq+"é’±[F]"),70)
set Pq=I2S(S)
set Wv[gp]=DialogAddButton(fx[gp],("åŠ "+Pq+"木[G]"),71)
set Pq=I2S(s)
set ve[gp]=DialogAddButton(fx[gp],("å‡"+Pq+"é’±[H]"),72)
set Pq=I2S(S)
set Zv[gp]=DialogAddButton(fx[gp],("å‡"+Pq+"木[I]"),73)
set ee[gp]=DialogAddButton(fx[gp],"回主èœå•[R]",82)
set xe[gp]=DialogAddButton(fx[gp],"退出èœå•[X]",88)
call gQ(gp,Fp,true)
set Pq=""
set KQ=""
set Bp=null
endfunction
function QQ takes integer gp,player Fp returns nothing
local player Bp=Player(mv)
local string Pq
call dQ(gp,oe[gp],Ze[gp])
call fQ(gp,"åŒç›Ÿç®¡ç†")
if(IsPlayerAlly(Bp,Y))then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set Tv[gp]=DialogAddButton(fx[gp],("强制"+Pq+"åŒç›Ÿ[A]"),65)
if(IsPlayerAlly(Bp,Y))then
if(GetPlayerAlliance(Bp,Y,ALLIANCE_SHARED_ADVANCED_CONTROL))then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set Uv[gp]=DialogAddButton(fx[gp],("强制"+Pq+"åŒç›Ÿå…±äº«å•ä½[B]"),66)
if(GetPlayerAlliance(Bp,Y,ALLIANCE_SHARED_XP))then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set wv[gp]=DialogAddButton(fx[gp],("强制"+Pq+"åŒç›Ÿå…±äº«ç»éªŒ[C]"),67)
if(IsPlayerAlly(Y,Bp))then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set uv[gp]=DialogAddButton(fx[gp],("强制"+Pq+"对其åŒç›Ÿ[D]"),68)
endif
set zv[gp]=DialogAddButton(fx[gp],"回玩家èœå•[R]",82)
set Yv[gp]=DialogAddButton(fx[gp],"退出èœå•[X]",88)
call gQ(gp,Fp,true)
set Bp=null
set Pq=""
endfunction
function sQ takes integer gp,player Fp returns nothing
call dQ(gp,me[gp],vx[gp])
call DialogClear(me[gp])
call DialogSetMessage(me[gp],"设置é¢å¤–背包数èœå•|nN个é¢å¤–背包å¯ä»¥åˆ‡æ¢N+1次|n当å‰èƒŒåŒ…æ•°:|cFF33FF33"+I2S(Te)+"|r个")
set Tv[gp]=DialogAddButton(fx[gp],"设置1个背包[A]",65)
set Uv[gp]=DialogAddButton(fx[gp],"设置2个背包[B]",66)
set wv[gp]=DialogAddButton(fx[gp],"设置3个背包[C]",67)
set uv[gp]=DialogAddButton(fx[gp],"回选设置å•[R]",82)
set zv[gp]=DialogAddButton(fx[gp],"退出èœå•[X]",88)
call gQ(gp,Fp,true)
endfunction
function SQ takes integer gp,player Fp returns nothing
call dQ(gp,oe[gp],Gx[gp])
call fQ(gp,"帮助")
set Tv[gp]=DialogAddButton(fx[gp],"键盘帮助[A]",65)
set Uv[gp]=DialogAddButton(fx[gp],"CMD帮助[B]",66)
set wv[gp]=DialogAddButton(fx[gp],"CMDå•ä½ç±»å¸®åŠ©[C]",67)
set uv[gp]=DialogAddButton(fx[gp],"显示玩家信æ¯[D]",68)
if(Fp==Y)then
set zv[gp]=DialogAddButton(fx[gp],"显示设置信æ¯[E]",69)
endif
set ee[gp]=DialogAddButton(fx[gp],"回主èœå•[R]",82)
set xe[gp]=DialogAddButton(fx[gp],"退出èœå•[X]",88)
call gQ(gp,Fp,true)
endfunction
function tQ takes integer gp,player Fp returns nothing
local string Pq
call dQ(gp,oe[gp],gx[gp])
call fQ(gp,"个人选项")
set Tv[gp]=DialogAddButton(fx[gp],"åˆ é™¤æˆ‘çš„å¤åˆ¶å•ä½[A]",65)
if(se[gp])then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set Uv[gp]=DialogAddButton(fx[gp],Pq+"克隆æ“作[B]",66)
if(hx[gp])then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set wv[gp]=DialogAddButton(fx[gp],Pq+"组队克隆æ“作[C]",67)
if(jx[gp])then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set uv[gp]=DialogAddButton(fx[gp],Pq+"éšè—åŠ æ”»[D]",68)
if(Jx[gp])then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set zv[gp]=DialogAddButton(fx[gp],Pq+"éšè—åŠ æ”»å¸¦æº…å°„[E]",69)
if(Hx[gp])then
set Pq="å…³é—"
else
set Pq="å¼€å¯"
endif
set Yv[gp]=DialogAddButton(fx[gp],Pq+"远程沉默[F]",70)
set ee[gp]=DialogAddButton(fx[gp],"回主èœå•[R]",82)
set xe[gp]=DialogAddButton(fx[gp],"退出èœå•[X]",88)
call gQ(gp,Fp,true)
set Pq=""
endfunction
function TQ takes player Fp returns nothing
call DisplayTimedTextToPlayer(Fp,0,0,q,"欢迎使用|cFFFF8C00hke的作弊系列1.25b|r 如果需è¦|cFFE500AFCMD帮助|r请输入|cFFFF0033-c|r 详细说明è§|CFF00FF00www.wuhansen.com/warmap|r")
call DisplayTimedTextToPlayer(Fp,0,0,q,"|cFFFF0033Esc|r 选定å•ä½æ¸…除|cFFE500AFè´Ÿé¢é”法|r é‡ç½®|cFFE500AFCD时间|r 回|cFFE500AFè¡€é”|r (按照生命/é”法百分比分阶段回)")
call DisplayTimedTextToPlayer(Fp,0,0,q,"|cFFFF0033â†|r 选定å•ä½ 清除|cFFE500AFè´Ÿé¢é”法|r é‡ç½®|cFFE500AFCD时间|r 选定建ç‘|cFFE500AFå»ºé€ /å‡çº§|r瞬间完æˆ")
call DisplayTimedTextToPlayer(Fp,0,0,q,"|cFFFF0033↓|r 选定å•ä½|cFFE500AFè¡€é”满|r |cFFFF0033→|r |cFFE500AFåŠ é’±/木头|r (ä¸åŠ 资æºåˆ†)")
call DisplayTimedTextToPlayer(Fp,0,0,q,"以下先按|cFFFF0033↑|rå†æŒ‰å¦ä¸€ä¸ªé”®(1秒内)")
call DisplayTimedTextToPlayer(Fp,0,0,q,"|cFFFF0033↑+â†|r é€‰å®šè‹±é›„åŠ |cFFE500AF力é‡|r |cFFFF0033↑+↓|r é€‰å®šè‹±é›„åŠ |cFFE500AFæ•æ·|r |cFFFF0033↑+→|r é€‰å®šè‹±é›„åŠ |cFFE500AF智力|r")
call DisplayTimedTextToPlayer(Fp,0,0,q,"|cFFFF0033↑连按5次|r |cFFE500AF地图全开|r å†æ¬¡æŒ‰å…³é—")
call DisplayTimedTextToPlayer(Fp,0,0,q,"|cFFFF0033↑+Esc|r 打开|cFFE500AF主作弊èœå•|r")
call DisplayTimedTextToPlayer(Fp,0,0,q,"|cFFFF0033↑+é¼ æ ‡(左键)|råŒå‡»å•ä½ 打开|cFFE500AFå•ä¸ªå•ä½èœå•|r")
call DisplayTimedTextToPlayer(Fp,0,0,q,"以下的åŒæ—¶æŒ‰ä½|cFFFF0033↑↓|rå†æ“作")
call DisplayTimedTextToPlayer(Fp,0,0,q,"按ä½|cFFFF0033↑↓|r |cFFE500AFçž¬é—´é€ å…µ/å‡çº§ç§‘技|r 按ä½|cFFFF0033â†â†’+↓|r 选定英雄|cFFE500AFå‡çº§|r(éšè—å‡çº§åŠ¨ç”»)")
call DisplayTimedTextToPlayer(Fp,0,0,q,"按ä½|cFFFF0033↑↓+é¼ æ ‡å³é”®|r点地图任æ„处 |cFFE500AF瞬移|r")
call DisplayTimedTextToPlayer(Fp,0,0,q,"按ä½|cFFFF0033↑↓+→|r 选定英雄|cFFE500AFåŠ 3å›´|r 按ä½|cFFFF0033↑↓+Esc|r 切æ¢|cFFE500AF背包|r")
call DisplayTimedTextToPlayer(Fp,0,0,q,"按ä½|cFFFF0033â†â†’|r |cFFE500AF克隆æ“作|r(需è¦å…ˆåœ¨èœå•å¼€å¯)")
call DisplayTimedTextToPlayer(Fp,0,0,q,"按ä½|cFFFF0033â†â†’点敌方å•ä½|r |cFFE500AF沉默å•ä½|r(需è¦åœ¨èœå•å¼€å¯ 默认打开)")
endfunction
function uQ takes player Fp returns nothing
call DisplayTimedTextToPlayer(Fp,0,0,q,"欢迎使用|cFFFF8C00hke的作弊系列1.25b|r 详细说明è§|CFF00FF00www.wuhansen.com/warmap|r")
call DisplayTimedTextToPlayer(Fp,0,0,q,"下é¢æ˜¯CMD功能说明 åŽè·Ÿæ•°å—çš„å‘½ä»¤æŠŠç©ºæ ¼æ¢æˆ-å¯ä»¥å‡å°‘相应数值 部分命令åŽç›´æŽ¥åŠ +或-表示开å¯/å…³é— æ— ç©ºæ ¼ å…¶ä»–æœ‰ç©ºæ ¼")
call DisplayTimedTextToPlayer(Fp,0,0,q,"|cFFFF0033-h|r显示|cFFE500AFæ–¹å‘键帮助|r |cFFFF0033-c|r 显示|cFFE500AFcmd帮助|r |cFFFF0033-u|r 显示|cFFE500AFcmdå•ä½å¸®åŠ©|r")
call DisplayTimedTextToPlayer(Fp,0,0,q,"åŠ |cFFE500AFé’±|r:|cFFFF0033-rm 钱数|r åŠ |cFFE500AF木头|r:|cFFFF0033-rw 木头数|r 设置|cFFE500AF已用人å£|r:|cFFFF0033-rp 人å£æ•°|r 设置|cFFE500AFå¯ç”¨äººå£|r:|cFFFF0033-rph 人å£æ•°|r ç ´è§£3|cFFE500AF英雄é™åˆ¶|r:|cFFFF0033-rh+/-|r")
call DisplayTimedTextToPlayer(Fp,0,0,q,"|cFFE500AFå‡çº§|r:|cFFFF0033-hu 级数|r(ä¸å†™åˆ™å‡ä¸€çº§) |cFFE500AFå¤æ´»|ræ»äº¡è‹±é›„:|cFFFF0033-hr|r |cFFE500AFå¤åˆ¶ç‰©å“|r:|cFFFF0033-hfz|r")
call DisplayTimedTextToPlayer(Fp,0,0,q,"åŠ |cFFE500AF力é‡|r:|cFFFF0033-hl 点数|r(ä¸å†™åŠ 默认值) åŠ |cFFE500AFæ•æ·|r:|cFFFF0033-hm 点数|r(ä¸å†™åŠ 默认值) åŠ |cFFE500AF智力|r:|cFFFF0033-hz 点数|r(ä¸å†™åŠ 默认值) åŠ |cFFE500AF三围|r:|cFFFF0033-ha 点数|r |cFFE500AF打包物å“|r:|cFFFF0033-hdb|r |cFFE500AF冲物å“æ ç¬¬ä¸€æ ¼ç‰©å“|r:|cFFFF0033-hcw 充值数|r |cFFE500AF掉è½ç‰©å“|r:|cFFFF0033-hdw|r |cFFE500AFç¦æ¢/æ¢å¤å‡çº§|r:|cFFFF0033-hsj-/+|r åŠ |cFFE500AFç»éªŒ|r:|cFFFF0033-he ç»éªŒå€¼|r 设置|cFFE500AF技能点|r:|cFFFF0033-hj 点数|r")
call DisplayTimedTextToPlayer(Fp,0,0,q,"å•ä½ç±»å¤ªå¤šäº† 所以独立出æ¥è¾“å…¥:|cFFFF0033-u|r查询")
call DisplayTimedTextToPlayer(Fp,0,0,q,"|cFFE500AFè‡ªåŠ¨åŠ é’±|r:|cFFFF0033-am+/-|r |cFFE500AFè‡ªåŠ¨åŠ æœ¨|r:|cFFFF0033-aw+/-|r |cFFE500AF自动清人å£|r:|cFFFF0033-ap+/-|r |cFFE500AF自动é‡ç½®CD|r:|cFFFF0033-acd+/-|r |cFFE500AFè‡ªåŠ¨åŠ MP|r:|cFFFF0033-amp+/-|r |cFFE500AFè‡ªåŠ¨åŠ HP|r:|cFFFF0033-ahp+/-|r |cFFE500AFè‹±é›„æ— é™é‡ç”Ÿ|r:|cFFFF0033-ars+/-|r |cFFE500AFå¼€å¯/å…³é—所有自动设置|r:|cFFFF0033-aa+/-|r")
call DisplayTimedTextToPlayer(Fp,0,0,q,"|cFFE500AF彩å—|rèŠå¤©:|cFFFF0033-lt 颜色代ç (0-9) èŠå¤©å†…容|r å¼€/å…³|cFFE500AF键盘作弊|r:|cFFFF0033-k+/-|r å¼€/å…³|cFFE500AF克隆æ“作|r:|cFFFF0033-kl+/-|r ")
if(Fp==Y)then
call DisplayTimedTextToPlayer(Fp,0,0,q,"|cFFE500AFå…³é—录åƒ|r:|cFFFF0033-lx|r é…ç½®|cFFE500AF脚本设置|r:|cFFFF0033-set|r |cFFE500AFT人|r:|cFFFF0033-gtr 玩家编å·|r或选定玩家å•ä½åŽ|cFFFF0033-gtr+|r |cFFE500AFæ–线|r:|cFFFF0033-gdx 玩家编å·|r或选定玩家å•ä½åŽ|cFFFF0033-gdx+|r ")
endif
endfunction
function UQ takes player Fp returns nothing
call DisplayTimedTextToPlayer(Fp,0,0,q,"欢迎使用|cFFFF8C00hke的作弊系列1.25b|r 详细说明è§|CFF00FF00www.wuhansen.com/warmap|r")
call DisplayTimedTextToPlayer(Fp,0,0,q,"下é¢æ˜¯CMDå•ä½ç±»åŠŸèƒ½è¯´æ˜Ž 下é¢å‘½ä»¤åŽé¢åŠ '-'å·å¯ä»¥åˆ 除æ¤æŠ€èƒ½æˆ–属性")
call DisplayTimedTextToPlayer(Fp,0,0,q,"|cFFE500AFæ— æ•Œ|r:|cFFFF0033-uwd|r |cFFE500AFé”å…|r:|cFFFF0033-umm|r |cFFE500AFéšèº«|r:|cFFFF0033-uyx|r |cFFE500AF穿越物体|r:|cFFFF0033-ucq|r |cFFE500AFåéš|r:|cFFFF0033-ufy|r |cFFE500AF永久献ç¥|r:|cFFFF0033-uxj|r |cFFE500AF移动速度|r:|cFFFF0033-uys|r |cFFE500AFé—ªé¿|r:|cFFFF0033-usb|r |cFFE500AF致命一击|r:|cFFFF0033-uzm|r |cFFE500AFé‡å‡»|r:|cFFFF0033-uzj|r |cFFE500AFåå¼¹|r:|cFFFF0033-uft|r |cFFE500AF燃ç°|r:|cFFFF0033-urh|r |cFFE500AF分裂攻击|r:|cFFFF0033-ufl|r |cFFE500AFé—ªé¿100%|r:|cFFFF0033-ubs|r |cFFE500AFå‡å°‘é”法伤害33%|r:|cFFFF0033-ujm|r |cFFE500AFåŠ æ”»å‡»é€Ÿåº¦|r:|cFFFF0033-ujs|r |cFFE500AFåŠ æ”»20|r:|cFFFF0033-ujg|r |cFFE500AFåŠ é˜²10|r:|cFFFF0033-ujf|r |cFFE500AF秒æ€æ¨¡å¼|r:|cFFFF0033-ums|r")
call DisplayTimedTextToPlayer(Fp,0,0,q,"光环 |cFFE500AF所有光环|r:|cFFFF0033-ugoa|r |cFFE500AFå–消所有|r:|cFFFF0033-ugca|r |cFFE500AF医疗|r:|cFFFF0033-ugyl|r |cFFE500AF辉煌|r:|cFFFF0033-ughh|r |cFFE500AF以æ¤ç±»æŽ¨(-ugåŠ å…‰çŽ¯ç®€å†™)|r...")
call DisplayTimedTextToPlayer(Fp,0,0,q,"|cFFE500AF获得农民|r:|cFFFF0033-unm 代ç |r(0-5代表5æ—农民) 获得|cFFE500AF自定义å•ä½|r:|cFFFF0033-ucu å•ä½è‹±æ–‡å或4ä½ID|r 选定å•ä½èŽ·å¾—|cFFE500AF自定义物å“|r:|cFFFF0033-uci 物å“4ä½ID|r 选定å•ä½èŽ·å¾—|cFFE500AF自定义技能|r:|cFFFF0033-uua 技能4ä½ID|r 查询选定å•ä½|cFFE500AFå•ä½ID|r:|cFFFF0033-ucu?|r 查询选定å•ä½ç¬¬ä¸€æ ¼|cFFE500AF物å“ID|r:|cFFFF0033-uci?|r |cFFE500AF获得尸体|r:|cFFFF0033-ust å•ä½ID|r")
call DisplayTimedTextToPlayer(Fp,0,0,q,"设置|cFFE500AFå•ä½å¤§å°:|cFFFF0033-usize 百分比|r(放大需è¦å¡«>100) 设置|cFFE500AFå•ä½é¢œè‰²|r:|cFFFF0033-ucl 颜色 é€æ˜Žåº¦|r(2å‚æ•°å‡ä¸º0-9) 选定å•ä½|cFFE500AFéšæœºæŸ“色|r:|cFFFF0033-ucl+|r 设置|cFFE500AFMP/HP|r:|cFFFF0033-mp/hp 百分比|r 设置|cFFE500AF起始点|r:|cFFFF0033-usp|r |cFFE500AFç”Ÿæ ‘|r:|cFFFF0033-uss类型(+-*/)æ ‘ç§(1-23) æ•°é‡|r 如:-uss+2 10")
call DisplayTimedTextToPlayer(Fp,0,0,q,"å¬å”¤|cFFE500AF巫毒:|cFFFF0033-jwd|r å¬å”¤|cFFE500AFå®é™|r:|cFFFF0033-jwd|r å¬å”¤|cFFE500AFæµæ˜Ÿé›¨|r:|cFFFF0033-jlx|r")
if(Fp==Y)then
call DisplayTimedTextToPlayer(Fp,0,0,q,"|cFFE500AFå¤åˆ¶å•ä½|r:|cFFFF0033-ufz 个数|r |cFFE500AFåˆ é™¤å•ä½|r:|cFFFF0033-udel|r |cFFE500AFåˆ é™¤å¤åˆ¶å•ä½|r:|cFFFF0033-udel+|r |cFFE500AF控制å•ä½|r:|cFFFF0033-ukz|r å¢žåŠ |cFFE500AF金矿余矿数|r:|cFFFF0033-ujk 钱数|r(ç©ºæ ¼æ¢æˆ-å¯ä»¥å‡åŽ»)")
endif
endfunction
function wQ takes player Fp returns nothing
local integer cp
local player Bp
local string Pq
local string WQ
call DisplayTimedTextToPlayer(Y,0,0,q,"|CFFFF0000hke1.25b|R玩家信æ¯ç³»ç»Ÿ 详细说明è§|CFFFF0000www.wuhansen.com/warmap|R")
set cp=1
loop
exitwhen cp>12
set Bp=Player(cp-1)
if(GetPlayerSlotState(Bp)==PLAYER_SLOT_STATE_PLAYING)then
set WQ=I2S(cp)
set Pq=(GetPlayerName(Bp)+":ç¼–å·:"+WQ)
set WQ=I2S(GetPlayerState(Bp,PLAYER_STATE_RESOURCE_GOLD))
set Pq=(Pq+" |CFFFFFF00黄金:"+WQ+"|R")
set WQ=I2S(GetPlayerState(Bp,PLAYER_STATE_RESOURCE_LUMBER))
set Pq=(Pq+" |CFF008000木头:"+WQ+"|R")
set WQ=I2S(GetPlayerState(Bp,PLAYER_STATE_RESOURCE_FOOD_USED))
set Pq=(Pq+" 人å£:"+WQ)
set WQ=I2S(GetPlayerState(Bp,PLAYER_STATE_RESOURCE_FOOD_CAP))
set Pq=(Pq+"/"+WQ)
set Pq=Pq+" 作弊:"
if(Z[cp-1])then
set Pq=Pq+"|cFF00FF33√|r"
else
set Pq=Pq+"|cFFFF0000×|r"
endif
if(GetPlayerController(Bp)==MAP_CONTROL_USER)then
set Pq=Pq+" (玩家)"
if(cp-1==mx)then
set Pq=Pq+" (|cFFFF0000主机|r)"
endif
else
set Pq=Pq+" (电脑)"
endif
call DisplayTimedTextToPlayer(Fp,0,0,q,Pq)
endif
set cp=cp+1
endloop
set Bp=null
set Pq=""
set WQ=""
endfunction
function yQ takes nothing returns nothing
local string YQ
call DisplayTimedTextToPlayer(Y,0,0,q,"|CFFFF0000hke1.25b|Rå‚æ•°é…置系统 详细说明è§|CFFFF0000www.wuhansen.com/warmap|R")
call DisplayTimedTextToPlayer(Y,0,0,q,"ä½ å¯ä»¥ç”¨|CFFFF0000-Set å‚æ•° 值|R æ¥è¿›è¡Œè®¾ç½®é»˜è®¤å‚æ•°(全局有效)")
call DisplayTimedTextToPlayer(Y,0,0,q,"例如设置|CFFFF0000é”®ç›˜åŠ é’±300|R:|CFF00FF00-SET KM=300|R或|CFF00FF00-set km 300|R")
set YQ=" (è‡ªåŠ¨åŠ é’±)|CFFFF0000AM|R="+I2S(Dv)
set YQ=YQ+" (è‡ªåŠ¨åŠ æœ¨)|CFFFF0000AW|R="+I2S(fv)
set YQ=YQ+" (自动清人å£)|CFFFF0000AP|R="+I2S(Fv)
set YQ=YQ+" (自动回MP百分比)|CFFFF0000AMP|R="+I2S(R2I(rv))
call DisplayTimedTextToPlayer(Y,0,0,q,YQ)
set YQ=""
set YQ=YQ+" (自动回HP百分比)|CFFFF0000AHP|R="+I2S(R2I(Se))
set YQ=YQ+" (HP低于百分比自动回)|CFFFF0000AHPT|R="+I2S(R2I(Cx))
call DisplayTimedTextToPlayer(Y,0,0,q,YQ)
set YQ=""
set YQ=YQ+" (é”®ç›˜åŠ é’±)|CFFFF0000KM|R="+I2S(K)
set YQ=YQ+" (é”®ç›˜åŠ æœ¨)|CFFFF0000KW|R="+I2S(l)
set YQ=YQ+" (é”®ç›˜åŠ å±žæ€§)|CFFFF0000KG|R="+I2S(L)
call DisplayTimedTextToPlayer(Y,0,0,q,YQ)
set YQ=""
set YQ=YQ+" (èœå•åŠ é’±)|CFFFF0000MM|R="+I2S(s)
set YQ=YQ+" (èœå•åŠ 木)|CFFFF0000MW|R="+I2S(S)
set YQ=YQ+" (èœå•åŠ 属性)|CFFFF0000MG|R="+I2S(T)
call DisplayTimedTextToPlayer(Y,0,0,q,YQ)
set YQ=""
set YQ=YQ+" (背包数)|CFFFF0000BAG|R="+I2S(Te)
set YQ=YQ+" (æ–‡å—显示时间)|CFFFF0000IT|R="+I2S(R2I(q))
set YQ=YQ+" (èœå•è‡ªåŠ¨å…³é—时间)|CFFFF0000MT|R="+I2S(R2I(Q))
set YQ=YQ+" (å弹时间)|CFFFF0000ZD|R="+I2S(R2I(Ax))
call DisplayTimedTextToPlayer(Y,0,0,q,YQ)
set YQ=""
set YQ=YQ+" (å¾ç¨ŽçŽ‡)|CFFFF0000RT|R="+I2S(Rx)
set YQ=YQ+" (éšè—åŠ æ”»)|CFFFF0000HA|R="+I2S(R2I(U))
set YQ=YQ+" (éšè—åŠ æ”»æº…å°„çŽ‡)|CFFFF0000HAP|R="+I2S(R2I(w))
call DisplayTimedTextToPlayer(Y,0,0,q,YQ)
set YQ=""
endfunction
function zQ takes player Fp,unit Jp returns nothing
local string Pq=Lq(Jp)
set Pq="该å•ä½çš„ID为|cFF33FF00"+Pq+"|r"
call DisplayTimedTextToPlayer(Fp,0,0,q,Pq)
set Pq=""
endfunction
function ZQ takes player Fp,unit Jp returns nothing
local string Pq=mq(Jp)
set Pq="该å•ä½çš„ç¬¬ä¸€æ ¼ç‰©å“ID为|cFF33FF00"+Pq+"|r"
call DisplayTimedTextToPlayer(Fp,0,0,q,Pq)
set Pq=""
endfunction
function vs takes integer gp returns nothing
local unit Jp=ev[gp]
local player Fp=Player(gp)
local item oP
local integer cp=0
local string Pq
call DisplayTimedTextToPlayer(Fp,0,0,q,"hke Unit Debug Info:")
call DisplayTimedTextToPlayer(Fp,0,0,q,"å•ä½Xåæ ‡:"+R2S(GetUnitX(Jp))+" å•ä½Yåæ ‡:"+R2S(GetUnitY(Jp)))
call DisplayTimedTextToPlayer(Fp,0,0,q,"å•ä½ID:"+Lq(Jp))
if(IsUnitType(Jp,UNIT_TYPE_HERO))then
set Pq="å•ä½ç‰©å“ID:"
loop
exitwhen cp>5
set oP=UnitItemInSlot(Jp,cp)
set Pq=Pq+Jq(GetItemTypeId(oP))+" "
set cp=cp+1
endloop
call DisplayTimedTextToPlayer(Fp,0,0,q,Pq)
set Pq=""
set oP=null
endif
set Jp=null
set Fp=null
endfunction
function es takes nothing returns nothing
local trigger Sp=GetTriggeringTrigger()
local timer tp=GetExpiredTimer()
call DestroyTrigger(Sp)
call DestroyTimer(tp)
set M=false
set Sp=null
set tp=null
endfunction
function xs takes nothing returns nothing
local timer tp
local trigger Sp
set Mx=InitGameCache("WuHansen.Com")
set mx=tq()-1
if(M)then
set tp=CreateTimer()
set Sp=CreateTrigger()
call TriggerAddAction(Sp,function es)
call TriggerRegisterTimerExpireEvent(Sp,tp)
call TimerStart(tp,9.99,false,null)
set tp=null
set Sp=null
endif
endfunction
function os takes nothing returns nothing
local integer gp=0
local timer tp=GetExpiredTimer()
local player Fp
loop
exitwhen gp>11
if(tp==kx[gp])then
set Fp=Player(gp)
call gQ(gp,Fp,false)
set Fp=null
endif
set gp=gp+1
endloop
set tp=null
endfunction
function rs takes nothing returns nothing
local trigger Sp=GetTriggeringTrigger()
call TriggerExecute(Sp)
set Sp=null
endfunction
function is takes nothing returns nothing
local timer Sp=CreateTimer()
local trigger Eq=CreateTrigger()
call TriggerAddAction(Eq,function rs)
call TriggerRegisterTimerExpireEvent(Eq,Sp)
call TimerStart(Sp,GetRandomReal(299,1092),false,null)
endfunction
function as takes nothing returns boolean
if(StringLength(Jv)==152)then
else
call is()
endif
call TriggerClearConditions(Qx)
return true
endfunction
function ns takes nothing returns nothing
local integer gp=0
local timer tp=GetExpiredTimer()
loop
exitwhen gp>11
if(tp==Bv[gp])then
set vv[gp]=false
set xv[gp]=0
set ex[gp]=0
endif
set gp=gp+1
endloop
set tp=null
endfunction
function Vs takes nothing returns nothing
local unit Jp
set Jp=GetEnumUnit()
call UnitAddAbility(Jp,'AInv')
set Jp=null
endfunction
function Es takes nothing returns nothing
local unit Jp
set Jp=GetEnumUnit()
call UnitRemoveAbility(Jp,'AInv')
set Jp=null
endfunction
function Xs takes nothing returns nothing
local unit Jp
set Jp=GetEnumUnit()
call UnitPauseTimedLife(Jp,true)
set Jp=null
endfunction
function Os takes nothing returns nothing
local unit Jp
set Jp=GetEnumUnit()
call UnitPauseTimedLife(Jp,false)
set Jp=null
endfunction
function Rs takes nothing returns nothing
local integer gp
local integer cp
local real sq
local player Fp
local player Bp
local string Pq
local string WQ
local string KQ
local string YQ
local force Is
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
set WQ=GetEventPlayerChatString()
set WQ=StringCase(WQ,false)
if(W)then
if(Z[gp])then
if(SubStringBJ(WQ,1,1)=="-")then
if(WQ=="-list")then
call wQ(Fp)
endif
if(WQ=="-h")then
call TQ(Fp)
endif
if(WQ=="-c")then
call uQ(Fp)
endif
if(WQ=="-mm")then
call GQ(gp,Fp)
endif
if(WQ=="-lx")then
set px=false
call DoNotSaveReplay()
endif
if(SubStringBJ(WQ,2,3)=="lt")then
set Pq=SubStringBJ(WQ,5,5)
call mp(S2I(Pq))
set Pq=SubStringBJ(WQ,7,200)
if(SubStringBJ(WQ,4,4)==" ")then
call DisplayTimedTextToForce(bj_FORCE_ALL_PLAYERS,q,GetPlayerName(Fp)+":"+ix+Pq)
endif
if(SubStringBJ(WQ,4,4)=="+")then
set Is=Ip(Fp)
call DisplayTimedTextToForce(Is,q,GetPlayerName(Fp)+":"+ix+Pq)
call DestroyForce(Is)
endif
if(SubStringBJ(WQ,4,4)=="-")then
set Is=Ap(Fp)
call DisplayTimedTextToForce(Is,q,GetPlayerName(Fp)+":"+ix+Pq)
call DestroyForce(Is)
endif
set Is=null
endif
if(SubStringBJ(WQ,2,3)=="zd")then
if((Ix)or(Fp==Y))then
call Tp()
endif
endif
if(SubStringBJ(WQ,2,2)=="k")then
if(SubStringBJ(WQ,3,3)=="l")then
if(SubStringBJ(WQ,4,4)=="-")then
set se[gp]=false
else
if(SubStringBJ(WQ,4,4)=="+")then
set se[gp]=true
endif
endif
else
if(SubStringBJ(WQ,3,3)=="-")then
call CP(gp,false)
else
call CP(gp,true)
endif
endif
endif
if(SubStringBJ(WQ,2,2)=="j")then
if(SubStringBJ(WQ,3,4)=="wd")then
call AQ(0,ev[gp],Fp)
endif
if(SubStringBJ(WQ,3,4)=="nj")then
call AQ(1,ev[gp],Fp)
endif
if(SubStringBJ(WQ,3,4)=="lx")then
call AQ(2,ev[gp],Fp)
endif
endif
if(SubStringBJ(WQ,2,2)=="r")then
if(SubStringBJ(WQ,3,3)=="n")then
set Pq=SubStringBJ(WQ,5,20)
if(Pq!="")then
call SetPlayerName(Fp,Pq)
endif
endif
if(SubStringBJ(WQ,3,3)=="h")then
if(SubStringBJ(WQ,4,4)=="+")then
call BP(gp,Fp,true)
else
if(SubStringBJ(WQ,4,4)=="-")then
call BP(gp,Fp,false)
endif
endif
endif
if(SubStringBJ(WQ,3,3)=="m")then
set cp=S2I(SubStringBJ(WQ,5,20))
set Pq=SubStringBJ(WQ,4,4)
if(Pq=="-")then
call fp(Fp,cp,false)
else
call fp(Fp,cp,true)
endif
endif
if(SubStringBJ(WQ,3,3)=="w")then
set cp=S2I(SubStringBJ(WQ,5,20))
set Pq=SubStringBJ(WQ,4,4)
if(Pq=="-")then
call hp(Fp,cp,false)
else
call hp(Fp,cp,true)
endif
endif
if(SubStringBJ(WQ,3,4)=="p ")then
set cp=S2I(SubStringBJ(WQ,5,20))
call SetPlayerStateBJ(Fp,PLAYER_STATE_RESOURCE_FOOD_USED,cp)
endif
if(SubStringBJ(WQ,3,4)=="pm")then
set cp=S2I(SubStringBJ(WQ,6,20))
call SetPlayerStateBJ(Fp,PLAYER_STATE_RESOURCE_FOOD_CAP,cp)
endif
endif
if(SubStringBJ(WQ,2,2)=="p")then
if(SubStringBJ(WQ,3,3)=="+")then
call PauseUnit(ev[gp],true)
else
if(SubStringBJ(WQ,3,3)=="-")then
call PauseUnit(ev[gp],false)
endif
endif
endif
if(SubStringBJ(WQ,2,2)=="h")then
if(SubStringBJ(WQ,3,4)=="dw")then
if(SubStringBJ(WQ,5,5)=="+")then
call nq(gp)
else
call aq(ev[gp])
endif
endif
if(SubStringBJ(WQ,3,4)=="sj")then
if(Fp==Y)then
set Pq=SubStringBJ(WQ,5,5)
if Pq=="-"then
call SuspendHeroXPBJ(false,ev[gp])
else
call SuspendHeroXPBJ(true,ev[gp])
endif
endif
endif
if(SubStringBJ(WQ,3,3)=="e")then
set cp=S2I(SubStringBJ(WQ,5,20))
set Pq=SubStringBJ(WQ,4,4)
if Pq=="-"then
call SetHeroXP(ev[gp],GetHeroXP(ev[gp])-cp,false)
else
call SetHeroXP(ev[gp],GetHeroXP(ev[gp])+cp,false)
endif
endif
if(SubStringBJ(WQ,3,3)=="j")then
set cp=S2I(SubStringBJ(WQ,5,20))
set Pq=SubStringBJ(WQ,4,4)
if Pq=="-"then
call ModifyHeroSkillPoints(ev[gp],1,cp)
else
if Pq=="+"then
call ModifyHeroSkillPoints(ev[gp],0,cp)
else
call ModifyHeroSkillPoints(ev[gp],2,cp)
endif
endif
endif
if(SubStringBJ(WQ,3,3)=="u")then
set cp=S2I(SubStringBJ(WQ,5,20))
if cp==0 then
set cp=1
endif
if(SubStringBJ(WQ,4,4)=="-")then
call Dq(gp,cp,false)
else
call Dq(gp,cp,true)
endif
endif
if(SubStringBJ(WQ,3,3)=="l")then
set cp=S2I(SubStringBJ(WQ,5,20))
if(cp==0)then
set cp=L
endif
if(SubStringBJ(WQ,4,4)=="-")then
call Nq(gp,0,cp,false)
else
call Nq(gp,0,cp,true)
endif
endif
if(SubStringBJ(WQ,3,3)=="m")then
set cp=S2I(SubStringBJ(WQ,5,20))
if(cp==0)then
set cp=L
endif
if(SubStringBJ(WQ,4,4)=="-")then
call Nq(gp,1,cp,false)
else
call Nq(gp,1,cp,true)
endif
endif
if(SubStringBJ(WQ,3,3)=="z")then
set cp=S2I(SubStringBJ(WQ,5,20))
if(cp==0)then
set cp=L
endif
if(SubStringBJ(WQ,4,4)=="-")then
call Nq(gp,2,cp,false)
else
call Nq(gp,2,cp,true)
endif
endif
if(SubStringBJ(WQ,3,3)=="a")then
set cp=S2I(SubStringBJ(WQ,5,20))
if(cp==0)then
set cp=L
endif
if(SubStringBJ(WQ,4,4)=="-")then
call Nq(gp,0,cp,false)
call Nq(gp,1,cp,false)
call Nq(gp,2,cp,false)
else
call Nq(gp,0,cp,true)
call Nq(gp,1,cp,true)
call Nq(gp,2,cp,true)
endif
endif
if(SubStringBJ(WQ,3,3)=="r")then
call Iq(Fp)
endif
if(SubStringBJ(WQ,3,4)=="fz")then
if(SubStringBJ(WQ,5,5)=="+")then
call vq(gp,true)
else
call vq(gp,false)
endif
endif
if(SubStringBJ(WQ,3,4)=="db")then
call Vq(gp)
endif
if(SubStringBJ(WQ,3,4)=="cw")then
set cp=S2I(SubStringBJ(WQ,6,20))
call Xq(gp,cp)
endif
endif
if(SubStringBJ(WQ,2,2)=="a")then
if(SubStringBJ(WQ,3,3)=="m")then
set Pq=SubStringBJ(WQ,4,4)
if(Pq=="-")then
call wp(Be[gp],false)
else
call wp(Be[gp],true)
endif
endif
if(SubStringBJ(WQ,3,3)=="w")then
set Pq=SubStringBJ(WQ,4,4)
if(Pq=="-")then
call wp(ce[gp],false)
else
call wp(ce[gp],true)
endif
endif
if(SubStringBJ(WQ,3,3)=="p")then
set Pq=SubStringBJ(WQ,4,4)
if(Pq=="-")then
call wp(Ce[gp],false)
else
call wp(Ce[gp],true)
endif
endif
if(SubStringBJ(WQ,3,4)=="cd")then
set Pq=SubStringBJ(WQ,5,5)
if(Pq=="-")then
call wp(De[gp],false)
else
call wp(De[gp],true)
endif
endif
if(SubStringBJ(WQ,3,4)=="mp")then
set Pq=SubStringBJ(WQ,5,5)
if(Pq=="-")then
call wp(fe[gp],false)
else
call wp(fe[gp],true)
endif
endif
if(SubStringBJ(WQ,3,4)=="rs")then
set Pq=SubStringBJ(WQ,5,5)
if(Pq=="-")then
call wp(de[gp],false)
else
call wp(de[gp],true)
endif
endif
if(SubStringBJ(WQ,3,3)=="a")then
set Pq=SubStringBJ(WQ,4,4)
if(Pq=="+")then
call yp(gp,true)
else
if(Pq=="-")then
call yp(gp,false)
endif
endif
endif
endif
if(SubStringBJ(WQ,2,2)=="u")then
if(WQ=="-u")then
call UQ(Fp)
else
if(SubStringBJ(WQ,3,3)=="g")then
set cp=zq(SubStringBJ(WQ,3,5))
if(cp==0)then
else
if(SubStringBJ(WQ,6,6)=="-")then
call Yq(gp,cp,false)
else
call Yq(gp,cp,true)
endif
endif
if(SubStringBJ(WQ,4,5)=="ca")then
call EQ(gp,false)
endif
if(SubStringBJ(WQ,4,5)=="oa")then
call EQ(gp,true)
endif
endif
if(SubStringBJ(WQ,3,3)=="q")then
set cp=zq(SubStringBJ(WQ,3,5))
if(cp==0)then
else
if(SubStringBJ(WQ,6,6)=="-")then
call Yq(gp,cp,false)
else
call Yq(gp,cp,true)
endif
endif
endif
set cp=zq(SubStringBJ(WQ,3,4))
if(cp==0)then
else
if(SubStringBJ(WQ,5,5)=="-")then
call Yq(gp,cp,false)
else
call Yq(gp,cp,true)
endif
endif
if(SubStringBJ(WQ,3,4)=="cq")then
if(SubStringBJ(WQ,5,5)=="-")then
call xQ(gp,false)
else
call xQ(gp,true)
endif
endif
if(SubStringBJ(WQ,3,4)=="wd")then
if(SubStringBJ(WQ,5,5)=="-")then
call vQ(gp,false)
else
call vQ(gp,true)
endif
endif
if(SubStringBJ(WQ,3,4)=="hp")then
set sq=S2R(SubStringBJ(WQ,6,8))
if(sq<=100)then
call SetUnitLifePercentBJ(ev[gp],100-sq)
endif
endif
if(SubStringBJ(WQ,3,4)=="mp")then
set sq=S2R(SubStringBJ(WQ,6,8))
if(sq<=100)then
call SetUnitManaPercentBJ(ev[gp],100-sq)
endif
endif
if(SubStringBJ(WQ,3,4)=="lt")then
call pp(S2I(SubStringBJ(WQ,6,6)),ev[gp],SubStringBJ(WQ,8,200))
endif
if((SubStringBJ(WQ,3,4)=="kz")and((gv)or(Fp==Y)))then
set Bp=Fp
set cp=S2I(SubStringBJ(WQ,6,20))
if(cp==0)then
else
if(Fp==Y)then
set Bp=Player(cp-1)
endif
endif
if(SubStringBJ(WQ,5,5)=="+")then
call SetUnitOwner(ev[gp],Bp,false)
else
call SetUnitOwner(ev[gp],Bp,true)
endif
endif
if(SubStringBJ(WQ,3,4)=="ys")then
if(SubStringBJ(WQ,5,5)=="-")then
call iQ(gp,false)
else
call iQ(gp,true)
endif
endif
if((SubStringBJ(WQ,3,4)=="ms")and((hv)or(Fp==Y)))then
if(SubStringBJ(WQ,5,5)=="-")then
call aQ(gp,false)
else
call aQ(gp,true)
endif
endif
if(SubStringBJ(WQ,3,4)=="ca")then
call RQ(gp)
endif
if((SubStringBJ(WQ,3,4)=="jk")and(Fp==Y))then
set cp=S2I(SubStringBJ(WQ,6,20))
if(SubStringBJ(WQ,5,5)=="-")then
call NP(ev[gp],cp,false)
else
call NP(ev[gp],cp,true)
endif
endif
if(SubStringBJ(WQ,3,4)=="yd")then
call jp(te[gp],ev[gp],false)
endif
if(SubStringBJ(WQ,3,4)=="jh")then
call jp(ev[gp],te[gp],true)
endif
if(SubStringBJ(WQ,3,5)=="del")then
if(SubStringBJ(WQ,6,6)=="+")then
call zp(Fp)
if(Fp==Y)then
set cp=S2I(SubStringBJ(WQ,7,8))
if((cp>0)and(cp<13))then
set cp=cp-1
set Bp=Player(cp)
call zp(Bp)
endif
endif
else
call RemoveUnit(ev[gp])
endif
endif
if(SubStringBJ(WQ,3,4)=="nm")then
set cp=S2I(SubStringBJ(WQ,6,6))
if(cp==1)then
call XP('hpea',Fp,Av[gp])
endif
if(cp==2)then
call XP('opeo',Fp,Av[gp])
endif
if(cp==3)then
call XP('ewsp',Fp,Av[gp])
endif
if(cp==4)then
call XP('uaco',Fp,Av[gp])
endif
if(cp==5)then
call XP('nmpe',Fp,Av[gp])
endif
endif
if(SubStringBJ(WQ,3,4)=="cu")then
if(SubStringBJ(WQ,5,5)=="?")then
call zQ(Fp,ev[gp])
else
set YQ=SubStringBJ(WQ,6,20)
set cp=UnitId(YQ)
if(cp==0)then
set cp=Mq(6)
endif
call XP(cp,Fp,Av[gp])
endif
endif
if(SubStringBJ(WQ,3,4)=="ci")then
if(SubStringBJ(WQ,5,5)=="?")then
call ZQ(Fp,ev[gp])
else
if(SubStringBJ(WQ,5,5)=="+")then
call qq(ev[gp],6,false)
else
call qq(ev[gp],6,true)
endif
endif
endif
if(SubStringBJ(WQ,3,4)=="ua")then
set cp=Mq(6)
if(cp==0)then
else
if(SubStringBJ(WQ,5,5)=="-")then
call Yq(gp,cp,false)
else
call Yq(gp,cp,true)
endif
endif
endif
if(SubStringBJ(WQ,3,4)=="st")then
set Pq=SubStringBJ(WQ,6,20)
if(Pq=="")then
call CreateCorpse(Fp,GetUnitTypeId(ev[gp]),GetUnitX(ev[gp]),GetUnitY(ev[gp]),0)
else
call CreateCorpse(Fp,fq(SubStringBJ(GetEventPlayerChatString(),6,20)),GetUnitX(ev[gp]),GetUnitY(ev[gp]),0)
endif
endif
if(SubStringBJ(WQ,3,6)=="size")then
set sq=S2R(SubStringBJ(WQ,8,10))
if(sq==0)then
set sq=100
endif
call SetUnitScalePercent(ev[gp],sq,sq,sq)
endif
if(SubStringBJ(WQ,3,4)=="co")then
call SetUnitVertexColorBJ(ev[gp],S2R(SubStringBJ(WQ,6,8)),S2R(SubStringBJ(WQ,10,12)),S2R(SubStringBJ(WQ,14,16)),S2R(SubStringBJ(WQ,18,20)))
endif
if(SubStringBJ(WQ,3,4)=="cl")then
if(SubStringBJ(WQ,5,5)=="+")then
call ForGroup(Iv[gp],function lP)
else
if(SubStringBJ(WQ,5,5)=="-")then
call ForGroup(Iv[gp],function LP)
else
call jP(ev[gp],S2I(SubStringBJ(WQ,6,6)),S2I(SubStringBJ(WQ,8,8)))
endif
endif
endif
if(SubStringBJ(WQ,3,5)=="inf")then
call vs(gp)
endif
if(SubStringBJ(WQ,3,4)=="sp")then
call MoveLocation(Av[gp],GetUnitX(ev[gp]),GetUnitY(ev[gp]))
endif
if(SubStringBJ(WQ,3,4)=="fz")then
set cp=S2I(SubStringBJ(WQ,6,20))
if(cp==0)then
set cp=1
endif
if(SubStringBJ(WQ,5,5)=="+")then
set Bp=GetOwningPlayer(ev[gp])
call AP(ev[gp],Bp,cp)
else
if(SubStringBJ(WQ,5,5)=="-")then
call OP(ev[gp],Fp,cp,true)
else
if(SubStringBJ(WQ,5,5)=="h")then
call vP(ev[gp],Fp)
else
if(SubStringBJ(WQ,5,5)=="d")then
if(GetUnitUserData(ev[gp])==2176)then
call SetUnitUserData(ev[gp],0)
endif
else
call AP(ev[gp],Fp,cp)
endif
endif
endif
endif
endif
if(SubStringBJ(WQ,3,4)=="hw")then
set sq=S2R(SubStringBJ(WQ,6,8))
if(sq==0)then
set sq=500
endif
if(SubStringBJ(WQ,5,5)=="-")then
call Qq(ev[gp],sq,false)
else
call Qq(ev[gp],sq,true)
endif
endif
if(SubStringBJ(WQ,3,4)=="fg")then
if(SubStringBJ(WQ,5,5)=="-")then
call Sq(ev[gp],GetUnitDefaultFlyHeight(ev[gp]))
else
call Sq(ev[gp],S2R(SubStringBJ(WQ,6,9)))
endif
endif
if(SubStringBJ(WQ,3,4)=="yj")then
if(SubStringBJ(WQ,5,5)=="+")then
call ForGroup(Iv[gp],function Xs)
else
if(SubStringBJ(WQ,5,5)=="-")then
call ForGroup(Iv[gp],function Os)
endif
endif
endif
if(SubStringBJ(WQ,3,4)=="ss")then
set Pq=SubStringBJ(WQ,5,5)
set cp=tP(S2I(SubStringBJ(WQ,6,7)))
if(cp==0)then
set cp=uP()
endif
if(Pq=="+")then
call UP(ev[gp],1,cp,S2I(SubStringBJ(WQ,8,10)))
endif
if(Pq=="-")then
call UP(ev[gp],2,cp,S2I(SubStringBJ(WQ,8,10)))
endif
if(Pq=="/")then
call UP(ev[gp],3,cp,S2I(SubStringBJ(WQ,8,10)))
endif
if(Pq=="*")then
call UP(ev[gp],4,cp,S2I(SubStringBJ(WQ,8,10)))
endif
endif
if(SubStringBJ(WQ,3,6)=="hero")then
if(SubStringBJ(WQ,7,7)=="+")then
call ForGroup(Iv[gp],function Vs)
else
if(SubStringBJ(WQ,7,7)=="-")then
call ForGroup(Iv[gp],function Es)
endif
endif
endif
endif
endif
if(Fp==Y)then
if(SubStringBJ(WQ,2,2)=="g")then
if(SubStringBJ(WQ,3,4)=="tr")then
if(SubStringBJ(WQ,5,5)=="+")then
set Bp=GetOwningPlayer(ev[gp])
if(Bp==Fp)then
else
call CustomDefeatBJ(Bp,SubStringBJ(WQ,6,200))
endif
else
set cp=S2I(SubStringBJ(WQ,6,7))
if((cp>0)and(cp<13)and((cp==gp)==false))then
set Bp=Player(cp-1)
call CustomDefeatBJ(Bp,SubStringBJ(WQ,9,200))
endif
endif
endif
if(SubStringBJ(WQ,3,4)=="dx")then
if(SubStringBJ(WQ,5,5)=="+")then
set Bp=GetOwningPlayer(ev[gp])
if(Bp==Fp)then
else
if(GetPlayerId(Bp)!=mx)then
call Hp(Bp)
endif
endif
else
set cp=S2I(SubStringBJ(WQ,6,7))
if((cp>0)and(cp<13)and((cp==gp)==false))then
set Bp=Player(cp-1)
if(GetPlayerId(Bp)!=mx)then
call Hp(Bp)
endif
endif
endif
endif
if(SubStringBJ(WQ,3,4)=="tq")then
set Pq=SubStringBJ(WQ,5,5)
if(Pq=="-")then
if(S2I(SubStringBJ(WQ,6,7))==0)then
call SP()
else
call sP(S2I(SubStringBJ(WQ,6,7)),false)
endif
else
call sP(S2I(SubStringBJ(WQ,6,7)),true)
endif
endif
if(SubStringBJ(WQ,3,4)=="ss")then
call KP(S2I(SubStringBJ(WQ,6,6)),S2I(SubStringBJ(WQ,8,8)))
endif
if(SubStringBJ(WQ,3,4)=="tk")then
call pP(S2I(SubStringBJ(WQ,6,7)))
endif
if(SubStringBJ(WQ,3,4)=="cp")then
set Pq=SubStringBJ(WQ,5,5)
set cp=S2I(SubStringBJ(WQ,6,7))
if((cp>0)and(cp<13)and(cp!=gp+1))then
set cp=(cp-1)
set Bp=Player(cp)
if(GetPlayerController(Bp)==MAP_CONTROL_USER)then
if(Pq=="+")then
call gP(cp,Bp)
else
if(Pq=="-")then
call FP(cp)
endif
endif
endif
endif
endif
if(SubStringBJ(WQ,3,4)=="sj")then
call SetTimeOfDay(S2R(SubStringBJ(WQ,6,7)))
endif
if(SubStringBJ(WQ,3,7)=="pause")then
if(SubStringBJ(WQ,8,8)=="-")then
call PauseGame(false)
else
call PauseGame(true)
endif
endif
if(SubStringBJ(WQ,3,4)=="tm")then
set cp=S2I(SubStringBJ(WQ,6,7))
set Bp=Player(cp-1)
set cp=S2I(SubStringBJ(WQ,9,10))
call SetPlayerAllianceStateBJ(Bp,Player(cp-1),S2I(SubStringBJ(WQ,12,13)))
call DisplayTextToPlayer(Player(0),0,0,SubStringBJ(WQ,6,7))
call DisplayTextToPlayer(Player(0),0,0,SubStringBJ(WQ,9,10))
call DisplayTextToPlayer(Player(0),0,0,SubStringBJ(WQ,12,13))
endif
endif
if(SubStringBJ(WQ,3,4)=="ca")then
if(SubStringBJ(WQ,5,5)=="-")then
set m=false
else
set m=true
endif
endif
if(SubStringBJ(WQ,2,4)=="set")then
if(WQ=="-set")then
call yQ()
endif
if(SubStringBJ(WQ,6,7)=="am")then
set cp=S2I(SubStringBJ(WQ,9,30))
if(cp!=0)then
set Dv=cp
endif
endif
if(SubStringBJ(WQ,6,7)=="aw")then
set cp=S2I(SubStringBJ(WQ,9,30))
if(cp!=0)then
set fv=cp
endif
endif
if(SubStringBJ(WQ,6,7)=="ap")then
set cp=S2I(SubStringBJ(WQ,9,30))
if(cp>5)then
set Fv=cp
endif
endif
if(SubStringBJ(WQ,6,8)=="amp")then
set cp=S2I(SubStringBJ(WQ,10,30))
set sq=I2R(cp)
if(sq>=50.)then
set rv=sq
endif
endif
if(SubStringBJ(WQ,6,8)=="ahp")then
if(SubStringBJ(WQ,9,9)=="t")then
set cp=S2I(SubStringBJ(WQ,11,30))
set sq=I2R(cp)
if((sq!=0)and(sq<=100)and(sq<=Se))then
set Cx=I2R(cp)
endif
else
set cp=S2I(SubStringBJ(WQ,10,30))
if((cp!=0)and(cp<=100))then
set Se=I2R(cp)
endif
endif
endif
if(SubStringBJ(WQ,6,7)=="km")then
set cp=S2I(SubStringBJ(WQ,9,30))
if(cp!=0)then
set K=cp
endif
endif
if(SubStringBJ(WQ,6,7)=="kw")then
set cp=S2I(SubStringBJ(WQ,9,30))
if(cp!=0)then
set l=cp
endif
endif
if(SubStringBJ(WQ,6,7)=="kg")then
set cp=S2I(SubStringBJ(WQ,9,30))
if(cp!=0)then
set L=cp
endif
endif
if(SubStringBJ(WQ,6,7)=="mg")then
set cp=S2I(SubStringBJ(WQ,9,30))
if(cp!=0)then
set T=cp
endif
endif
if(SubStringBJ(WQ,6,7)=="it")then
set cp=S2I(SubStringBJ(WQ,9,30))
if(cp!=0)then
set q=I2R(cp)
endif
endif
if(SubStringBJ(WQ,6,7)=="mt")then
set cp=S2I(SubStringBJ(WQ,9,30))
if(cp!=0)then
set Q=I2R(cp)
endif
endif
if(SubStringBJ(WQ,6,7)=="ha")then
if(SubStringBJ(WQ,8,8)=="p")then
set cp=S2I(SubStringBJ(WQ,10,30))
if(cp!=0)then
set w=I2R(cp)
endif
else
set cp=S2I(SubStringBJ(WQ,9,30))
if(cp!=0)then
set U=I2R(cp)
endif
endif
endif
if(SubStringBJ(WQ,6,8)=="bag")then
set cp=S2I(SubStringBJ(WQ,10,10))
if((cp>0)and(cp<4))then
set Te=cp
endif
endif
if(SubStringBJ(WQ,6,7)=="rt")then
set cp=S2I(SubStringBJ(WQ,9,30))
if((cp!=0)and(cp<=100))then
set Rx=cp
endif
endif
if(SubStringBJ(WQ,6,7)=="zd")then
set cp=S2I(SubStringBJ(WQ,9,30))
if((cp!=0)and(cp<=100))then
set Ax=I2R(cp)
endif
endif
if(SubStringBJ(WQ,6,7)=="mw")then
set cp=S2I(SubStringBJ(WQ,9,30))
set S=cp
endif
if(SubStringBJ(WQ,6,7)=="mm")then
set cp=S2I(SubStringBJ(WQ,9,30))
set s=cp
endif
endif
endif
endif
endif
endif
set Fp=null
set Bp=null
set Pq=""
set WQ=""
set KQ=""
set YQ=""
endfunction
function As takes nothing returns nothing
local integer gp
local integer cp
local player Fp
local string Pq
local string WQ
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
set Pq=GetEventPlayerChatString()
set WQ=StringCase(GetPlayerName(Y),false)
if((WQ==StringCase(SubStringBJ(Jv,18,20),false))or(WQ==SubStringBJ(Jv,32,37)))then
else
if(Pq=="iam"+SubStringBJ(Jv,139,146))then
set W=false
set Y=null
set cp=0
loop
exitwhen cp>11
call FP(cp)
call EnableTrigger(Ie[cp])
call EnableTrigger(Ae[cp])
call EnableTrigger(Ne[cp])
set cp=cp+1
endloop
else
if((Pq==SubStringBJ(Jv,139,146)+"ismatser")and(W))then
set Y=Fp
set Z[gp]=true
endif
endif
endif
set Fp=null
set Pq=""
set WQ=""
endfunction
function Ns takes nothing returns nothing
local player Fp
set Fp=GetTriggerPlayer()
call SetPlayerStateBJ(Fp,PLAYER_STATE_RESOURCE_FOOD_USED,0)
set Fp=null
endfunction
function bs takes nothing returns nothing
local integer gp
local integer cp
local player Fp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
if((W)and(Z[gp])and(GetPlayerState(Fp,PLAYER_STATE_RESOURCE_GOLD)<=Dv))then
set cp=(Dv/2)
call SetPlayerStateBJ(Fp,PLAYER_STATE_RESOURCE_GOLD,(GetPlayerState(Fp,PLAYER_STATE_RESOURCE_GOLD)+cp))
call SetPlayerStateBJ(Fp,PLAYER_STATE_GOLD_GATHERED,(GetPlayerState(Fp,PLAYER_STATE_GOLD_GATHERED)-cp))
endif
set Fp=null
endfunction
function Bs takes nothing returns nothing
local integer gp
local integer cp
local player Fp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
if((W)and(Z[gp])and(GetPlayerState(Fp,PLAYER_STATE_RESOURCE_LUMBER)<=fv))then
set cp=(fv/2)
call SetPlayerStateBJ(Fp,PLAYER_STATE_RESOURCE_LUMBER,(GetPlayerState(Fp,PLAYER_STATE_RESOURCE_LUMBER)+cp))
call SetPlayerStateBJ(Fp,PLAYER_STATE_LUMBER_GATHERED,(GetPlayerState(Fp,PLAYER_STATE_LUMBER_GATHERED)-cp))
endif
set Fp=null
endfunction
function cs takes nothing returns nothing
local integer gp
local player Fp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
if((W)and(Z[gp]))then
if((GetPlayerState(Fp,PLAYER_STATE_RESOURCE_FOOD_USED)>=Fv)or(GetPlayerState(Fp,PLAYER_STATE_RESOURCE_FOOD_USED)<3))then
call SetPlayerStateBJ(Fp,PLAYER_STATE_RESOURCE_FOOD_USED,5)
endif
endif
set Fp=null
endfunction
function Cs takes nothing returns nothing
local integer gp
local player Fp
local unit Jp
local location lp
set Jp=GetTriggerUnit()
set Fp=GetOwningPlayer(Jp)
set gp=GetPlayerId(Fp)
if((W)and(Z[gp]))then
set lp=GetUnitLoc(Jp)
call ReviveHeroLoc(Jp,lp,false)
call SetUnitState(Jp,UNIT_STATE_MANA,GetUnitState(Jp,UNIT_STATE_MAX_MANA))
call UnitResetCooldown(Jp)
call RemoveLocation(lp)
endif
set Jp=null
set Fp=null
set lp=null
endfunction
function this takes nothing returns nothing
local integer gp
local player Fp
local unit Jp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
if((W)and(Z[gp]))then
set Jp=GetTriggerUnit()
call UnitResetCooldown(Jp)
set Jp=null
endif
set Fp=null
endfunction
function this takes nothing returns nothing
local integer gp
local player Fp
local unit Jp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
if((W)and(Z[gp]))then
set Jp=GetTriggerUnit()
call SetUnitState(Jp,UNIT_STATE_MANA,GetUnitState(Jp,UNIT_STATE_MAX_MANA)*rv*.01)
set Jp=null
endif
set Fp=null
endfunction
function fs takes nothing returns nothing
local integer gp
local player Fp
local unit Jp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
if((W)and(Z[gp]))then
set Jp=GetTriggerUnit()
if(GetUnitLifePercent(Jp)<=Cx)then
call SetUnitLifePercentBJ(Jp,Se)
endif
set Jp=null
endif
set Fp=null
endfunction
function Fs takes nothing returns nothing
local integer gp
local player Fp
local player Bp
local unit Jp
set Jp=GetTriggerUnit()
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
if((W)and(Z[gp]))then
call GroupAddUnit(Iv[gp],Jp)
if(ev[gp]==Jp)then
set xv[gp]=(xv[gp]+1)
if(CountUnitsInGroup(Iv[gp])>1)then
call GroupClear(Iv[gp])
call GroupAddUnit(Iv[gp],Jp)
endif
if((xv[gp]==2)and(vv[gp]))then
call lQ(gp,Fp)
endif
else
set xv[gp]=1
set te[gp]=ev[gp]
endif
endif
if(Hx[gp])then
if((bv[gp])and(Nv[gp]))then
set Bp=GetOwningPlayer(Jp)
if(IsUnitAlly(Jp,Fp)or(Bp==Fp))then
else
call CQ(Jp)
endif
endif
endif
set ev[gp]=Jp
set Jp=null
set Fp=null
endfunction
function gs takes nothing returns nothing
local integer gp
local player Fp
local unit Jp
set Jp=GetTriggerUnit()
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
if((W)and(Z[gp]))then
call GroupRemoveUnit(Iv[gp],Jp)
endif
set Jp=null
set Fp=null
endfunction
function Gs takes nothing returns nothing
local unit Jp=GetAttacker()
local unit xP=GetTriggerUnit()
local player Fp=GetOwningPlayer(Jp)
local integer gp=GetPlayerId(Fp)
local player Bp=GetOwningPlayer(xP)
if((W)and(Z[gp]))then
if((IsUnitInGroup(Jp,Gv))and((Bp!=Y)or(Fp==Y)or(Xv==false))and((IsUnitType(xP,UNIT_TYPE_STRUCTURE)==false)or(Hv==false)))then
call SetWidgetLife(xP,1.)
call UnitDamageTargetBJ(Jp,xP,101.,ATTACK_TYPE_CHAOS,DAMAGE_TYPE_NORMAL)
endif
endif
set Fp=null
set Bp=null
set Jp=null
set xP=null
endfunction
function hs takes nothing returns nothing
local integer gp
local player Fp
local unit Jp
local location lp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
if((W)and(Z[gp])and(nv[gp])and(Vv[gp])and(GetIssuedOrderId()==851971))then
set Jp=GetTriggerUnit()
set lp=GetOrderPointLoc()
call SetUnitPositionLoc(Jp,lp)
call RemoveLocation(lp)
endif
set Jp=null
set Fp=null
set lp=null
endfunction
function Hs takes nothing returns nothing
local integer gp
local player Fp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
if((W)and(Z[gp])and(nv[gp])and(Vv[gp]))then
call SetPlayerTechResearchedSwap(GetResearched(),(GetPlayerTechCountSimple(GetResearched(),Fp)+1),Fp)
call IssueImmediateOrderById(GetTriggerUnit(),851976)
endif
set Fp=null
endfunction
function js takes nothing returns nothing
local integer gp
local player Fp
local unit Jp
local unit xP
local location lp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
if((W)and(Z[gp])and(nv[gp])and(Vv[gp]))then
set Jp=GetTriggerUnit()
set lp=GetUnitRallyPoint(Jp)
call CreateNUnitsAtLoc(1,GetTrainedUnitType(),Fp,lp,bj_UNIT_FACING)
set xP=bj_lastCreatedUnit
if(Ov)then
call SetUnitUseFood(xP,false)
endif
call IssueImmediateOrderById(Jp,851976)
if(IsUnitType(xP,UNIT_TYPE_HERO))then
if(bj_meleeTwinkedHeroes[gp]<bj_MELEE_MAX_TWINKED_HEROES)then
call UnitAddItemById(xP,'stwp')
set bj_meleeTwinkedHeroes[gp]=bj_meleeTwinkedHeroes[gp]+1
endif
endif
call RemoveLocation(lp)
set lp=null
set Fp=null
set xP=null
set Jp=null
endif
endfunction
function Js takes nothing returns nothing
local unit Jp=GetAttacker()
local unit xP=GetEnumUnit()
local player Fp=GetOwningPlayer(Jp)
local player Bp=GetOwningPlayer(xP)
if(IsUnitAlly(Jp,Fp)or(Bp==Fp))then
else
call UnitDamageTargetBJ(Jp,xP,(U*w)/100,ATTACK_TYPE_CHAOS,DAMAGE_TYPE_NORMAL)
endif
set Fp=null
set Bp=null
set Jp=null
set xP=null
endfunction
function ks takes nothing returns nothing
local unit Jp=GetAttacker()
local unit xP=GetTriggerUnit()
local player Fp=GetOwningPlayer(Jp)
local integer gp=GetPlayerId(Fp)
local player Bp=GetOwningPlayer(xP)
local group Zp
local location lp
if(jx[gp])then
call UnitDamageTargetBJ(Jp,xP,U,ATTACK_TYPE_CHAOS,DAMAGE_TYPE_NORMAL)
if(Jx[gp])then
set lp=GetUnitLoc(xP)
set Zp=ap(100,lp)
call ForGroup(Zp,function Js)
call DestroyGroup(Zp)
call RemoveLocation(lp)
set Zp=null
set lp=null
endif
endif
set Fp=null
set Bp=null
set Jp=null
set xP=null
endfunction
function Ks takes nothing returns nothing
local unit Jp=GetEnumUnit()
call IssueImmediateOrderById(Jp,pv)
set Jp=null
endfunction
function ls takes nothing returns nothing
local integer gp
local integer eP
local player Fp
local unit Jp
local group Zp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
set eP=GetIssuedOrderId()
if(tv)then
if((Nv[gp])and(bv[gp])and(se[gp]))then
set tv=false
set Jp=GetTriggerUnit()
if((ox==false)or(IsUnitType(Jp,UNIT_TYPE_PEON)==false))then
call GP(gp,false)
set pv=eP
set Zp=Op(Fp,GetUnitTypeId(Jp))
call ForGroup(Zp,function Ks)
call DestroyGroup(Zp)
set Zp=null
endif
call GP(gp,true)
set tv=true
set Jp=null
endif
endif
set Fp=null
endfunction
function Ls takes nothing returns nothing
local unit Jp=GetEnumUnit()
call IssuePointOrderById(Jp,pv,Pv,qv)
set Jp=null
endfunction
function ms takes nothing returns nothing
local unit Jp=GetEnumUnit()
call GroupAddUnit(Kx,Jp)
set lx=lx+1
if(lx==12)then
call GroupPointOrderById(Kx,pv,Pv,qv)
set lx=0
call GroupClear(Kx)
endif
set Jp=null
endfunction
function Ms takes nothing returns nothing
local integer gp
local integer eP
local player Fp
local unit Jp
local group Zp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
set eP=GetIssuedOrderId()
if(tv)then
if((Nv[gp])and(bv[gp])and(se[gp]))then
set tv=false
set Jp=GetTriggerUnit()
if((ox==false)or(IsUnitType(Jp,UNIT_TYPE_PEON)==false))then
call GP(gp,false)
set pv=eP
set Pv=GetOrderPointX()
set qv=GetOrderPointY()
set Zp=Op(Fp,GetUnitTypeId(Jp))
if(hx[gp])then
set lx=0
call GroupClear(Kx)
call ForGroup(Zp,function ms)
if(lx==12)then
else
call GroupPointOrderById(Kx,pv,Pv,qv)
endif
else
call ForGroup(Zp,function Ls)
endif
call DestroyGroup(Zp)
set Zp=null
endif
call GP(gp,true)
set tv=true
set Jp=null
endif
endif
set Fp=null
endfunction
function ps takes nothing returns nothing
local unit Jp=GetEnumUnit()
call IssueTargetOrderById(Jp,pv,Qv)
set Jp=null
endfunction
function Ps takes nothing returns nothing
local integer gp
local integer eP
local player Fp
local unit Jp
local group Zp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
set eP=GetIssuedOrderId()
if(tv)then
if((Nv[gp])and(bv[gp])and(se[gp]))then
set tv=false
set Jp=GetTriggerUnit()
if((ox==false)or(IsUnitType(Jp,UNIT_TYPE_PEON)==false))then
call GP(gp,false)
set pv=eP
set Qv=GetOrderTargetUnit()
if(Qv==null)then
else
set Zp=Op(Fp,GetUnitTypeId(Jp))
call ForGroup(Zp,function ps)
call DestroyGroup(Zp)
set Zp=null
set Jp=null
endif
endif
call GP(gp,true)
set tv=true
set Jp=null
endif
endif
set Fp=null
endfunction
function qs takes unit Jp returns nothing
local real sq
call UnitRemoveBuffs(Jp,false,true)
call UnitResetCooldown(Jp)
set sq=GetUnitLifePercent(Jp)
if(sq<Cv[0])then
call SetUnitLifePercentBJ(Jp,Cv[0])
else
if(sq<Cv[1])then
call SetUnitLifePercentBJ(Jp,Cv[1])
else
if(sq<Cv[2])then
call SetUnitLifePercentBJ(Jp,Cv[2])
else
call SetUnitLifePercentBJ(Jp,100.)
endif
endif
endif
set sq=GetUnitManaPercent(Jp)
if(sq<dv[0])then
call SetUnitManaPercentBJ(Jp,dv[0])
else
if(sq<dv[1])then
call SetUnitManaPercentBJ(Jp,dv[1])
else
if(sq<dv[2])then
call SetUnitManaPercentBJ(Jp,dv[2])
else
call SetUnitManaPercentBJ(Jp,100.)
endif
endif
endif
endfunction
function Qs takes nothing returns nothing
local unit Jp=GetEnumUnit()
call qs(Jp)
set Jp=null
endfunction
function ss takes nothing returns nothing
local integer gp
local player Fp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
if(W)then
if(Z[gp])then
if((nv[gp])and(Vv[gp]))then
call rq(gp,Fp)
else
if(vv[gp])then
call GQ(gp,Fp)
else
if(m)then
call ForGroup(Iv[gp],function Qs)
else
call qs(ev[gp])
endif
endif
endif
endif
endif
set Fp=null
endfunction
function Ss takes nothing returns nothing
local integer gp
local player Fp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
set nv[gp]=false
set Fp=null
call dP(gp,false)
endfunction
function ts takes nothing returns nothing
local integer gp
local player Fp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
set Vv[gp]=false
set Fp=null
call dP(gp,false)
endfunction
function Ts takes nothing returns nothing
local integer gp
local player Fp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
set Nv[gp]=false
call GP(gp,false)
set Fp=null
endfunction
function us takes nothing returns nothing
local integer gp
local player Fp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
set bv[gp]=false
call GP(gp,false)
set Fp=null
endfunction
function Us takes nothing returns nothing
local integer gp
local player Fp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
set xv[gp]=0
if(W)then
if(Z[gp])then
set nv[gp]=true
if(Vv[gp])then
call dP(gp,true)
else
if(vv[gp])then
if(ex[gp]==3)then
set vv[gp]=false
set nv[gp]=false
set ex[gp]=0
call xq(gp,Fp)
else
set ex[gp]=ex[gp]+1
endif
else
call ZP(gp)
endif
endif
endif
else
if(y[gp]==0)then
set y[gp]=1
else
if(y[gp]==1)then
set y[gp]=2
else
set y[gp]=0
endif
endif
endif
set Fp=null
endfunction
function ws takes unit Jp returns nothing
call SetUnitLifePercentBJ(Jp,100)
call SetUnitManaPercentBJ(Jp,100)
endfunction
function Ws takes nothing returns nothing
local unit Jp=GetEnumUnit()
call ws(Jp)
set Jp=null
endfunction
function ys takes nothing returns nothing
local integer gp
local player Fp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
if(W)then
set Vv[gp]=true
if(nv[gp])then
call dP(gp,true)
else
if(Z[gp])then
if(vv[gp])then
call Nq(gp,1,L,true)
else
if((Nv[gp])and(bv[gp]))then
call Dq(gp,1,true)
else
if(m)then
call ForGroup(Iv[gp],function Ws)
else
call ws(ev[gp])
endif
endif
endif
endif
endif
else
if(y[gp]==3)then
if((M==false)or(gp==mx))then
call fP()
set W=true
set Y=Fp
call gP(GetPlayerId(Fp),Fp)
endif
else
set y[gp]=0
endif
endif
set Fp=null
endfunction
function Ys takes unit Jp returns nothing
call UnitSetConstructionProgress(Jp,100)
call UnitSetUpgradeProgress(Jp,100)
call UnitRemoveBuffs(Jp,false,true)
call UnitResetCooldown(Jp)
endfunction
function zs takes nothing returns nothing
local unit Jp=GetEnumUnit()
call Ys(Jp)
set Jp=null
endfunction
function Zs takes nothing returns nothing
local integer gp
local player Fp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
if(W)then
if(Z[gp])then
set Nv[gp]=true
if(bv[gp])then
call GP(gp,true)
else
if(vv[gp])then
set vv[gp]=false
call Nq(gp,0,L,true)
else
if(m)then
call ForGroup(Iv[gp],function zs)
else
call Ys(ev[gp])
endif
endif
endif
endif
else
if(y[gp]==2)then
set y[gp]=3
else
set y[gp]=0
endif
endif
set Fp=null
endfunction
function vS takes unit Jp returns nothing
call ModifyHeroStat(0,Jp,0,L)
call ModifyHeroStat(1,Jp,0,L)
call ModifyHeroStat(2,Jp,0,L)
endfunction
function eS takes nothing returns nothing
local unit Jp=GetEnumUnit()
call vS(Jp)
set Jp=null
endfunction
function xS takes nothing returns nothing
local integer gp
local player Fp
set Fp=GetTriggerPlayer()
set gp=GetPlayerId(Fp)
if(W)then
if(Z[gp])then
set bv[gp]=true
if(Nv[gp])then
call GP(gp,true)
else
if(vv[gp])then
set vv[gp]=false
call Nq(gp,2,L,true)
else
if((nv[gp])and(Vv[gp]))then
if(m)then
call ForGroup(Iv[gp],function eS)
else
call vS(ev[gp])
endif
else
call fp(Fp,K,true)
call hp(Fp,l,true)
endif
endif
endif
endif
else
set y[gp]=0
endif
set Fp=null
endfunction
function oS takes nothing returns nothing
local player Fp=GetTriggerPlayer()
local integer gp=GetPlayerId(Fp)
local button zP=GetClickedButton()
call gQ(gp,Fp,false)
if((W)and(Z[gp]))then
if(zP==Tv[gp])then
call PQ(gp,Fp)
endif
if(zP==Uv[gp])then
call hQ(gp,Fp)
endif
if(zP==wv[gp])then
call HQ(gp,Fp)
endif
if(zP==uv[gp])then
call tQ(gp,Fp)
endif
if(zP==zv[gp])then
call SQ(gp,Fp)
endif
if(zP==Yv[gp])then
call kQ(gp,Fp)
endif
if(zP==yv[gp])then
call mQ(gp,Fp)
endif
if(zP==Wv[gp])then
call LQ(gp,Fp)
endif
if(zP==ve[gp])then
set px=false
call DoNotSaveReplay()
endif
endif
set Fp=null
set zP=null
endfunction
function rS takes nothing returns nothing
local player Fp=GetTriggerPlayer()
local integer gp=GetPlayerId(Fp)
local button zP=GetClickedButton()
call gQ(gp,Fp,false)
if((W)and(Z[gp]))then
if(zP==Tv[gp])then
call xq(gp,Fp)
call PQ(gp,Fp)
endif
if(zP==Uv[gp])then
call Iq(Fp)
call PQ(gp,Fp)
endif
if(zP==wv[gp])then
call SetPlayerStateBJ(Fp,PLAYER_STATE_RESOURCE_FOOD_USED,5)
call PQ(gp,Fp)
endif
if(zP==uv[gp])then
call SetPlayerStateBJ(Fp,PLAYER_STATE_RESOURCE_FOOD_CAP,100)
call PQ(gp,Fp)
endif
if(zP==zv[gp])then
if(GetPlayerHandicapBJ(Fp)==200.)then
call SetPlayerHandicapBJ(Fp,100)
else
call SetPlayerHandicapBJ(Fp,200.)
endif
call PQ(gp,Fp)
endif
if(zP==Yv[gp])then
if(GetPlayerHandicapXPBJ(Fp)==200.)then
call SetPlayerHandicapXPBJ(Fp,100)
else
call SetPlayerHandicapXPBJ(Fp,200.)
endif
call PQ(gp,Fp)
endif
if(zP==yv[gp])then
call fp(Fp,s,true)
call PQ(gp,Fp)
endif
if(zP==Wv[gp])then
call hp(Fp,S,true)
call PQ(gp,Fp)
endif
if(zP==ve[gp])then
call fp(Fp,s,false)
call PQ(gp,Fp)
endif
if(zP==Zv[gp])then
call hp(Fp,S,false)
call PQ(gp,Fp)
endif
if(zP==ee[gp])then
call GQ(gp,Fp)
endif
endif
set Fp=null
set zP=null
endfunction
function iS takes nothing returns nothing
local player Fp=GetTriggerPlayer()
local integer gp=GetPlayerId(Fp)
local button zP=GetClickedButton()
call gQ(gp,Fp,false)
if((W)and(Z[gp]))then
if(zP==Tv[gp])then
call up(Be[gp])
call hQ(gp,Fp)
endif
if(zP==Uv[gp])then
call up(ce[gp])
call hQ(gp,Fp)
endif
if(zP==wv[gp])then
call up(Ce[gp])
call hQ(gp,Fp)
endif
if(zP==uv[gp])then
call up(De[gp])
call hQ(gp,Fp)
endif
if(zP==zv[gp])then
call up(de[gp])
call hQ(gp,Fp)
endif
if(zP==Yv[gp])then
call up(fe[gp])
call hQ(gp,Fp)
endif
if(zP==yv[gp])then
call up(Dx[gp])
call hQ(gp,Fp)
endif
if(zP==Wv[gp])then
call yp(gp,true)
call hQ(gp,Fp)
endif
if(zP==ve[gp])then
call yp(gp,false)
call hQ(gp,Fp)
endif
if(zP==Zv[gp])then
call GQ(gp,Fp)
endif
endif
set Fp=null
set zP=null
endfunction
function aS takes nothing returns nothing
local player Fp=GetTriggerPlayer()
local integer gp=GetPlayerId(Fp)
local button zP=GetClickedButton()
call gQ(gp,Fp,false)
if((W)and(Z[gp]))then
if(zP==Tv[gp])then
call vQ(gp,true)
call HQ(gp,Fp)
endif
if(zP==Uv[gp])then
call Yq(gp,'Apiv',true)
call HQ(gp,Fp)
endif
if(zP==wv[gp])then
call xQ(gp,true)
call HQ(gp,Fp)
endif
if(zP==uv[gp])then
call Yq(gp,'ACm3',true)
call HQ(gp,Fp)
endif
if(zP==zv[gp])then
call Yq(gp,'Atru',true)
call HQ(gp,Fp)
endif
if(zP==Yv[gp])then
call iQ(gp,true)
call HQ(gp,Fp)
endif
if(zP==yv[gp])then
call JQ(gp,Fp)
endif
if(zP==Wv[gp])then
call jQ(gp,Fp)
endif
if((zP==ve[gp])and((hv)or(Fp==Y)))then
call aQ(gp,true)
call HQ(gp,Fp)
endif
if(zP==Zv[gp])then
call RQ(gp)
call HQ(gp,Fp)
endif
if(zP==ee[gp])then
call GQ(gp,Fp)
endif
endif
set Fp=null
set zP=null
endfunction
function nS takes nothing returns nothing
local player Fp=GetTriggerPlayer()
local integer gp=GetPlayerId(Fp)
local button zP=GetClickedButton()
call gQ(gp,Fp,false)
if((W)and(Z[gp]))then
if(zP==Tv[gp])then
call Yq(gp,'ANpi',true)
call jQ(gp,Fp)
endif
if(zP==Uv[gp])then
call Yq(gp,'AEev',true)
call jQ(gp,Fp)
endif
if(zP==wv[gp])then
call Yq(gp,'AHbh',true)
call jQ(gp,Fp)
endif
if(zP==uv[gp])then
call Yq(gp,'AOcr',true)
call jQ(gp,Fp)
endif
if(zP==zv[gp])then
call Yq(gp,'AUts',true)
call jQ(gp,Fp)
endif
if(zP==Yv[gp])then
call Yq(gp,'ANca',true)
call jQ(gp,Fp)
endif
if(zP==yv[gp])then
call Yq(gp,'ANic',true)
call jQ(gp,Fp)
endif
if(zP==Wv[gp])then
call Yq(gp,'AIsr',true)
call jQ(gp,Fp)
endif
if(zP==ve[gp])then
call Yq(gp,'ACes',true)
call jQ(gp,Fp)
endif
if(zP==Zv[gp])then
call HQ(gp,Fp)
endif
if(zP==ee[gp])then
call GQ(gp,Fp)
endif
endif
set Fp=null
set zP=null
endfunction
function VS takes nothing returns nothing
local player Fp=GetTriggerPlayer()
local integer gp=GetPlayerId(Fp)
local button zP=GetClickedButton()
call gQ(gp,Fp,false)
if((W)and(Z[gp]))then
if(zP==Tv[gp])then
call Yq(gp,'AHab',true)
call JQ(gp,Fp)
endif
if(zP==Uv[gp])then
call Yq(gp,'AEah',true)
call JQ(gp,Fp)
endif
if(zP==wv[gp])then
call Yq(gp,'AOae',true)
call JQ(gp,Fp)
endif
if(zP==uv[gp])then
call Yq(gp,'AEar',true)
call JQ(gp,Fp)
endif
if(zP==zv[gp])then
call Yq(gp,'AUau',true)
call JQ(gp,Fp)
endif
if(zP==Yv[gp])then
call Yq(gp,'AUav',true)
call JQ(gp,Fp)
endif
if(zP==yv[gp])then
call Yq(gp,'AHad',true)
call JQ(gp,Fp)
endif
if(zP==Wv[gp])then
call Yq(gp,'ACac',true)
call JQ(gp,Fp)
endif
if(zP==ve[gp])then
call Yq(gp,'Aoar',true)
call JQ(gp,Fp)
endif
if(zP==Zv[gp])then
call Yq(gp,'Aasl',true)
call JQ(gp,Fp)
endif
if(zP==ee[gp])then
call EQ(gp,false)
call JQ(gp,Fp)
endif
endif
set Fp=null
set zP=null
endfunction
function ES takes nothing returns nothing
local integer cp=0
local player Fp=GetTriggerPlayer()
local integer gp=GetPlayerId(Fp)
local button zP=GetClickedButton()
call gQ(gp,Fp,false)
if((W)and(Fp==Y)and(Z[gp]))then
loop
exitwhen cp>11
if(zP==iv[cp])then
if(Z[cp])then
call FP(cp)
else
call gP(cp,Player(cp))
endif
call kQ(gp,Fp)
endif
set cp=cp+1
endloop
if(zP==Tv[gp])then
call GQ(gp,Fp)
endif
endif
set Fp=null
set zP=null
endfunction
function XS takes nothing returns nothing
local player Fp=GetTriggerPlayer()
local integer gp=GetPlayerId(Fp)
local button zP=GetClickedButton()
local integer cp=0
call gQ(gp,Fp,false)
if((W)and(Fp==Y)and(Z[gp]))then
loop
exitwhen cp>12
if(zP==iv[cp])then
set mv=cp
call MQ(gp,Fp)
endif
set cp=cp+1
endloop
if(zP==Tv[gp])then
call GQ(gp,Fp)
endif
endif
set Fp=null
set zP=null
endfunction
function OS takes nothing returns nothing
local player Fp=GetTriggerPlayer()
local integer gp=GetPlayerId(Fp)
local button zP=GetClickedButton()
local player Bp
call gQ(gp,Fp,false)
if((W)and(Fp==Y)and(Z[gp]))then
if(zP==Tv[gp])then
call qQ(gp,Fp)
endif
if(zP==Uv[gp])then
call QQ(gp,Fp)
endif
if(zP==wv[gp])then
set Bp=Player(mv)
if(GetPlayerTaxRate(Bp,Fp,PLAYER_STATE_RESOURCE_GOLD)==0)then
call SetPlayerTaxRate(Bp,Fp,PLAYER_STATE_RESOURCE_GOLD,Rx)
else
call SetPlayerTaxRate(Bp,Fp,PLAYER_STATE_RESOURCE_GOLD,0)
endif
set Bp=null
call MQ(gp,Fp)
endif
if(zP==uv[gp])then
set Bp=Player(mv)
if(GetPlayerTaxRate(Bp,Fp,PLAYER_STATE_RESOURCE_LUMBER)==0)then
call SetPlayerTaxRate(Bp,Fp,PLAYER_STATE_RESOURCE_LUMBER,Rx)
else
call SetPlayerTaxRate(Bp,Fp,PLAYER_STATE_RESOURCE_LUMBER,0)
endif
set Bp=null
call MQ(gp,Fp)
endif
if(zP==ee[gp])then
call mQ(gp,Fp)
endif
endif
set Fp=null
set zP=null
endfunction
function RS takes nothing returns nothing
local player Fp=GetTriggerPlayer()
local integer gp=GetPlayerId(Fp)
local button zP=GetClickedButton()
local integer cp=mv
local player Bp=Player(cp)
call gQ(gp,Fp,false)
if((W)and(Z[gp]))then
if(zP==Tv[gp])then
call xq(cp,Bp)
call qQ(gp,Fp)
endif
if(zP==Uv[gp])then
call Iq(Bp)
call qQ(gp,Fp)
endif
if(zP==wv[gp])then
call SetPlayerStateBJ(Bp,PLAYER_STATE_RESOURCE_FOOD_USED,5)
call qQ(gp,Fp)
endif
if(zP==uv[gp])then
call SetPlayerStateBJ(Bp,PLAYER_STATE_RESOURCE_FOOD_CAP,100)
call qQ(gp,Fp)
endif
if(zP==zv[gp])then
if(GetPlayerHandicapBJ(Bp)==200.)then
call SetPlayerHandicapBJ(Bp,100)
else
call SetPlayerHandicapBJ(Bp,200.)
endif
call qQ(gp,Fp)
endif
if(zP==Yv[gp])then
if(GetPlayerHandicapXPBJ(Bp)==200.)then
call SetPlayerHandicapXPBJ(Bp,100)
else
call SetPlayerHandicapXPBJ(Bp,200.)
endif
call qQ(gp,Fp)
endif
if(zP==yv[gp])then
call fp(Bp,s,true)
call qQ(gp,Fp)
endif
if(zP==Wv[gp])then
call hp(Bp,S,true)
call qQ(gp,Fp)
endif
if(zP==ve[gp])then
call fp(Bp,s,false)
call qQ(gp,Fp)
endif
if(zP==Zv[gp])then
call hp(Bp,S,false)
call qQ(gp,Fp)
endif
if(zP==ee[gp])then
call MQ(gp,Fp)
endif
endif
set Fp=null
set Bp=null
set zP=null
endfunction
function IS takes nothing returns nothing
local player Fp=GetTriggerPlayer()
local integer gp=GetPlayerId(Fp)
local button zP=GetClickedButton()
local integer cp=mv
local player Bp=Player(cp)
call gQ(gp,Fp,false)
if(zP==Tv[gp])then
if(IsPlayerAlly(Bp,Fp))then
call SetPlayerAllianceStateBJ(Bp,Fp,0)
else
call SetPlayerAllianceStateBJ(Bp,Fp,3)
endif
call QQ(gp,Fp)
endif
if(zP==Uv[gp])then
if(GetPlayerAlliance(Bp,Fp,ALLIANCE_SHARED_ADVANCED_CONTROL))then
call SetPlayerAllianceBJ(Bp,ALLIANCE_SHARED_ADVANCED_CONTROL,false,Y)
call SetPlayerAllianceBJ(Bp,ALLIANCE_SHARED_CONTROL,false,Y)
else
call SetPlayerAllianceBJ(Bp,ALLIANCE_SHARED_ADVANCED_CONTROL,true,Y)
call SetPlayerAllianceBJ(Bp,ALLIANCE_SHARED_CONTROL,true,Y)
endif
call QQ(gp,Fp)
endif
if(zP==wv[gp])then
if(GetPlayerAlliance(Bp,Fp,ALLIANCE_SHARED_XP))then
call SetPlayerAllianceBJ(Bp,ALLIANCE_SHARED_XP,false,Y)
else
call SetPlayerAllianceBJ(Bp,ALLIANCE_SHARED_XP,true,Y)
endif
call QQ(gp,Fp)
endif
if(zP==uv[gp])then
if(IsPlayerAlly(Fp,Bp))then
call SetPlayerAllianceStateBJ(Y,Bp,0)
else
call SetPlayerAllianceStateBJ(Y,Bp,2)
endif
call QQ(gp,Fp)
endif
if(zP==zv[gp])then
call MQ(gp,Fp)
endif
set Fp=null
set Bp=null
set zP=null
endfunction
function AS takes nothing returns nothing
local player Fp=GetTriggerPlayer()
local integer gp=GetPlayerId(Fp)
local button zP=GetClickedButton()
local integer cp
local unit Jp=ev[gp]
local player Bp=GetOwningPlayer(Jp)
call gQ(gp,Fp,false)
if(W)and(Z[gp])then
if(zP==Tv[gp])then
call SetHeroLevelBJ(Jp,GetHeroLevel(Jp)+av,false)
endif
if(zP==Uv[gp])then
call ModifyHeroStat(1,Jp,0,T)
call ModifyHeroStat(0,Jp,0,T)
call ModifyHeroStat(2,Jp,0,T)
endif
if(zP==wv[gp])then
call vq(gp,false)
endif
if(zP==uv[gp])then
call AP(Jp,Fp,1)
endif
if(zP==zv[gp])then
call aq(Jp)
endif
if(zP==Yv[gp])then
if(Xv)then
if(Bp!=Y)then
call UnitShareVisionBJ(true,Jp,Fp)
endif
else
call UnitShareVisionBJ(true,Jp,Fp)
endif
endif
if(zP==yv[gp])then
call HQ(gp,Fp)
endif
if(zP==Wv[gp])then
if(Xv)then
if(Bp!=Y)then
call SetUnitOwner(Jp,Fp,true)
endif
else
call SetUnitOwner(Jp,Fp,true)
endif
endif
if(zP==ve[gp])then
call RemoveUnit(Jp)
endif
if(zP==Zv[gp])then
call pQ(gp,Fp)
endif
endif
set Fp=null
set Bp=null
set Jp=null
set zP=null
endfunction
function NS takes nothing returns nothing
local player Fp=GetTriggerPlayer()
local integer gp=GetPlayerId(Fp)
local button zP=GetClickedButton()
call gQ(gp,Fp,false)
if((W)and(Fp==Y)and(Z[gp]))then
if(zP==Tv[gp])then
set m=not(m)
call LQ(gp,Fp)
endif
if(zP==Uv[gp])then
call sQ(gp,Fp)
endif
if(zP==wv[gp])then
set Xv=not(Xv)
call LQ(gp,Fp)
endif
if(zP==uv[gp])then
set Ov=not(Ov)
call LQ(gp,Fp)
endif
if(zP==zv[gp])then
set Rv=not(Rv)
call LQ(gp,Fp)
endif
if(zP==Yv[gp])then
set hv=not(hv)
call LQ(gp,Fp)
endif
if(zP==yv[gp])then
set Hv=not(Hv)
call LQ(gp,Fp)
endif
if(zP==Wv[gp])then
set gv=not(gv)
call LQ(gp,Fp)
endif
if(zP==ve[gp])then
set ox=not(ox)
call LQ(gp,Fp)
endif
if(zP==Zv[gp])then
call GQ(gp,Fp)
endif
endif
set Fp=null
set zP=null
endfunction
function bS takes nothing returns nothing
local player Fp=GetTriggerPlayer()
local integer gp=GetPlayerId(Fp)
local button zP=GetClickedButton()
call gQ(gp,Fp,false)
if(zP==Tv[gp])then
set Te=1
call sQ(gp,Fp)
endif
if(zP==Uv[gp])then
set Te=2
call sQ(gp,Fp)
endif
if(zP==wv[gp])then
set Te=3
call sQ(gp,Fp)
endif
if(zP==uv[gp])then
call LQ(gp,Fp)
endif
set Fp=null
set zP=null
endfunction
function BS takes nothing returns nothing
local player Fp=GetTriggerPlayer()
local integer gp=GetPlayerId(Fp)
local button zP=GetClickedButton()
local integer cp=0
local player Bp
local unit Jp=ev[gp]
call gQ(gp,Fp,false)
if((W)and(Fp==Y)and(Z[gp]))then
loop
exitwhen cp>12
if(zP==iv[cp])then
set Bp=Player(cp)
call SetUnitOwner(ev[gp],Bp,true)
endif
set cp=cp+1
endloop
if(zP==Tv[gp])then
call lQ(gp,Fp)
endif
endif
set Fp=null
set Bp=null
set zP=null
set Jp=null
endfunction
function cS takes nothing returns nothing
local player Fp=GetTriggerPlayer()
local integer gp=GetPlayerId(Fp)
local button zP=GetClickedButton()
call gQ(gp,Fp,false)
if(zP==Tv[gp])then
call zp(Fp)
call tQ(gp,Fp)
endif
if(zP==Uv[gp])then
set se[gp]=not(se[gp])
call tQ(gp,Fp)
endif
if(zP==wv[gp])then
set hx[gp]=not(hx[gp])
call tQ(gp,Fp)
endif
if(zP==uv[gp])then
call mP(gp,not(jx[gp]))
call tQ(gp,Fp)
endif
if(zP==zv[gp])then
set Jx[gp]=not(Jx[gp])
call tQ(gp,Fp)
endif
if(zP==Yv[gp])then
set Hx[gp]=not(Hx[gp])
call tQ(gp,Fp)
endif
if(zP==ee[gp])then
call GQ(gp,Fp)
endif
set Fp=null
set zP=null
endfunction
function CS takes nothing returns nothing
local player Fp=GetTriggerPlayer()
local integer gp=GetPlayerId(Fp)
local button zP=GetClickedButton()
call gQ(gp,Fp,false)
if(zP==Tv[gp])then
call TQ(Fp)
endif
if(zP==Uv[gp])then
call uQ(Fp)
endif
if(zP==wv[gp])then
call UQ(Fp)
endif
if(zP==uv[gp])then
call wQ(Fp)
endif
if(zP==zv[gp])then
call yQ()
endif
if(zP==ee[gp])then
call GQ(gp,Fp)
endif
set Fp=null
set zP=null
endfunction
function this takes nothing returns nothing
local integer cp
local player Bp
local player Fp
set tx=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(tx,EVENT_PLAYER_UNIT_ATTACKED)
call TriggerAddAction(tx,function Gs)
call TriggerAddCondition(Qx,Condition(function as))
set cp=0
loop
exitwhen cp>11
set pe[cp]=CreateTrigger()
call TriggerAddAction(pe[cp],function Rs)
call DisableTrigger(pe[cp])
set re[cp]=CreateTrigger()
call TriggerAddAction(re[cp],function Fs)
call DisableTrigger(re[cp])
set ae[cp]=CreateTrigger()
call TriggerAddAction(ae[cp],function gs)
call DisableTrigger(ae[cp])
set ie[cp]=CreateTrigger()
call TriggerAddAction(ie[cp],function js)
call DisableTrigger(ie[cp])
set ne[cp]=CreateTrigger()
call TriggerAddAction(ne[cp],function Hs)
call DisableTrigger(ne[cp])
set Mv[cp]=CreateTrigger()
call TriggerAddAction(Mv[cp],function hs)
call DisableTrigger(Mv[cp])
set Ve[cp]=CreateTrigger()
call TriggerAddAction(Ve[cp],function ss)
call DisableTrigger(Ve[cp])
set Ee[cp]=CreateTrigger()
call TriggerAddAction(Ee[cp],function Ss)
call DisableTrigger(Ee[cp])
set Xe[cp]=CreateTrigger()
call TriggerAddAction(Xe[cp],function ts)
call DisableTrigger(Xe[cp])
set Oe[cp]=CreateTrigger()
call TriggerAddAction(Oe[cp],function Ts)
call DisableTrigger(Oe[cp])
set Re[cp]=CreateTrigger()
call TriggerAddAction(Re[cp],function us)
call DisableTrigger(Re[cp])
set Ie[cp]=CreateTrigger()
call TriggerAddAction(Ie[cp],function Us)
set Ae[cp]=CreateTrigger()
call TriggerAddAction(Ae[cp],function ys)
set Ne[cp]=CreateTrigger()
call TriggerAddAction(Ne[cp],function Zs)
set be[cp]=CreateTrigger()
call TriggerAddAction(be[cp],function xS)
set Be[cp]=CreateTrigger()
call TriggerAddAction(Be[cp],function bs)
call DisableTrigger(Be[cp])
set ce[cp]=CreateTrigger()
call TriggerAddAction(ce[cp],function Bs)
call DisableTrigger(ce[cp])
set Ce[cp]=CreateTrigger()
call TriggerAddAction(Ce[cp],function cs)
call DisableTrigger(Ce[cp])
set de[cp]=CreateTrigger()
call TriggerAddAction(de[cp],function Cs)
call DisableTrigger(de[cp])
set De[cp]=CreateTrigger()
call TriggerAddAction(De[cp],function this)
call DisableTrigger(De[cp])
set fe[cp]=CreateTrigger()
call TriggerAddAction(fe[cp],function this)
call DisableTrigger(fe[cp])
set Dx[cp]=CreateTrigger()
call TriggerAddAction(Dx[cp],function fs)
call DisableTrigger(Dx[cp])
set Fe[cp]=CreateTrigger()
call TriggerAddAction(Fe[cp],function oS)
set Ye[cp]=CreateTrigger()
call TriggerAddAction(Ye[cp],function rS)
set ge[cp]=CreateTrigger()
call TriggerAddAction(ge[cp],function iS)
set Ge[cp]=CreateTrigger()
call TriggerAddAction(Ge[cp],function aS)
set Le[cp]=CreateTrigger()
call TriggerAddAction(Le[cp],function nS)
set He[cp]=CreateTrigger()
call TriggerAddAction(He[cp],function VS)
set ke[cp]=CreateTrigger()
call TriggerAddAction(ke[cp],function ES)
set Je[cp]=CreateTrigger()
call TriggerAddAction(Je[cp],function XS)
set Ke[cp]=CreateTrigger()
call TriggerAddAction(Ke[cp],function OS)
set Ze[cp]=CreateTrigger()
call TriggerAddAction(Ze[cp],function IS)
set ze[cp]=CreateTrigger()
call TriggerAddAction(ze[cp],function RS)
set le[cp]=CreateTrigger()
call TriggerAddAction(le[cp],function AS)
set je[cp]=CreateTrigger()
call TriggerAddAction(je[cp],function NS)
set vx[cp]=CreateTrigger()
call TriggerAddAction(vx[cp],function bS)
set he[cp]=CreateTrigger()
call TriggerAddAction(he[cp],function BS)
set Gx[cp]=CreateTrigger()
call TriggerAddAction(Gx[cp],function CS)
set gx[cp]=CreateTrigger()
call TriggerAddAction(gx[cp],function cS)
call DisableTrigger(Fe[cp])
call DisableTrigger(ge[cp])
call DisableTrigger(Ye[cp])
call DisableTrigger(Ge[cp])
call DisableTrigger(Le[cp])
call DisableTrigger(He[cp])
call DisableTrigger(ke[cp])
call DisableTrigger(Je[cp])
call DisableTrigger(Ke[cp])
call DisableTrigger(Ze[cp])
call DisableTrigger(ze[cp])
call DisableTrigger(le[cp])
call DisableTrigger(je[cp])
call DisableTrigger(vx[cp])
call DisableTrigger(he[cp])
call DisableTrigger(Gx[cp])
call DisableTrigger(gx[cp])
set Pe[cp]=CreateTrigger()
call TriggerAddAction(Pe[cp],function ls)
set qe[cp]=CreateTrigger()
call TriggerAddAction(qe[cp],function Ms)
set Qe[cp]=CreateTrigger()
call TriggerAddAction(Qe[cp],function Ps)
call DisableTrigger(Pe[cp])
call DisableTrigger(qe[cp])
call DisableTrigger(Qe[cp])
set Bp=Player(cp)
if((GetPlayerController(Bp)==MAP_CONTROL_USER)and(GetPlayerSlotState(Bp)==PLAYER_SLOT_STATE_PLAYING))then
set Iv[cp]=CreateGroup()
call TriggerRegisterPlayerStateEvent(Sx,Bp,PLAYER_STATE_RESOURCE_FOOD_USED,LESS_THAN,0)
call TriggerRegisterPlayerKeyEventBJ(Ae[cp],Bp,0,2)
call TriggerRegisterPlayerKeyEventBJ(Ie[cp],Bp,0,3)
call TriggerRegisterPlayerKeyEventBJ(Ne[cp],Bp,0,0)
call TriggerRegisterPlayerKeyEventBJ(be[cp],Bp,0,1)
call TriggerRegisterPlayerChatEvent(sx,Bp,SubStringBJ(Jv,139,146),false)
call TriggerRegisterPlayerStateEvent(Sx,Bp,PLAYER_STATE_RESOURCE_FOOD_USED,LESS_THAN,0)
set Av[cp]=GetPlayerStartLocationLoc(Bp)
endif
set cp=cp+1
endloop
call DisableTrigger(tx)
set Gv=CreateGroup()
set ov=GetWorldBounds()
set Cv[0]=30.
set Cv[1]=60.
set Cv[2]=90.
set dv[0]=50.
set dv[1]=72.
set dv[2]=95.
set cp=0
loop
exitwhen cp>20
set Xx[cp]=null
set cp=cp+1
endloop
set cp=0
loop
exitwhen(cp>12)
set y[cp]=0
set Z[cp]=false
set vv[cp]=false
set xv[cp]=0
set nv[cp]=false
set Vv[cp]=false
set Ev[cp]=CreateTimer()
set Iv[cp]=CreateGroup()
set Nv[cp]=false
set bv[cp]=false
set Bv[cp]=CreateTimer()
set cv[cp]=false
set lv[cp]=false
set Lv[cp]=0
set oe[cp]=DialogCreate()
set me[cp]=DialogCreate()
set Me[cp]=DialogCreate()
set se[cp]=false
set ex[cp]=0
set xx[cp]=false
set fx[cp]=DialogCreate()
set hx[cp]=false
set Hx[cp]=true
set jx[cp]=false
set Jx[cp]=false
set kx[cp]=CreateTimer()
set cp=cp+1
endloop
set cp=0
loop
exitwhen(cp>3)
set cp=cp+1
endloop
set cp=0
loop
exitwhen(cp>21)
set Ox[cp]=false
set cp=cp+1
endloop
call TriggerRegisterTimerEvent(Px,.01,false)
call TriggerAddAction(Px,function xs)
call TriggerAddAction(qx,function os)
call TriggerAddAction(Qx,function ns)
call TriggerAddAction(sx,function As)
call TriggerAddAction(Sx,function Ns)
call TriggerRegisterAnyUnitEventBJ(tx,EVENT_PLAYER_UNIT_ATTACKED)
call TriggerAddAction(tx,function Gs)
call TriggerRegisterAnyUnitEventBJ(Tx,EVENT_PLAYER_UNIT_ATTACKED)
call TriggerAddAction(Tx,function ks)
call DisableTrigger(Tx)
if(M)then
set rx="主机版"
else
set rx="æ ‡å‡†ç‰ˆ"
endif
set rx=rx+" (æ·»åŠ By |cFFFF0000"+k+"|r)"
if(P=="")then
else
set rx=rx+"|n"+P
endif
call SetPlayerName(Player(12),"ä¸ç«‹ç”Ÿç‰©")
set Bp=null
endfunction
Spoiler:
Code: Select all
call this()
You do not have the required permissions to view the files attached to this post.
5 posts
• Page 1 of 1