LXP2.1 - Ganon-Mage - Action - 0x120

Entry Script

  1. BoolVariableSetFalse { variable: LongtermAccessBool (0x78) }
  2. FloatVariableSet { variable: LongtermAccessFloat (0x49), value: 0 }
  3. IntVariableSet { variable: LongtermAccessInt(JumpsUsed), value: 1 }
  4. FloatVariableSet { variable: LongtermAccessFloat (0x51), value: 0 }
  5. IntVariableSet { variable: LongtermAccessInt (0x60), value: 19 }
  6. ResetVerticalVelocityAndAcceleration(true)
  7. ResetVerticalVelocityAndAcceleration(false)
  8. if ((InternalConstantInt(PreviousAction) Equal scalar(11)))
    1. FloatVariableSet { variable: RandomAccessFloat (0xa), value: 0.35 }
  9. else
    1. FloatVariableSet { variable: RandomAccessFloat (0xa), value: 0 }
  10. FloatVariableSet { variable: LongtermAccessFloat (0x46), value: InternalConstantInt(HorizontalCharacterVelocity) }
  11. if ((LongtermAccessFloat (0x46) GreaterThanOrEqual scalar(1)))
    1. FloatVariableSet { variable: LongtermAccessFloat (0x46), value: 1 }
  12. if ((LongtermAccessFloat (0x46) LessThanOrEqual scalar(-1)))
    1. FloatVariableSet { variable: LongtermAccessFloat (0x46), value: -1 }
  13. SetVelocity { x_vel: 0.0, y_vel: 0.0 }
  14. AddVelocity { x_vel: Variable(LongtermAccessFloat(Address(70))), y_vel: Variable(RandomAccessFloat(Address(10))) }
  15. if ((InternalConstantInt(PreviousAction) Equal scalar(12)))
    1. IfStatementOr ((InternalConstantInt(PreviousAction) Equal scalar(11)))
    2. IfStatementOr ((InternalConstantInt(PreviousAction) Equal scalar(122)))
  16. else
    1. FloatVariableSet { variable: LongtermAccessFloat (0x73), value: 0 }
  17. BoolVariableSetTrue { variable: LongtermAccessInt (0x61) }
  18. if ((InternalConstantInt(PreviousAction) Equal scalar(286)))
    1. IfStatementOr (BoolIsTrue RandomAccessInt(ThrowDataParam2))
  19. else
    1. IntVariableSet { variable: LongtermAccessInt (0x5c), value: 90 }
  20. CallEveryFrame { thread_id: 9, script: NONE Main 0x4a9c0 }
  21. CreateInterrupt { interrupt_id: Some(10028), action: LandingHeavy, requirement: (OnGround) }
  22. PreviousInterruptAddRequirement(BoolIsTrue RandomAccessBool(EnableLandingLag))
  23. EnableInterruptGroup(AirLanding)
  24. CreateInterrupt { interrupt_id: None, action: SpecialHi, requirement: ((LongtermAccessFloat (0x73) Equal scalar(4))) }
  25. CreateInterrupt { interrupt_id: None, action: SpecialLw, requirement: ((LongtermAccessFloat (0x73) Equal scalar(5))) }
  26. CreateInterrupt { interrupt_id: Some(10148), action: 0x11a, requirement: (ButtonNotPressed value(2)) }
  27. PreviousInterruptAddRequirement((InternalConstantInt(ControlStickYAxis) LessThanOrEqual scalar(0.6625)))
  28. PreviousInterruptAddRequirement((InternalConstantInt(PreviousAction) NotEqual scalar(286)))
  29. PreviousInterruptAddRequirement(not(BoolIsTrue RandomAccessInt(ThrowDataParam2)))
  30. CreateInterrupt { interrupt_id: Some(10148), action: 0x11a, requirement: (ButtonNotPressed value(2)) }
  31. PreviousInterruptAddRequirement((InternalConstantInt(ControlStickYAxis) LessThanOrEqual scalar(0.6625)))
  32. PreviousInterruptAddRequirement(not(BoolIsTrue RandomAccessInt(ThrowDataParam2)))
  33. CreateInterrupt { interrupt_id: Some(10148), action: 0x11a, requirement: (ButtonRelease value(2)) }
  34. PreviousInterruptAddRequirement((InternalConstantInt(ControlStickYAxis) LessThanOrEqual scalar(0.6625)))
  35. PreviousInterruptAddRequirement((InternalConstantInt(PreviousAction) Equal scalar(286)))
  36. CreateInterrupt { interrupt_id: Some(10148), action: 0x11a, requirement: (ButtonPress value(2)) }
  37. PreviousInterruptAddRequirement((InternalConstantInt(ControlStickYAxis) LessThanOrEqual scalar(0.6625)))
  38. PreviousInterruptAddRequirement((InternalConstantInt(PreviousAction) Equal scalar(286)))
  39. CreateInterrupt { interrupt_id: Some(10148), action: 0x11a, requirement: (ButtonRelease value(2)) }
  40. PreviousInterruptAddRequirement((InternalConstantInt(ControlStickYAxis) LessThanOrEqual scalar(0.6625)))
  41. PreviousInterruptAddRequirement(BoolIsTrue RandomAccessInt(ThrowDataParam2))
  42. CreateInterrupt { interrupt_id: Some(10148), action: 0x11a, requirement: (ButtonPress value(2)) }
  43. PreviousInterruptAddRequirement((InternalConstantInt(ControlStickYAxis) LessThanOrEqual scalar(0.6625)))
  44. PreviousInterruptAddRequirement(BoolIsTrue RandomAccessInt(ThrowDataParam2))
  45. CreateInterrupt { interrupt_id: Some(10149), action: 0x11a, requirement: ((LongtermAccessInt (0x5c) LessThanOrEqual scalar(0))) }
  46. DisableMovement(DisableVertical)
  47. SetAirGround(10)
  48. loop Infinite times:
    1. if (ButtonPress value(0))
      1. IfStatementAnd (not(Unknown(54) value(24)))
      2. IntVariableSet { variable: LongtermAccessInt(JumpsUsed), value: 2 }
      3. FloatVariableSet { variable: LongtermAccessFloat (0x73), value: 2 }
      4. if ((InternalConstantInt(ControlStickXAxisAbsolute) LessThan scalar(0.25)))
        1. IfStatementAnd ((InternalConstantInt(ControlStickYAxisAbsolute) LessThan scalar(0.25)))
        2. ChangeSubactionRestartFrame(AttackAirN)
        3. UnknownEvent { namespace: 0xc, code: 0x1c, unk1: 0x0, arguments: [Value(2), Value(14)] }
      5. else
        1. if (StickDirectionPressed)
          1. if ((InternalConstantInt(ControlStickXAxisRelative) GreaterThanOrEqual scalar(0)))
            1. ChangeSubactionRestartFrame(AttackAirF)
            2. UnknownEvent { namespace: 0xc, code: 0x1c, unk1: 0x0, arguments: [Value(2), Value(15)] }
          2. else
            1. ChangeSubactionRestartFrame(AttackAirB_1)
            2. UnknownEvent { namespace: 0xc, code: 0x1c, unk1: 0x0, arguments: [Value(2), Value(16)] }
        2. else
          1. if ((InternalConstantInt(ControlStickYAxis) GreaterThanOrEqual scalar(0)))
            1. ChangeSubactionRestartFrame(AttackAirHi_1)
            2. UnknownEvent { namespace: 0xc, code: 0x1c, unk1: 0x0, arguments: [Value(2), Value(17)] }
          2. else
            1. ChangeSubactionRestartFrame(AttackAirLw_1)
            2. UnknownEvent { namespace: 0xc, code: 0x1c, unk1: 0x0, arguments: [Value(2), Value(18)] }
      6. DisableInterruptGroup(AirSpecial)
      7. DisableInterruptGroup(AirAttack)
      8. DisableInterruptGroup(AirTreadjump)
      9. DisableInterrupt(10148)
      10. DisableInterrupt(10149)
      11. EnableInterrupt(10028)
      12. UnknownEvent { namespace: 0x4, code: 0x2, unk1: 0x0, arguments: [Requirement { flip: false, ty: ButtonPress }, Value(0)] }
      13. UnknownEvent { namespace: 0x4, code: 0x3, unk1: 0x0, arguments: [Requirement { flip: false, ty: Comparison }, Variable(Variable { memory_type: LongtermAccess, data_type: Float, address: 115 }), Value(2), Scalar(3.0)] }
      14. UnknownEvent { namespace: 0x4, code: 0x2, unk1: 0x0, arguments: [Requirement { flip: false, ty: ButtonPress }, Value(1)] }
      15. UnknownEvent { namespace: 0x4, code: 0x3, unk1: 0x0, arguments: [Requirement { flip: false, ty: Comparison }, Variable(Variable { memory_type: LongtermAccess, data_type: Float, address: 115 }), Value(2), Scalar(3.0)] }
      16. UnknownEvent { namespace: 0x4, code: 0x1, unk1: 0x0, arguments: [Value(22), Requirement { flip: false, ty: AnimationEnd }] }
    2. else
      1. if (ButtonPress value(1))
        1. IfStatementAnd (not(Unknown(54) value(24)))
        2. IntVariableSet { variable: LongtermAccessInt(JumpsUsed), value: 2 }
        3. if ((InternalConstantInt(ControlStickXAxisRelative) GreaterThanOrEqual scalar(0.6)))
          1. IfStatementAnd ((InternalConstantInt(ControlStickYAxisAbsolute) LessThan scalar(0.55)))
          2. DisableInterruptGroup(AirSpecial)
          3. ChangeSubactionRestartFrame(SpecialAirS)
          4. UnknownEvent { namespace: 0xc, code: 0x1c, unk1: 0x0, arguments: [Value(2), Value(14)] }
        4. else
          1. if ((InternalConstantInt(ControlStickXAxisRelative) LessThanOrEqual scalar(-0.6)))
            1. IfStatementAnd ((InternalConstantInt(ControlStickYAxisAbsolute) LessThan scalar(0.55)))
            2. DisableInterruptGroup(AirSpecial)
            3. UnknownEvent { namespace: 0x20, code: 0x0, unk1: 0x0, arguments: [Variable(Variable { memory_type: InternalConstant, data_type: Int, address: 43029 }), Bool(false)] }
            4. ReverseDirection
            5. ChangeSubactionRestartFrame(SpecialAirS)
            6. UnknownEvent { namespace: 0xc, code: 0x1c, unk1: 0x0, arguments: [Value(2), Value(14)] }
          2. else
            1. if ((InternalConstantInt(ControlStickYAxis) GreaterThanOrEqual scalar(0.55)))
              1. if (not(BoolIsTrue LongtermAccessInt (0x75)))
                1. IntVariableSet { variable: LongtermAccessInt (0x5c), value: 0 }
                2. BoolVariableSetFalse { variable: LongtermAccessInt (0x61) }
                3. UnknownEvent { namespace: 0x11, code: 0x15, unk1: 0x0, arguments: [Value(118), Bool(false), Bool(true)] }
                4. EnableInterruptGroup(AirSpecial)
                5. FloatVariableSet { variable: LongtermAccessFloat (0x73), value: 4 }
            2. else
              1. if ((InternalConstantInt(ControlStickYAxis) LessThanOrEqual scalar(-0.55)))
                1. IntVariableSet { variable: LongtermAccessInt (0x5c), value: 0 }
                2. BoolVariableSetFalse { variable: LongtermAccessInt (0x61) }
                3. UnknownEvent { namespace: 0x11, code: 0x15, unk1: 0x0, arguments: [Value(118), Bool(false), Bool(true)] }
                4. EnableInterruptGroup(AirSpecial)
                5. FloatVariableSet { variable: LongtermAccessFloat (0x73), value: 5 }
              2. else
                1. IntVariableSet { variable: LongtermAccessInt (0x5c), value: 0 }
                2. BoolVariableSetFalse { variable: LongtermAccessInt (0x61) }
                3. UnknownEvent { namespace: 0x11, code: 0x15, unk1: 0x0, arguments: [Value(118), Bool(false), Bool(true)] }
                4. EnableInterruptGroup(AirSpecial)
                5. CreateInterrupt { interrupt_id: None, action: SpecialN, requirement: (CharacterExists) }
        5. DisableInterruptGroup(AirSpecial)
        6. DisableInterruptGroup(AirAttack)
        7. DisableInterruptGroup(AirTreadjump)
        8. DisableInterrupt(10148)
        9. DisableInterrupt(10149)
        10. EnableInterrupt(10028)
        11. UnknownEvent { namespace: 0x4, code: 0x1, unk1: 0x0, arguments: [Value(22), Requirement { flip: false, ty: AnimationEnd }] }
      2. else
        1. if (BoolIsTrue LongtermAccessInt (0x61))
          1. DisableInterruptGroup(AirSpecial)
          2. DisableInterruptGroup(AirAttack)
          3. DisableInterruptGroup(AirTreadjump)
          4. if ((LongtermAccessFloat (0x73) Equal scalar(1)))
            1. FloatVariableSet { variable: LongtermAccessFloat (0x73), value: 2 }
            2. ChangeSubactionRestartFrame(JumpAerialFloat)
          5. else
            1. if ((LongtermAccessFloat (0x73) Equal scalar(0)))
              1. IfStatementAnd ((InternalConstantInt(PreviousAction) Equal scalar(51)))
              2. FloatVariableSet { variable: LongtermAccessFloat (0x73), value: 2 }
            2. else
              1. ChangeSubactionRestartFrame(SpecialLwFloat)
          6. UnknownEvent { namespace: 0xc, code: 0x1c, unk1: 0x0, arguments: [Value(0), Value(0)] }
          7. UnknownEvent { namespace: 0x4, code: 0x2, unk1: 0x0, arguments: [Requirement { flip: false, ty: ButtonPress }, Value(0)] }
          8. if (BoolIsTrue LongtermAccessInt (0x75))
            1. UnknownEvent { namespace: 0x4, code: 0x2, unk1: 0x0, arguments: [Requirement { flip: false, ty: ButtonPress }, Value(1)] }
            2. UnknownEvent { namespace: 0x4, code: 0x3, unk1: 0x0, arguments: [Requirement { flip: true, ty: Comparison }, Variable(Variable { memory_type: InternalConstant, data_type: Int, address: 1018 }), Value(4), Scalar(0.55)] }
          9. else
            1. UnknownEvent { namespace: 0x4, code: 0x2, unk1: 0x0, arguments: [Requirement { flip: false, ty: ButtonPress }, Value(1)] }
          10. UnknownEvent { namespace: 0x4, code: 0x2, unk1: 0x0, arguments: [Requirement { flip: false, ty: AnimationEnd }] }
          11. UnknownEvent { namespace: 0x4, code: 0x3, unk1: 0x0, arguments: [Requirement { flip: false, ty: Comparison }, Variable(Variable { memory_type: LongtermAccess, data_type: Float, address: 115 }), Value(2), Scalar(2.0)] }
          12. EnableInterrupt(10148)
          13. EnableInterrupt(10149)
          14. DisableInterrupt(10028)
        2. else
          1. DisableMovement2(DisableVertical)
          2. CreateInterrupt { interrupt_id: None, action: FallSpecial, requirement: (InAir) }
          3. CreateInterrupt { interrupt_id: None, action: LandingHeavy, requirement: (OnGround) }
    3. LoopRest
    4. if ((LongtermAccessFloat (0x73) Equal scalar(3)))
      1. FloatVariableSet { variable: LongtermAccessFloat (0x73), value: 2 }

Exit Script

  1. RemoveFlashEffect