;--------------------------------------------------------------------------- ; Override common states (use same number to override) : ;--------------------------------------------------------------------------- ;--------------------------------------------------------------------------- ; States that are always executed (use statedef -2) ;--------------------------------------------------------------------------- [Statedef -2] ;===== Draw Variables ===== ;----- Set Defaults ----- [State -2, AngleSet] type = AngleSet trigger1 = MoveType = I trigger1 = Time <= 1 value = 0 [State -2, VarSet] type = VarSet trigger1 = Time <= 1 trigger2 = StateNo = 250 trigger2 = HitPauseTime = 0 trigger2 = Time > 10 trigger3 = StateNo = 272 trigger3 = Time = 5 fv = 5 value = 1 [State -2, VarSet] type = VarSet trigger1 = Time <= 1 trigger2 = StateNo = 250 trigger2 = HitPauseTime = 0 trigger2 = Time > 10 trigger3 = StateNo = 272 trigger3 = Time = 5 fv = 6 value = 1 ;------------------------- ;----- Idle Breathing ----- [State -2, VarSet] type = VarSet trigger1 = MoveType != I trigger1 = StateNo < 2000 trigger1 = StateNo != 211 trigger1 = StateNo != 702 ignorehitpause = 1 fv = 7 value = 0 [State -2, VarSet] type = VarSet triggerall = StateNo < 2000 || StateNo >= 5000 trigger1 = FVar(5) >= 1.05 trigger1 = FVar(6) <= 0.95 trigger2 = Time <= 1 ignorehitpause = 1 fv = 7 value = 1 [State -2, VarSet] type = VarSet triggerall = StateNo < 2000 || StateNo >= 5000 trigger1 = FVar(5) <= 0.95 trigger1 = FVar(6) >= 1.05 ignorehitpause = 1 fv = 7 value = 2 [State -2, VarAdd] type = VarAdd triggerall = Time > 0 triggerall = FVar(7) = 1 trigger1 = MoveType = I trigger1 = StateNo != 195 trigger1 = StateNo != 211 trigger1 = StateNo != 702 trigger2 = StateNo = 702 trigger2 = Anim != 195 ignorehitpause = 1 fv = 5 value = -0.0025 [State -2, VarAdd] type = VarAdd triggerall = Time > 0 triggerall = FVar(7) = 1 trigger1 = MoveType = I trigger1 = StateNo != 195 trigger1 = StateNo != 211 trigger1 = StateNo != 702 trigger2 = StateNo = 702 trigger2 = Anim != 195 ignorehitpause = 1 fv = 6 value = 0.0025 [State -2, VarAdd] type = VarAdd triggerall = Time > 0 triggerall = FVar(7) = 2 trigger1 = MoveType = I trigger1 = StateNo != 195 trigger1 = StateNo != 211 trigger1 = StateNo != 702 trigger2 = StateNo = 702 trigger2 = Anim != 195 ignorehitpause = 1 fv = 5 value = 0.0025 [State -2, VarAdd] type = VarAdd triggerall = Time > 0 triggerall = FVar(7) = 2 trigger1 = MoveType = I trigger1 = StateNo != 195 trigger1 = StateNo != 211 trigger1 = StateNo != 702 trigger2 = StateNo = 702 trigger2 = Anim != 195 ignorehitpause = 1 fv = 6 value = -0.0025 [State -2, VarAdd] type = VarAdd triggerall = Time > 0 triggerall = FVar(7) = 1 triggerall = Anim = 195 trigger1 = MoveType = I trigger1 = StateNo = 195 trigger2 = MoveType = A trigger2 = StateNo = 211 || StateNo = 702 ignorehitpause = 1 fv = 5 value = -0.01 [State -2, VarAdd] type = VarAdd triggerall = Time > 0 triggerall = FVar(7) = 1 triggerall = Anim = 195 trigger1 = MoveType = I trigger1 = StateNo = 195 trigger2 = MoveType = A trigger2 = StateNo = 211 || StateNo = 702 ignorehitpause = 1 fv = 6 value = 0.01 [State -2, VarAdd] type = VarAdd triggerall = Time > 0 triggerall = FVar(7) = 2 triggerall = Anim = 195 trigger1 = MoveType = I trigger1 = StateNo = 195 trigger2 = MoveType = A trigger2 = StateNo = 211 || StateNo = 702 ignorehitpause = 1 fv = 5 value = 0.01 [State -2, VarAdd] type = VarAdd triggerall = Time > 0 triggerall = FVar(7) = 2 triggerall = Anim = 195 trigger1 = MoveType = I trigger1 = StateNo = 195 trigger2 = MoveType = A trigger2 = StateNo = 211 || StateNo = 702 ignorehitpause = 1 fv = 6 value = -0.01 ;------------------------- ;----- Bouncy Attacks ----- [State -2, VarSet] type = VarSet trigger1 = Pos Y >= 0 trigger1 = Vel Y >= 0 trigger1 = StateNo = 201 || StateNo = 206 || StateNo = 232 || StateNo = 422 trigger2 = StateNo = 232 || StateNo = 271 || StateNo = 274 || StateNo = 281 || StateNo = 284 trigger2 = MoveContact trigger3 = StateNo = 250 trigger3 = HitPauseTime > 0 trigger3 = Time > 10 trigger4 = StateNo = 802 trigger4 = Time <= 1 trigger5 = StateNo = 272 trigger5 = Time < 5 ignorehitpause = 1 fv = 5 value = 1.2 [State -2, VarSet] type = VarSet trigger1 = Pos Y >= 0 trigger1 = Vel Y >= 0 trigger1 = StateNo = 201 || StateNo = 206 || StateNo = 232 || StateNo = 422 trigger2 = StateNo = 232 || StateNo = 271 || StateNo = 274 || StateNo = 281 || StateNo = 284 trigger2 = MoveContact trigger3 = StateNo = 250 trigger3 = HitPauseTime > 0 trigger3 = Time > 10 trigger4 = StateNo = 802 trigger4 = Time <= 1 trigger5 = StateNo = 272 trigger5 = Time < 5 ignorehitpause = 1 fv = 6 value = 0.8 [State -2, VarAdd] type = VarAdd trigger1 = StateNo = 223 trigger1 = Time <= 5 ignorehitpause = 1 fv = 5 value = 0.05 [State -2, VarAdd] type = VarAdd trigger1 = StateNo = 223 trigger1 = Time <= 5 ignorehitpause = 1 fv = 6 value = -0.05 [State -2, VarSet] type = VarSet triggerall = Vel Y <= 0 trigger1 = Time = 10 trigger1 = StateNo = 272 trigger2 = Time <= 1 trigger2 = StateNo = 282 trigger3 = StateNo = 283 fv = 5 value = 0.8 [State -2, VarSet] type = VarSet triggerall = Vel Y <= 0 trigger1 = Time = 10 trigger1 = StateNo = 272 trigger2 = Time <= 1 trigger2 = StateNo = 282 trigger3 = StateNo = 283 fv = 6 value = 1.2 [State -2, VarAdd] type = VarAdd triggerall = FVar(5) < 1 trigger1 = Time > 1 trigger1 = StateNo = 282 trigger2 = StateNo = 283 trigger2 = Vel Y > 0 ignorehitpause = 1 fv = 5 value = 0.025 [State -2, VarAdd] type = VarAdd triggerall = FVar(6) > 1 trigger1 = Time > 1 trigger1 = StateNo = 282 trigger2 = StateNo = 283 trigger2 = Vel Y > 0 ignorehitpause = 1 fv = 6 value = -0.025 [State -2, VarSet] type = VarSet trigger1 = Pos Y >= 0 trigger1 = Vel Y >= 0 trigger1 = StateNo = 451 trigger1 = Time <= 10 ignorehitpause = 1 fv = 5 value = 1.3 [State -2, VarSet] type = VarSet trigger1 = Pos Y >= 0 trigger1 = Vel Y >= 0 trigger1 = StateNo = 451 trigger1 = Time <= 10 ignorehitpause = 1 fv = 6 value = 0.7 [State -2, VarAdd] type = VarAdd triggerall = FVar(5) > 1 trigger1 = StateNo = 451 trigger1 = Time >= 15 trigger1 = Time <= 20 trigger2 = StateNo = 802 trigger2 = Time > 10 trigger2 = Time < 15 ignorehitpause = 1 fv = 5 value = -0.05 [State -2, VarAdd] type = VarAdd triggerall = FVar(6) < 1 trigger1 = StateNo = 451 trigger1 = Time >= 15 trigger1 = Time <= 20 trigger2 = StateNo = 802 trigger2 = Time > 10 trigger2 = Time < 15 ignorehitpause = 1 fv = 6 value = 0.05 [State -2, VarAdd] type = VarAdd trigger1 = StateNo = 803 trigger1 = Time >= 20 ignorehitpause = 1 fv = 5 value = -0.005 [State -2, VarAdd] type = VarAdd trigger1 = StateNo = 803 trigger1 = Time >= 20 ignorehitpause = 1 fv = 6 value = -0.0025 [State -2, VarAdd] type = VarAdd trigger1 = StateNo = 813 trigger1 = Time > 0 ignorehitpause = 1 fv = 5 value = -0.004 [State -2, VarAdd] type = VarAdd trigger1 = StateNo = 813 trigger1 = Time > 0 ignorehitpause = 1 fv = 6 value = -0.002 ;------------------------- ;----- Attack Breathing ----- [State -2, VarSet] type = VarSet triggerall = StateNo >= 2000 triggerall = StateNo < 2005 trigger1 = FVar(5) >= 1.05 trigger1 = FVar(6) <= 0.95 trigger2 = Time <= 1 ignorehitpause = 1 fv = 7 value = 1 [State -2, VarSet] type = VarSet triggerall = StateNo >= 2000 triggerall = StateNo < 2005 trigger1 = FVar(5) <= 0.95 trigger1 = FVar(6) >= 1.05 ignorehitpause = 1 fv = 7 value = 2 [State -2, VarAdd] type = VarAdd triggerall = FVar(7) = 1 triggerall = StateNo >= 2000 triggerall = StateNo < 2005 trigger1 = Time > 0 ignorehitpause = 1 fv = 5 value = -0.005 [State -2, VarAdd] type = VarAdd triggerall = FVar(7) = 1 triggerall = StateNo >= 2000 triggerall = StateNo < 2005 trigger1 = Time > 0 ignorehitpause = 1 fv = 6 value = 0.005 [State -2, VarAdd] type = VarAdd triggerall = FVar(7) = 2 triggerall = StateNo >= 2000 triggerall = StateNo < 2005 trigger1 = Time > 0 ignorehitpause = 1 fv = 5 value = 0.005 [State -2, VarAdd] type = VarAdd triggerall = FVar(7) = 2 triggerall = StateNo >= 2000 triggerall = StateNo < 2005 trigger1 = Time > 0 ignorehitpause = 1 fv = 6 value = -0.005 ;------------------------- ;----- Draw Scale Size ----- [State -2, Scale] type = AngleDraw trigger1 = Anim != 190 scale = FVar(5) * Const(size.xscale), FVar(6) * Const(size.yscale) ;------------------------- ========================== ;----- Remove Explods ----- [State -2, RemoveExplod] type = RemoveExplod trigger1 = RoundState = 2 trigger1 = MoveType != A id = 8015 [State -2, RemoveExplod] type = RemoveExplod trigger1 = RoundState = 2 trigger1 = MoveType != A id = 8016 [State -2, RemoveExplod] type = RemoveExplod trigger1 = RoundState = 2 trigger1 = MoveType != A id = 8010 [State -2, RemoveExplod] type = RemoveExplod trigger1 = RoundState = 2 trigger1 = MoveType != A id = 8011 ;------------------------- ;----- Merged with Partner ----- [State -2, VarSet] type = VarSet trigger1 = NumPartner <= 0 ignorehitpause = 1 v = 20 value = 0 [State -2, NotHitBy] type = NotHitBy trigger1 = Var(20) > 0 ignorehitpause = 1 value = SCA time = 1 [State -2, State] type = ChangeState trigger1 = Var(20) > 0 trigger1 = RoundState = 2 trigger1 = StateNo < 800 trigger1 = StateNo != 810 ignorehitpause = 1 value = 810 ;------------------------------ ;----- Kamikaze Successful ----- [State -2, LifeSet] type = LifeSet triggerall = Alive triggerall = Var(25) > 0 triggerall = RoundState = 2 trigger1 = StateNo < 2000 trigger2 = StateNo = 5150 ignorehitpause = 1 value = 0 [State -2, NotHitBy] type = NotHitBy trigger1 = Var(25) > 0 ignorehitpause = 1 value = SCA time = 1 [State -2, State] type = ChangeState triggerall = Var(25) > 0 triggerall = RoundState >= 2 triggerall = RoundState < 4 trigger1 = StateNo < 2000 ignorehitpause = 1 value = 5150 ctrl = 0 [State -2, VarSet] type = VarSet triggerall = Alive triggerall = Var(25) > 0 triggerall = RoundState = 2 trigger1 = StateNo < 2000 trigger2 = StateNo = 5120 ignorehitpause = 1 v = 25 value = 0 ;------------------------------ ;----- Helpers Active ----- [State -2, VarSet] type = VarSet trigger1 = Var(30) > 0 trigger1 = Var(31) > 0 trigger1 = Var(31) >= Power ignorehitpause = 1 v = 31 value = Power [State -2, PowerSet] type = PowerSet trigger1 = Var(30) > 0 trigger2 = Var(31) > 0 trigger3 = NumHelper(500) > 0 trigger4 = NumHelper(600) > 0 ignorehitpause = 1 value = Var(31) [State -2, VarAdd] type = VarAdd trigger1 = Var(30) > 0 trigger2 = Var(31) > 0 trigger3 = NumHelper(500) > 0 trigger4 = NumHelper(600) > 0 ignorehitpause = 1 var(31) = -5 [State -2, VarSet] type = VarSet triggerall = Var(30) > 0 trigger1 = NumHelper(500) <= 0 trigger1 = NumHelper(600) <= 0 trigger2 = Power <= 0 trigger3 = RoundState > 2 ignorehitpause = 1 v = 30 value = 0 [State -2, VarSet] type = VarSet trigger1 = Var(30) <= 0 trigger2 = Var(31) <= 0 trigger3 = Power <= 0 trigger4 = RoundState > 2 ignorehitpause = 1 v = 31 value = 0 ;------------------------- ;===== Metroid Rocket ===== ;----- Hit Sound ----- [State -2, Hit] type = PlaySnd trigger1 = NumProjID(590) > 0 trigger1 = ProjHit(590) = 1 ignorehitpause = 1 value = 1, 1 channel = 1 [State -2, Guard] type = PlaySnd trigger1 = NumProjID(590) > 0 trigger1 = ProjGuarded(590) = 1 ignorehitpause = 1 value = 0, 0 channel = 2 [State -2, Flame] type = PlaySnd trigger1 = NumProjID(590) > 0 trigger1 = ProjHit(590) = 1 ignorehitpause = 1 value = 5, 10 channel = 3 ;-------------------- ;----- Burning Flames ----- [State -2, Helper] type = Helper triggerall = NumHelper(910) <= 0 trigger1 = NumHelper(500) > 0 trigger1 = NumProjID(590) > 0 trigger1 = ProjHit(590) = 1 helpertype = normal size.ground.back = 0 size.ground.front = 0 size.air.back = 0 size.air.front = 0 name = "Burning Flames" ignorehitpause = 1 id = 910 pos = 0, 0 postype = P2 stateno = 910 keyctrl = 0 [State -2, PlaySnd] type = PlaySnd triggerall = NumHelper(910) > 0 trigger1 = NumHelper(500) > 0 trigger1 = NumProjID(590) > 0 trigger1 = ProjHit(590) = 1 ignorehitpause = 1 value = 5, 10 channel = 5 ;------------------------- ;============================== [State -2, Drop] type = TargetDrop trigger1 = Ctrl = 1 trigger1 = NumTarget > 0 trigger1 = MoveType != A ignorehitpause = 1 ;===== Super KO Finish ===== ;---------------------------- ; Helper Flash Effect ;---------------------------- [State -2, Win] type = Helper triggerall = WinKO = 1 triggerall = Var(35) <= 0 triggerall = StateNo < 2000 triggerall = NumHelper(7000) <= 0 trigger1 = HitDefAttr = SCA, HA, HT, HP trigger1 = NumTarget > 0 trigger2 = StateNo = 400 trigger2 = NumTarget > 0 trigger3 = Var(0) >= 2 trigger3 = PrevStateNo = 211 trigger4 = NumHelper(10) > 0 trigger4 = Helper(10), HitDefAttr = SCA, HA, HT, HP trigger4 = Helper(10), NumTarget > 0 trigger4 = Helper(10), MoveContact trigger5 = NumHelper(500) > 0 trigger5 = Helper(500), HitDefAttr = SCA, HA, HT, HP trigger5 = Helper(500), NumTarget > 0 trigger5 = Helper(500), MoveContact trigger6 = NumHelper(600) > 0 trigger6 = Helper(600), HitDefAttr = SCA, HA, HT, HP trigger6 = Helper(600), NumTarget > 0 trigger6 = Helper(600), MoveContact trigger7 = NumProjID(590) > 0 trigger7 = ProjContactTime(590) = 1 name = "Win KO" pos = 0, 0 stateno = 7000 ignorehitpause = 1 helpertype = normal sprpriority = 1 persistent = 0 postype = P1 keyctrl = 0 facing = 1 ownpal = 1 under = 1 id = 7000 ;---------------------------- ; General Code ;---------------------------- [State -2, VarAdd] type = VarAdd triggerall = WinKO = 1 trigger1 = NumHelper(7000) > 0 ignorehitpause = 1 v = 35 value = 1 ;---------------------------- ;============================== ;-------------------- ; Artificial AI [State -2, AI] type = Helper triggerall = Alive triggerall = !Lose triggerall = NumHelper(6666) = 0 trigger1 = Time <= 0 helpertype = normal name = "AI Trigger" id = 6666 pos = 1000, 1000 stateno = 6666 keyctrl = 1 ownpal = 1 ;-------------------- [State -2, 1] type = SprPriority trigger1 = NumHelper(5) > 0 ignorehitpause = 1 value = -5 [State -2, 0] type = AssertSpecial trigger1 = NumHelper(5) > 0 trigger2 = Var(20) > 0 trigger3 = Var(21) > 0 ignorehitpause = 1 flag = Invisible [State -2, Hit] type = HitOverride trigger1 = 1 slot = 0 stateno = 35 attr = SCA, AA, AP, AT ignorehitpause = 1 time = 1 [State -2, Push] type = PlayerPush trigger1 = StateNo != 35 trigger1 = StateNo != 220 ignorehitpause = 1 value = 0 [State -2, Brain] type = Helper triggerall = Alive triggerall = NumHelper(1) = 0 trigger1 = StateNo != 190 trigger1 = Time > 0 trigger2 = StateNo = 190 trigger2 = Time = 220 helpertype = normal name = "Brain" id = 1 pos = 0,-40 postype = p1 stateno = 1 keyctrl = 0 ownpal = 1 [State -2, Body] type = Helper triggerall = Alive triggerall = NumHelper(5) = 0 trigger1 = StateNo != 190 trigger1 = Time > 0 trigger2 = StateNo = 190 trigger2 = Time = 220 helpertype = normal name = "Body" id = 5 pos = 0,-40 postype = p1 stateno = 5 keyctrl = 0 ownpal = 1 [State -2, PosSet] type = PosSet triggerall = Win = 0 triggerall = Alive = 1 triggerall = !DrawGame triggerall = LoseTime = 0 triggerall = StateNo != 190 trigger1 = StateNo = 5900 trigger2 = StateNo = 0 y = -100 [State -2, State] type = ChangeState triggerall = StateNo < 150 triggerall = Life > 0 trigger1 = Lose trigger2 = Ctrl trigger2 = DrawGame trigger3 = Ctrl trigger3 = Win trigger4 = MoveType = A trigger4 = NumTarget = 0 trigger4 = Pos Y < -100 trigger4 = Win value = 0 ctrl = 1 [State -2, State] type = ChangeState triggerall = Ctrl triggerall = Alive triggerall = !Lose triggerall = Var(20) <= 0 triggerall = Var(21) <= 0 trigger1 = StateNo = 0 trigger2 = StateNo > 50 trigger2 = StateNo < 100 trigger3 = StateNo > 1000 trigger3 = StateNo < 5900 value = 30 ctrl = 1 [State -2, State] type = ChangeState triggerall = Var(20) > 0 triggerall = StateNo != 5150 triggerall = StateNo != 5151 trigger1 = !DrawGame trigger1 = Life = 0 trigger1 = Lose value = 5150 [State -2, State] type = ChangeState triggerall = Var(20) <= 0 triggerall = StateNo != 5150 triggerall = StateNo != 5151 trigger1 = !DrawGame trigger1 = Life = 0 trigger1 = Lose value = 5151 [State -2, NoGuard] type = AssertSpecial trigger1 = 1 flag = NoStandGuard flag2 = NoCrouchGuard flag3 = NoAirGuard ;--------------------------------------------------------------------------- ; States that are executed when in self's state file (use statedef -3) ;---------------------------------------------------------------------------