P+ - Falco - Action - 0x115 SpecialLw
Entry Script
- CreateInterrupt { interrupt_id: Some(12608), action: Wait, requirement: (AnimationEnd) }
- PreviousInterruptAddRequirement(OnGround)
- CreateInterrupt { interrupt_id: Some(12609), action: Fall, requirement: (AnimationEnd) }
- PreviousInterruptAddRequirement(InAir)
- if ((InternalConstantInt(PreviousAction) Equal scalar(277)))
- IntVariableSet { variable: LongtermAccessInt (0x45), value: 481 }
- IntVariableSet { variable: LongtermAccessInt (0x46), value: 47 }
- else
- IntVariableSet { variable: LongtermAccessInt (0x45), value: 480 }
- IntVariableSet { variable: LongtermAccessInt (0x46), value: 46 }
- CallEveryFrame { thread_id: 9, script: 0x280bc }
- if ((InternalConstantInt(PreviousAction) NotEqual scalar(280)))
- FloatVariableSet { variable: LongtermAccessFloat(CurryAngle1), value: InternalConstantInt(HorizontalCharacterVelocity) }
- BoolVariableSetTrue { variable: LongtermAccessInt(MeteorCancelWindow) }
- ResetVerticalVelocityAndAcceleration(true)
- if (OnGround)
- ChangeSubactionRestartFrame(SpecialLw)
- FloatVariableMultiply { variable: LongtermAccessFloat(CurryAngle1), value: -0.1 }
- else
- ChangeSubactionRestartFrame(SpecialAirLw)
- FloatVariableMultiply { variable: LongtermAccessFloat(CurryAngle1), value: -0.55 }
- SetAirGround(105)
- DisableMovement(DisableVertical)
- AddVelocity { x_vel: Variable(LongtermAccessFloat(CurryAngle1)), y_vel: Constant(0.0) }
- BoolVariableSetFalse { variable: LongtermAccessInt(MeteorCancelWindow) }
- AsyncWait(3.0)
- DefensiveCollision { ty: Reflect, unk: 0, direction: FrontAndBack }
- else
- DefensiveCollision { ty: Reflect, unk: 0, direction: FrontAndBack }
- EnableInterruptGroup(GroundJump)
- EnableInterruptGroup(AirJump)
- CreateInterrupt { interrupt_id: None, action: SpecialLw, requirement: (ButtonNotPressed value(1)) }
- if ((InternalConstantInt(PreviousAction) NotEqual scalar(280)))
- PreviousInterruptAddRequirement((InternalConstantInt(CurrentFrame) GreaterThan scalar(18)))
- ChangeSubactionRestartFrame(Wait1)
- loop Infinite times:
- DisableMovement(DisableVertical)
- if (OnGround)
- SetAirGround(6)
- SetEdgeSlide(StayOn)
- UnknownEvent { namespace: 0x4, code: 0x0, unk1: 0x0, arguments: [Variable(Variable { memory_type: LongtermAccess, data_type: Int, address: 69 }), Bool(true)] }
- UnknownEvent { namespace: 0x4, code: 0x2, unk1: 0x0, arguments: [Requirement { flip: false, ty: InAir }] }
- else
- SetAirGround(10)
- SetEdgeSlide(Airbourne)
- UnknownEvent { namespace: 0x4, code: 0x0, unk1: 0x0, arguments: [Variable(Variable { memory_type: LongtermAccess, data_type: Int, address: 70 }), Bool(true)] }
- UnknownEvent { namespace: 0x4, code: 0x2, unk1: 0x0, arguments: [Requirement { flip: false, ty: OnGround }] }
- LoopRest
Exit Script