PM3.6 - Samus - Common Subroutine 0x901a20d8

  1. CreateInterrupt { interrupt_id: None, action: LandingHeavy, requirement: (OnGround) }
  2. PreviousInterruptAddRequirement((InternalConstantInt(CurrentFrame) LessThanOrEqual scalar(1)))
  3. if ((InternalConstantInt(PreviousAction) GreaterThanOrEqual scalar(67)))
    1. IfStatementAnd ((InternalConstantInt(PreviousAction) LessThanOrEqual scalar(69)))
    2. UnknownEvent { namespace: 0x12, code: 0x0, unk1: 0x0, arguments: [Variable(Variable { memory_type: LongtermAccess, data_type: Int, address: 30 }), Variable(Variable { memory_type: LongtermAccess, data_type: Int, address: 25 })] }
    3. CreateInterrupt { interrupt_id: None, action: LandingHeavy, requirement: (OnGround) }
    4. PreviousInterruptAddRequirement((LongtermAccessInt(CurryRemainingTime) GreaterThan scalar(0)))
    5. PreviousInterruptAddRequirement((LongtermAccessFloat(CurryAngle1) LessThanOrEqual scalar(-0.7)))
  4. else
    1. IntVariableSet { variable: LongtermAccessInt(CurryRemainingTime), value: 0 }
    2. CreateInterrupt { interrupt_id: None, action: LandingHeavy, requirement: (OnGround) }
    3. PreviousInterruptAddRequirement((LongtermAccessFloat(CurryAngle1) LessThanOrEqual scalar(-0.7)))
  5. IntVariableSet { variable: LongtermAccessInt(StarRemainingTime), value: 10 }
  6. CreateInterrupt { interrupt_id: None, action: LandingHeavy, requirement: (OnGround) }
  7. PreviousInterruptAddRequirement(not(Unknown(10019)))
  8. PreviousInterruptAddRequirement(BoolIsTrue RandomAccessBool (0x11))
  9. Return