PM3.6 - Samus - Common Subroutine 0x107fc

  1. Subroutine(0x9019a7a8)
  2. UnknownEvent { namespace: 0xc, code: 0x29, unk1: 0x0, arguments: [] }
  3. UnknownEvent { namespace: 0x4, code: 0x1a, unk1: 0x0, arguments: [Value(459)] }
  4. UnknownEvent { namespace: 0x4, code: 0x18, unk1: 0x0, arguments: [Variable(Variable { memory_type: RandomAccess, data_type: Int, address: 2 })] }
  5. loop Infinite times:
    1. if (OnGround)
      1. SetEdgeSlide(StayOn)
      2. if (BoolIsTrue RandomAccessBool(EnableActionTransition))
        1. UnknownEvent { namespace: 0x4, code: 0x0, unk1: 0x0, arguments: [Variable(Variable { memory_type: RandomAccess, data_type: Int, address: 0 }), Bool(true)] }
      3. else
        1. UnknownEvent { namespace: 0x4, code: 0x0, unk1: 0x0, arguments: [Variable(Variable { memory_type: RandomAccess, data_type: Int, address: 0 })] }
        2. BoolVariableSetTrue { variable: RandomAccessBool(EnableActionTransition) }
      4. UnknownEvent { namespace: 0x4, code: 0x2, unk1: 0x0, arguments: [Requirement { flip: false, ty: InAir }] }
    2. else
      1. SetEdgeSlide(Airbourne)
      2. if (BoolIsTrue RandomAccessBool(EnableActionTransition))
        1. ChangeSubaction(CaptureDamageHi)
      3. else
        1. ChangeSubactionRestartFrame(CaptureDamageHi)
        2. BoolVariableSetTrue { variable: RandomAccessBool(EnableActionTransition) }
      4. UnknownEvent { namespace: 0x4, code: 0x2, unk1: 0x0, arguments: [Requirement { flip: false, ty: OnGround }] }
    3. LoopRest