[State 3300, 4] ;Crowd Control Helper
type = Helper
trigger1 = numtarget(3300)
trigger1 = target(3300),StateNo = 3304 && target(3300),Time > 40
StateNo = 3315
pos = Floor(GameWidth/2),Floor(GameHeight/2) ;center of screen
id = 3315
name = "Crowd Control"
persistent = 0
;CROWD CONTROL
[StateDef 3315]
type = S
movetype = A
physics = N
anim = 9998 ;full-screen clsn1
velset = 0,0
ctrl = 0
[State 3315, Unguardable]
type = AssertSpecial
trigger1 = 1
flag = Unguardable
[State 3315, HitDef]
type = HitDef
trigger1 = 1
attr = SCA, SA
damage = 0,0
hitflag = MA-
priority = 7
pauseTime = 0,0
sparkno = -1
guard.sparkno = -1
hitsound = -1
guardsound = -1
ground.velocity = 0
air.velocity = 0,0
id = 3316
fall.envshake.freq = parent,TeamSide ;provide Jailbot's Teamside
fall.envshake.ampl = parent,ID ;provide Jailbot's PlayerID
numhits = 0
p2StateNo = 3316
affectteam = B ;E-V-E-R-Y-O-N-E
[State 3315, DestroySelf]
type = DestroySelf
trigger1 = parent,StateNo != [3300,3307]
trigger2 = Parent,StateNo = 3303
trigger2 = Parent,anim = 3302
;TAKE A BREAK
[Statedef 3316]
type = U ;use last type
movetype = H
physics = U ;use last physics
ctrl = 0
[State 3316, No auto-turn]
type = AssertSpecial
trigger1 = 1
flag = NoAutoTurn
[State 3316, Set Physics]
type = StateTypeSet
trigger1 = !Time
trigger1 = StateType = A ;in the air
physics = A
[State 3316, Set Physics]
type = StateTypeSet
trigger1 = !time
trigger1 = StateType = S || StateType = C ;on the ground
trigger2 = StateType = L
trigger2 = (anim = [5111,5130]) && !animtime
physics = S
[State 5120, 1a] ;Get up anim (normal)
type = ChangeAnim
triggerall = !time
triggerall = StateType = L
trigger1 = anim != [5111,5119]
trigger2 = !SelfAnimExist(5120 + (anim % 10))
value = 5120
[State 5120, 1b] ;Get up anim (for hit up/diag-up)
type = ChangeAnim
triggerall = !time
triggerall = StateType = L
trigger1 = anim = [5111,5119]
trigger1 = SelfAnimExist(5120 + (anim % 10))
value = 5120 + (anim % 10)
[State 3316, Change to stand]
type = Changeanim
trigger1 = !time
trigger1 = StateType = S || StateType = C ;on the ground
trigger2 = StateType = L
trigger2 = (anim = [5111,5130]) && !animtime
value = 0
[State 3316, Face Jailbot]
type = Changeanim
triggerall = !anim
triggerall = PlayerIDExist(gethitvar(fall.envshake.ampl))
trigger1 = facing = 1
trigger1 = Pos X > PlayerID(gethitvar(fall.envshake.ampl)),Pos X
trigger2 = facing = -1
trigger2 = Pos X < PlayerID(gethitvar(fall.envshake.ampl)),Pos X
value = 5
persistent = 0
[State 3316, Change to stand]
type = Turn
trigger1 = Time
trigger1 = anim = 5 && !animtime
persistent = 0
[State 3316, Change to stand]
type = Changeanim
trigger1 = Time
trigger1 = anim = 5 && !animtime
value = 0
persistent = 0
[State 3316, Come down from jump]
type = Changeanim
triggerall = !time
trigger1 = StateType = A ;in the air
trigger1 = Vel X = 0 ;neutral jump
value = Cond(SelfAnimExist(44),44,47)
[State 3316, Come down from jump FWD]
type = Changeanim
triggerall = !time
trigger1 = StateType = A ;in the air
trigger1 = Vel X > 0 ;jumping forwards
value = Cond(SelfAnimExist(45),45,47)
[State 3316, Come down from jump BACK]
type = Changeanim
triggerall = !time
triggerall = StateType = A ;in the air
trigger1 = Vel X < 0 ;jumping backwards
value = Cond(SelfAnimExist(46),46,47)
[State 3316, Stop Pushing]
type = PlayerPush
trigger1 = PlayerIDExist(gethitvar(fall.envshake.ampl))
trigger1 = (PlayerID(gethitvar(fall.envshake.ampl)),StateNo = [3301,3302]) || PlayerID(gethitvar(fall.envshake.ampl)),StateNo = 3310
value = 0
[State 3316, Dissappear]
type = ChangeAnim2
trigger1 = PlayerIDExist(gethitvar(fall.envshake.ampl))
trigger1 = PlayerID(gethitvar(fall.envshake.ampl)),StateNo = 3301 || PlayerID(gethitvar(fall.envshake.ampl)),StateNo = 3310
value = 9999
persistent = 0
[State 3316, Get behind scene] ;overkill
type = SprPriority
trigger1 = PlayerIDExist(gethitvar(fall.envshake.ampl))
trigger1 = (PlayerID(gethitvar(fall.envshake.ampl)),StateNo = [3301,3302]) || PlayerID(gethitvar(fall.envshake.ampl)),StateNo = 3310
value = -5
persistent = 0
[State 3316, Reappear]
type = ChangeAnim
triggerall = PlayerIDExist(gethitvar(fall.envshake.ampl))
trigger1 = PlayerID(gethitvar(fall.envshake.ampl)),StateNo != [3300,3307]
trigger1 = PlayerID(gethitvar(fall.envshake.ampl)),StateNo != 3310
trigger2 = PlayerID(gethitvar(fall.envshake.ampl)),StateNo = 3303
value = 0
persistent = 0
[State 3316, Revert to normal sprpriority]
type = SprPriority
triggerall = PlayerIDExist(gethitvar(fall.envshake.ampl))
trigger1 = PlayerID(gethitvar(fall.envshake.ampl)),StateNo != [3300,3307]
trigger1 = PlayerID(gethitvar(fall.envshake.ampl)),StateNo != 3310
trigger2 = PlayerID(gethitvar(fall.envshake.ampl)),StateNo = 3303
value = 0
persistent = 0
[State 3316, Selfstate]
type = SelfState
triggerall = PlayerIDExist(gethitvar(fall.envshake.ampl))
trigger1 = PlayerID(gethitvar(fall.envshake.ampl)),StateNo != [3300,3307]
trigger1 = PlayerID(gethitvar(fall.envshake.ampl)),StateNo != 3310
trigger2 = PlayerID(gethitvar(fall.envshake.ampl)),StateNo = 3303
trigger2 = PlayerID(gethitvar(fall.envshake.ampl)),Anim = 3302
value = 0
ctrl = 1