P+ - Knuckles - Action - 0x125
Entry Script
- if ((InternalConstantInt(CurrentSubaction) Equal scalar(501)))
- CreateInterrupt { interrupt_id: None, action: Fall, requirement: (InAir) }
- ChangeHurtBoxStateAll { state: IntangibleNoFlashing }
- ChangeSubactionRestartFrame(SpecialNUpperFist)
- CreateInterrupt { interrupt_id: None, action: Wait, requirement: (AnimationEnd) }
- else
- if ((InternalConstantInt(CurrentSubaction) Equal scalar(500)))
- CreateInterrupt { interrupt_id: None, action: Fall, requirement: (InAir) }
- ChangeSubactionRestartFrame(SpecialNDig_1)
- else
- if ((InternalConstantInt(PreviousAction) NotEqual scalar(293)))
- IntVariableSet { variable: LongtermAccessInt (0x5d), value: 0 }
- ChangeSubactionRestartFrame(SpecialNDrillAirLoop)
- CreateInterrupt { interrupt_id: None, action: 0x125, requirement: (OnGround) }
- PreviousInterruptAddRequirement(not(OnAPassableFloor))
- PreviousInterruptAddRequirement(ButtonHeld value(1))
- CreateInterrupt { interrupt_id: None, action: LandingFallSpecial, requirement: (OnGround) }
- PreviousInterruptAddRequirement(not(OnAPassableFloor))
- PreviousInterruptAddRequirement(not(ButtonHeld value(1)))
- CreateInterrupt { interrupt_id: None, action: FallSpecial, requirement: ((LongtermAccessInt (0x58) GreaterThan scalar(420))) }
- PreviousInterruptAddRequirement((InternalConstantInt(CurrentSubaction) Equal scalar(499)))
- else
- if ((InternalConstantInt(CurrentSubaction) Equal scalar(499)))
- CreateInterrupt { interrupt_id: None, action: Fall, requirement: (InAir) }
- ChangeSubactionRestartFrame(SpecialNDrillGround)
Exit Script
- UnknownEvent { namespace: 0xb, code: 0x2, unk1: 0x0, arguments: [Bool(true)] }