P+ - Falco - Action - 0x115 SpecialLw

Entry Script

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

Exit Script