diff --git a/asm/MetroidPrime/Enemies/CAtomicAlpha.s b/asm/MetroidPrime/Enemies/CAtomicAlpha.s index 44938533..0c58a9e3 100644 --- a/asm/MetroidPrime/Enemies/CAtomicAlpha.s +++ b/asm/MetroidPrime/Enemies/CAtomicAlpha.s @@ -531,7 +531,7 @@ lbl_80245004: /* 80245014 00241F74 7F A4 EB 78 */ mr r4, r29 /* 80245018 00241F78 7F C5 F3 78 */ mr r5, r30 /* 8024501C 00241F7C 7F E6 FB 78 */ mr r6, r31 -/* 80245020 00241F80 4B E3 3E 91 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 80245020 00241F80 4B E3 3E 91 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_80245024: /* 80245024 00241F84 E3 E1 01 28 */ psq_l f31, 296(r1), 0, qr0 /* 80245028 00241F88 80 01 01 34 */ lwz r0, 0x134(r1) diff --git a/asm/MetroidPrime/Enemies/CAtomicBeta.s b/asm/MetroidPrime/Enemies/CAtomicBeta.s index e9c3211e..0dc6d3d1 100644 --- a/asm/MetroidPrime/Enemies/CAtomicBeta.s +++ b/asm/MetroidPrime/Enemies/CAtomicBeta.s @@ -39,7 +39,7 @@ lbl_803E8E4C: .4byte FluidFXThink__3CAiFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager .4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager .4byte GetSortingBounds__6CActorCFRC13CStateManager - .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType + .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef .4byte GetCollisionPrimitive__13CPhysicsActorCFv .4byte GetPrimitiveTransform__13CPhysicsActorCFv .4byte CollidedWith__10CPatternedFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager diff --git a/asm/MetroidPrime/Enemies/CBabygoth.s b/asm/MetroidPrime/Enemies/CBabygoth.s index 046f5582..41c6be38 100644 --- a/asm/MetroidPrime/Enemies/CBabygoth.s +++ b/asm/MetroidPrime/Enemies/CBabygoth.s @@ -6177,7 +6177,7 @@ lbl_80222830: /* 80222840 0021F7A0 7F 84 E3 78 */ mr r4, r28 /* 80222844 0021F7A4 7F A5 EB 78 */ mr r5, r29 /* 80222848 0021F7A8 7F C6 F3 78 */ mr r6, r30 -/* 8022284C 0021F7AC 4B E5 66 65 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 8022284C 0021F7AC 4B E5 66 65 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_80222850: /* 80222850 0021F7B0 E3 E1 01 C8 */ psq_l f31, 456(r1), 0, qr0 /* 80222854 0021F7B4 CB E1 01 C0 */ lfd f31, 0x1c0(r1) diff --git a/asm/MetroidPrime/Enemies/CBeetle.s b/asm/MetroidPrime/Enemies/CBeetle.s index 763da442..50279429 100644 --- a/asm/MetroidPrime/Enemies/CBeetle.s +++ b/asm/MetroidPrime/Enemies/CBeetle.s @@ -2326,7 +2326,7 @@ lbl_800E4A5C: /* 800E4A6C 000E19CC 7F A4 EB 78 */ mr r4, r29 /* 800E4A70 000E19D0 7F C5 F3 78 */ mr r5, r30 /* 800E4A74 000E19D4 7F E6 FB 78 */ mr r6, r31 -/* 800E4A78 000E19D8 4B F9 44 39 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 800E4A78 000E19D8 4B F9 44 39 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_800E4A7C: /* 800E4A7C 000E19DC E3 E1 01 58 */ psq_l f31, 344(r1), 0, qr0 /* 800E4A80 000E19E0 CB E1 01 50 */ lfd f31, 0x150(r1) diff --git a/asm/MetroidPrime/Enemies/CBloodFlower.s b/asm/MetroidPrime/Enemies/CBloodFlower.s index aa28f537..1eda8dd2 100644 --- a/asm/MetroidPrime/Enemies/CBloodFlower.s +++ b/asm/MetroidPrime/Enemies/CBloodFlower.s @@ -958,7 +958,7 @@ lbl_80119548: /* 80119558 001164B8 7F 84 E3 78 */ mr r4, r28 /* 8011955C 001164BC 7F A5 EB 78 */ mr r5, r29 /* 80119560 001164C0 7F C6 F3 78 */ mr r6, r30 -/* 80119564 001164C4 4B F5 F9 4D */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 80119564 001164C4 4B F5 F9 4D */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_80119568: /* 80119568 001164C8 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 /* 8011956C 001164CC CB E1 00 50 */ lfd f31, 0x50(r1) diff --git a/asm/MetroidPrime/Enemies/CBurrower.s b/asm/MetroidPrime/Enemies/CBurrower.s index 62c8d063..254b82fc 100644 --- a/asm/MetroidPrime/Enemies/CBurrower.s +++ b/asm/MetroidPrime/Enemies/CBurrower.s @@ -577,7 +577,7 @@ lbl_8026FFF0: /* 80270000 0026CF60 7F A4 EB 78 */ mr r4, r29 /* 80270004 0026CF64 7F C5 F3 78 */ mr r5, r30 /* 80270008 0026CF68 7F E6 FB 78 */ mr r6, r31 -/* 8027000C 0026CF6C 4B E0 8E A5 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 8027000C 0026CF6C 4B E0 8E A5 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_80270010: /* 80270010 0026CF70 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 /* 80270014 0026CF74 CB E1 00 D0 */ lfd f31, 0xd0(r1) diff --git a/asm/MetroidPrime/Enemies/CChozoGhost.s b/asm/MetroidPrime/Enemies/CChozoGhost.s index 9ce451be..228515b1 100644 --- a/asm/MetroidPrime/Enemies/CChozoGhost.s +++ b/asm/MetroidPrime/Enemies/CChozoGhost.s @@ -765,7 +765,7 @@ lbl_8013F92C: /* 8013F93C 0013C89C 7F A4 EB 78 */ mr r4, r29 /* 8013F940 0013C8A0 7F C5 F3 78 */ mr r5, r30 /* 8013F944 0013C8A4 7F E6 FB 78 */ mr r6, r31 -/* 8013F948 0013C8A8 4B F3 95 69 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 8013F948 0013C8A8 4B F3 95 69 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_8013F94C: /* 8013F94C 0013C8AC 2C 1F 00 06 */ cmpwi r31, 6 /* 8013F950 0013C8B0 40 82 00 0C */ bne lbl_8013F95C diff --git a/asm/MetroidPrime/Enemies/CDrone.s b/asm/MetroidPrime/Enemies/CDrone.s index c18810da..f4233c79 100644 --- a/asm/MetroidPrime/Enemies/CDrone.s +++ b/asm/MetroidPrime/Enemies/CDrone.s @@ -8267,7 +8267,7 @@ lbl_80165EC8: /* 80165ED8 00162E38 7F A4 EB 78 */ mr r4, r29 /* 80165EDC 00162E3C 7F C5 F3 78 */ mr r5, r30 /* 80165EE0 00162E40 7F E6 FB 78 */ mr r6, r31 -/* 80165EE4 00162E44 4B F1 2F CD */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 80165EE4 00162E44 4B F1 2F CD */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_80165EE8: /* 80165EE8 00162E48 CB E1 00 88 */ lfd f31, 0x88(r1) /* 80165EEC 00162E4C BB 61 00 74 */ lmw r27, 0x74(r1) diff --git a/asm/MetroidPrime/Enemies/CElitePirate.s b/asm/MetroidPrime/Enemies/CElitePirate.s index 84991a1f..502ce2f6 100644 --- a/asm/MetroidPrime/Enemies/CElitePirate.s +++ b/asm/MetroidPrime/Enemies/CElitePirate.s @@ -6228,7 +6228,7 @@ lbl_8022C7A8: /* 8022C7B8 00229718 7F A4 EB 78 */ mr r4, r29 /* 8022C7BC 0022971C 7F C5 F3 78 */ mr r5, r30 /* 8022C7C0 00229720 7F E6 FB 78 */ mr r6, r31 -/* 8022C7C4 00229724 4B E4 C6 ED */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 8022C7C4 00229724 4B E4 C6 ED */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_8022C7C8: /* 8022C7C8 00229728 E3 E1 01 D8 */ psq_l f31, 472(r1), 0, qr0 /* 8022C7CC 0022972C CB E1 01 D0 */ lfd f31, 0x1d0(r1) diff --git a/asm/MetroidPrime/Enemies/CEyeBall.s b/asm/MetroidPrime/Enemies/CEyeBall.s index 93083a78..b59ebcd8 100644 --- a/asm/MetroidPrime/Enemies/CEyeBall.s +++ b/asm/MetroidPrime/Enemies/CEyeBall.s @@ -1088,7 +1088,7 @@ lbl_80225258: /* 80225268 002221C8 7F 84 E3 78 */ mr r4, r28 /* 8022526C 002221CC 7F A5 EB 78 */ mr r5, r29 /* 80225270 002221D0 7F C6 F3 78 */ mr r6, r30 -/* 80225274 002221D4 4B E5 3C 3D */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 80225274 002221D4 4B E5 3C 3D */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_80225278: /* 80225278 002221D8 CB E1 00 88 */ lfd f31, 0x88(r1) /* 8022527C 002221DC BB 61 00 74 */ lmw r27, 0x74(r1) diff --git a/asm/MetroidPrime/Enemies/CFireFlea.s b/asm/MetroidPrime/Enemies/CFireFlea.s index f79df0ea..a12f1034 100644 --- a/asm/MetroidPrime/Enemies/CFireFlea.s +++ b/asm/MetroidPrime/Enemies/CFireFlea.s @@ -36,7 +36,7 @@ lbl_803E1C88: .4byte FluidFXThink__3CAiFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager .4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager .4byte GetSortingBounds__6CActorCFRC13CStateManager - .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType + .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef .4byte GetCollisionPrimitive__13CPhysicsActorCFv .4byte GetPrimitiveTransform__13CPhysicsActorCFv .4byte CollidedWith__10CPatternedFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager diff --git a/asm/MetroidPrime/Enemies/CFlaahgra.s b/asm/MetroidPrime/Enemies/CFlaahgra.s index 0c90ed2f..83847fce 100644 --- a/asm/MetroidPrime/Enemies/CFlaahgra.s +++ b/asm/MetroidPrime/Enemies/CFlaahgra.s @@ -6447,7 +6447,7 @@ lbl_801B2AF8: /* 801B2B08 001AFA68 7F 84 E3 78 */ mr r4, r28 /* 801B2B0C 001AFA6C 7F A5 EB 78 */ mr r5, r29 /* 801B2B10 001AFA70 7F C6 F3 78 */ mr r6, r30 -/* 801B2B14 001AFA74 4B EC 63 9D */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 801B2B14 001AFA74 4B EC 63 9D */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_801B2B18: /* 801B2B18 001AFA78 E3 E1 05 38 */ psq_l f31, 1336(r1), 0, qr0 /* 801B2B1C 001AFA7C CB E1 05 30 */ lfd f31, 0x530(r1) diff --git a/asm/MetroidPrime/Enemies/CFlaahgraTentacle.s b/asm/MetroidPrime/Enemies/CFlaahgraTentacle.s index 9b6aef0d..8ea22acd 100644 --- a/asm/MetroidPrime/Enemies/CFlaahgraTentacle.s +++ b/asm/MetroidPrime/Enemies/CFlaahgraTentacle.s @@ -32,7 +32,7 @@ lbl_803E6408: .4byte FluidFXThink__3CAiFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager .4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager .4byte GetSortingBounds__6CActorCFRC13CStateManager - .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType + .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef .4byte GetCollisionPrimitive__13CPhysicsActorCFv .4byte GetPrimitiveTransform__13CPhysicsActorCFv .4byte CollidedWith__10CPatternedFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager diff --git a/asm/MetroidPrime/Enemies/CFlickerBat.s b/asm/MetroidPrime/Enemies/CFlickerBat.s index 894cf724..7866163c 100644 --- a/asm/MetroidPrime/Enemies/CFlickerBat.s +++ b/asm/MetroidPrime/Enemies/CFlickerBat.s @@ -1230,7 +1230,7 @@ lbl_8013112C: /* 8013113C 0012E09C 7F 84 E3 78 */ mr r4, r28 /* 80131140 0012E0A0 7F A5 EB 78 */ mr r5, r29 /* 80131144 0012E0A4 7F C6 F3 78 */ mr r6, r30 -/* 80131148 0012E0A8 4B F4 7D 69 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 80131148 0012E0A8 4B F4 7D 69 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_8013114C: /* 8013114C 0012E0AC CB E1 00 28 */ lfd f31, 0x28(r1) /* 80131150 0012E0B0 BB 61 00 14 */ lmw r27, 0x14(r1) diff --git a/asm/MetroidPrime/Enemies/CFlyingPirate.s b/asm/MetroidPrime/Enemies/CFlyingPirate.s index 145be35c..f512f93f 100644 --- a/asm/MetroidPrime/Enemies/CFlyingPirate.s +++ b/asm/MetroidPrime/Enemies/CFlyingPirate.s @@ -5657,7 +5657,7 @@ lbl_801F8AF4: /* 801F8B04 001F5A64 7F 24 CB 78 */ mr r4, r25 /* 801F8B08 001F5A68 7F 45 D3 78 */ mr r5, r26 /* 801F8B0C 001F5A6C 7F 66 DB 78 */ mr r6, r27 -/* 801F8B10 001F5A70 4B E8 03 A1 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 801F8B10 001F5A70 4B E8 03 A1 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_801F8B14: /* 801F8B14 001F5A74 E3 E1 01 F8 */ psq_l f31, 504(r1), 0, qr0 /* 801F8B18 001F5A78 CB E1 01 F0 */ lfd f31, 0x1f0(r1) diff --git a/asm/MetroidPrime/Enemies/CIceSheegoth.s b/asm/MetroidPrime/Enemies/CIceSheegoth.s index cc12ff75..64629c60 100644 --- a/asm/MetroidPrime/Enemies/CIceSheegoth.s +++ b/asm/MetroidPrime/Enemies/CIceSheegoth.s @@ -7481,7 +7481,7 @@ lbl_801A490C: /* 801A491C 001A187C 7F A4 EB 78 */ mr r4, r29 /* 801A4920 001A1880 7F C5 F3 78 */ mr r5, r30 /* 801A4924 001A1884 7F E6 FB 78 */ mr r6, r31 -/* 801A4928 001A1888 4B ED 45 89 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 801A4928 001A1888 4B ED 45 89 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_801A492C: /* 801A492C 001A188C E3 E1 01 D8 */ psq_l f31, 472(r1), 0, qr0 /* 801A4930 001A1890 CB E1 01 D0 */ lfd f31, 0x1d0(r1) diff --git a/asm/MetroidPrime/Enemies/CJellyZap.s b/asm/MetroidPrime/Enemies/CJellyZap.s index 5616b375..32de628c 100644 --- a/asm/MetroidPrime/Enemies/CJellyZap.s +++ b/asm/MetroidPrime/Enemies/CJellyZap.s @@ -1343,7 +1343,7 @@ lbl_801D886C: /* 801D887C 001D57DC 7F A4 EB 78 */ mr r4, r29 /* 801D8880 001D57E0 7F C5 F3 78 */ mr r5, r30 /* 801D8884 001D57E4 7F E6 FB 78 */ mr r6, r31 -/* 801D8888 001D57E8 4B EA 06 29 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 801D8888 001D57E8 4B EA 06 29 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_801D888C: /* 801D888C 001D57EC E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 /* 801D8890 001D57F0 80 01 00 64 */ lwz r0, 0x64(r1) diff --git a/asm/MetroidPrime/Enemies/CMagdolite.s b/asm/MetroidPrime/Enemies/CMagdolite.s index 7683b4d3..f370bb49 100644 --- a/asm/MetroidPrime/Enemies/CMagdolite.s +++ b/asm/MetroidPrime/Enemies/CMagdolite.s @@ -2519,7 +2519,7 @@ lbl_80236524: /* 80236534 00233494 7F 84 E3 78 */ mr r4, r28 /* 80236538 00233498 7F A5 EB 78 */ mr r5, r29 /* 8023653C 0023349C 7F C6 F3 78 */ mr r6, r30 -/* 80236540 002334A0 4B E4 29 71 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 80236540 002334A0 4B E4 29 71 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_80236544: /* 80236544 002334A4 CB E1 00 28 */ lfd f31, 0x28(r1) /* 80236548 002334A8 BB 61 00 14 */ lmw r27, 0x14(r1) diff --git a/asm/MetroidPrime/Enemies/CMetaree.s b/asm/MetroidPrime/Enemies/CMetaree.s index 98871cf5..949a5309 100644 --- a/asm/MetroidPrime/Enemies/CMetaree.s +++ b/asm/MetroidPrime/Enemies/CMetaree.s @@ -32,7 +32,7 @@ __vt__8CMetaree: .4byte FluidFXThink__3CAiFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager .4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager .4byte GetSortingBounds__6CActorCFRC13CStateManager - .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType + .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef .4byte GetCollisionPrimitive__13CPhysicsActorCFv .4byte GetPrimitiveTransform__13CPhysicsActorCFv .4byte CollidedWith__8CMetareeFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager diff --git a/asm/MetroidPrime/Enemies/CMetroid.s b/asm/MetroidPrime/Enemies/CMetroid.s index c01fa8b5..43bbd390 100644 --- a/asm/MetroidPrime/Enemies/CMetroid.s +++ b/asm/MetroidPrime/Enemies/CMetroid.s @@ -8459,7 +8459,7 @@ lbl_801714B8: /* 801714C8 0016E428 7F A4 EB 78 */ mr r4, r29 /* 801714CC 0016E42C 7F C5 F3 78 */ mr r5, r30 /* 801714D0 0016E430 7F E6 FB 78 */ mr r6, r31 -/* 801714D4 0016E434 4B F0 79 DD */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 801714D4 0016E434 4B F0 79 DD */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_801714D8: /* 801714D8 0016E438 80 01 00 24 */ lwz r0, 0x24(r1) /* 801714DC 0016E43C CB E1 00 18 */ lfd f31, 0x18(r1) diff --git a/asm/MetroidPrime/Enemies/CMetroidBeta.s b/asm/MetroidPrime/Enemies/CMetroidBeta.s index c2bf4a4a..c1e78c97 100644 --- a/asm/MetroidPrime/Enemies/CMetroidBeta.s +++ b/asm/MetroidPrime/Enemies/CMetroidBeta.s @@ -5029,7 +5029,7 @@ lbl_801C5070: /* 801C5080 001C1FE0 7F A4 EB 78 */ mr r4, r29 /* 801C5084 001C1FE4 7F C5 F3 78 */ mr r5, r30 /* 801C5088 001C1FE8 7F E6 FB 78 */ mr r6, r31 -/* 801C508C 001C1FEC 4B EB 3E 25 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 801C508C 001C1FEC 4B EB 3E 25 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_801C5090: /* 801C5090 001C1FF0 80 01 00 24 */ lwz r0, 0x24(r1) /* 801C5094 001C1FF4 CB E1 00 18 */ lfd f31, 0x18(r1) diff --git a/asm/MetroidPrime/Enemies/CMetroidPrimeEssence.s b/asm/MetroidPrime/Enemies/CMetroidPrimeEssence.s index 0fb08781..4ace17dc 100644 --- a/asm/MetroidPrime/Enemies/CMetroidPrimeEssence.s +++ b/asm/MetroidPrime/Enemies/CMetroidPrimeEssence.s @@ -2486,7 +2486,7 @@ lbl_8027E814: /* 8027E824 0027B784 7F A4 EB 78 */ mr r4, r29 /* 8027E828 0027B788 7F C5 F3 78 */ mr r5, r30 /* 8027E82C 0027B78C 7F E6 FB 78 */ mr r6, r31 -/* 8027E830 0027B790 4B DF A6 81 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 8027E830 0027B790 4B DF A6 81 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_8027E834: /* 8027E834 0027B794 E3 E1 01 28 */ psq_l f31, 296(r1), 0, qr0 /* 8027E838 0027B798 CB E1 01 20 */ lfd f31, 0x120(r1) diff --git a/asm/MetroidPrime/Enemies/CMetroidPrimeExo.s b/asm/MetroidPrime/Enemies/CMetroidPrimeExo.s index 9d21bb39..7b45a370 100644 --- a/asm/MetroidPrime/Enemies/CMetroidPrimeExo.s +++ b/asm/MetroidPrime/Enemies/CMetroidPrimeExo.s @@ -11512,7 +11512,7 @@ lbl_8027AC48: /* 8027AC58 00277BB8 7F C4 F3 78 */ mr r4, r30 /* 8027AC5C 00277BBC 7F 85 E3 78 */ mr r5, r28 /* 8027AC60 00277BC0 7F A6 EB 78 */ mr r6, r29 -/* 8027AC64 00277BC4 4B DF E2 4D */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 8027AC64 00277BC4 4B DF E2 4D */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_8027AC68: /* 8027AC68 00277BC8 E3 E1 06 98 */ psq_l f31, 1688(r1), 0, qr0 /* 8027AC6C 00277BCC CB E1 06 90 */ lfd f31, 0x690(r1) diff --git a/asm/MetroidPrime/Enemies/CNewIntroBoss.s b/asm/MetroidPrime/Enemies/CNewIntroBoss.s index 4694bb4f..b59425d6 100644 --- a/asm/MetroidPrime/Enemies/CNewIntroBoss.s +++ b/asm/MetroidPrime/Enemies/CNewIntroBoss.s @@ -32,7 +32,7 @@ lbl_803E4018: .4byte FluidFXThink__3CAiFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager .4byte OnScanStateChange__13CNewIntroBossFQ26CActor10EScanStateR13CStateManager .4byte GetRenderBounds__13CNewIntroBossCFRC12CTransform4f - .4byte DoUserAnimEvent__13CNewIntroBossFR13CStateManagerRC13CInt32POINode14EUserEventType + .4byte DoUserAnimEvent__13CNewIntroBossFR13CStateManagerRC13CInt32POINode14EUserEventTypef .4byte GetCollisionPrimitive__13CPhysicsActorCFv .4byte GetPrimitiveTransform__13CPhysicsActorCFv .4byte CollidedWith__10CPatternedFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager @@ -2169,8 +2169,8 @@ GetTouchBounds__13CNewIntroBossCFv: /* 8018BA38 00188998 98 03 00 18 */ stb r0, 0x18(r3) /* 8018BA3C 0018899C 4E 80 00 20 */ blr -.global DoUserAnimEvent__13CNewIntroBossFR13CStateManagerRC13CInt32POINode14EUserEventType -DoUserAnimEvent__13CNewIntroBossFR13CStateManagerRC13CInt32POINode14EUserEventType: +.global DoUserAnimEvent__13CNewIntroBossFR13CStateManagerRC13CInt32POINode14EUserEventTypef +DoUserAnimEvent__13CNewIntroBossFR13CStateManagerRC13CInt32POINode14EUserEventTypef: /* 8018BA40 001889A0 94 21 FE F0 */ stwu r1, -0x110(r1) /* 8018BA44 001889A4 7C 08 02 A6 */ mflr r0 /* 8018BA48 001889A8 90 01 01 14 */ stw r0, 0x114(r1) @@ -2336,7 +2336,7 @@ lbl_8018BC94: /* 8018BCA4 00188C04 7F A4 EB 78 */ mr r4, r29 /* 8018BCA8 00188C08 7F C5 F3 78 */ mr r5, r30 /* 8018BCAC 00188C0C 7F E6 FB 78 */ mr r6, r31 -/* 8018BCB0 00188C10 4B EE D2 01 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 8018BCB0 00188C10 4B EE D2 01 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_8018BCB4: /* 8018BCB4 00188C14 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 /* 8018BCB8 00188C18 80 01 01 14 */ lwz r0, 0x114(r1) diff --git a/asm/MetroidPrime/Enemies/CParasite.s b/asm/MetroidPrime/Enemies/CParasite.s index 6fca3314..b078fc39 100644 --- a/asm/MetroidPrime/Enemies/CParasite.s +++ b/asm/MetroidPrime/Enemies/CParasite.s @@ -43,7 +43,7 @@ lbl_803E3004: .4byte FluidFXThink__3CAiFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager .4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager .4byte GetSortingBounds__6CActorCFRC13CStateManager - .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType + .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef .4byte GetCollisionPrimitive__11CWallWalkerCFv .4byte GetPrimitiveTransform__13CPhysicsActorCFv .4byte CollidedWith__9CParasiteFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager diff --git a/asm/MetroidPrime/Enemies/CPatterned.s b/asm/MetroidPrime/Enemies/CPatterned.s index e6ebf139..76006a29 100644 --- a/asm/MetroidPrime/Enemies/CPatterned.s +++ b/asm/MetroidPrime/Enemies/CPatterned.s @@ -36,7 +36,7 @@ lbl_803DA5C8: .4byte FluidFXThink__3CAiFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager .4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager .4byte GetSortingBounds__6CActorCFRC13CStateManager - .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType + .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef .4byte GetCollisionPrimitive__13CPhysicsActorCFv .4byte GetPrimitiveTransform__13CPhysicsActorCFv .4byte CollidedWith__10CPatternedFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager @@ -2515,8 +2515,8 @@ lbl_80078E8C: /* 80078EA8 00075E08 38 21 00 40 */ addi r1, r1, 0x40 /* 80078EAC 00075E0C 4E 80 00 20 */ blr -.global DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType -DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType: +.global DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef +DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef: /* 80078EB0 00075E10 94 21 FD 80 */ stwu r1, -0x280(r1) /* 80078EB4 00075E14 7C 08 02 A6 */ mflr r0 /* 80078EB8 00075E18 90 01 02 84 */ stw r0, 0x284(r1) diff --git a/asm/MetroidPrime/Enemies/CPhazonHealingNodule.s b/asm/MetroidPrime/Enemies/CPhazonHealingNodule.s index d0b16b30..2f256dd8 100644 --- a/asm/MetroidPrime/Enemies/CPhazonHealingNodule.s +++ b/asm/MetroidPrime/Enemies/CPhazonHealingNodule.s @@ -896,7 +896,7 @@ lbl_80295620: /* 80295648 002925A8 48 00 00 0C */ b lbl_80295654 lbl_8029564C: /* 8029564C 002925AC 7F E3 FB 78 */ mr r3, r31 -/* 80295650 002925B0 4B DE 38 61 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 80295650 002925B0 4B DE 38 61 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_80295654: /* 80295654 002925B4 80 01 00 34 */ lwz r0, 0x34(r1) /* 80295658 002925B8 83 E1 00 2C */ lwz r31, 0x2c(r1) diff --git a/asm/MetroidPrime/Enemies/CPuddleSpore.s b/asm/MetroidPrime/Enemies/CPuddleSpore.s index 8ff01968..7c83d2a7 100644 --- a/asm/MetroidPrime/Enemies/CPuddleSpore.s +++ b/asm/MetroidPrime/Enemies/CPuddleSpore.s @@ -1494,7 +1494,7 @@ lbl_80147C98: /* 80147CA8 00144C08 7F 84 E3 78 */ mr r4, r28 /* 80147CAC 00144C0C 7F A5 EB 78 */ mr r5, r29 /* 80147CB0 00144C10 7F C6 F3 78 */ mr r6, r30 -/* 80147CB4 00144C14 4B F3 11 FD */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 80147CB4 00144C14 4B F3 11 FD */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_80147CB8: /* 80147CB8 00144C18 E3 E1 01 48 */ psq_l f31, 328(r1), 0, qr0 /* 80147CBC 00144C1C CB E1 01 40 */ lfd f31, 0x140(r1) diff --git a/asm/MetroidPrime/Enemies/CPuddleToadGamma.s b/asm/MetroidPrime/Enemies/CPuddleToadGamma.s index 451aeff0..514ee6b2 100644 --- a/asm/MetroidPrime/Enemies/CPuddleToadGamma.s +++ b/asm/MetroidPrime/Enemies/CPuddleToadGamma.s @@ -1326,7 +1326,7 @@ lbl_8014C324: /* 8014C334 00149294 7F A4 EB 78 */ mr r4, r29 /* 8014C338 00149298 7F C5 F3 78 */ mr r5, r30 /* 8014C33C 0014929C 7F E6 FB 78 */ mr r6, r31 -/* 8014C340 001492A0 4B F2 CB 71 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 8014C340 001492A0 4B F2 CB 71 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_8014C344: /* 8014C344 001492A4 E3 E1 00 28 */ psq_l f31, 40(r1), 0, qr0 /* 8014C348 001492A8 80 01 00 34 */ lwz r0, 0x34(r1) diff --git a/asm/MetroidPrime/Enemies/CPuffer.s b/asm/MetroidPrime/Enemies/CPuffer.s index 4b03c9fb..e2bba476 100644 --- a/asm/MetroidPrime/Enemies/CPuffer.s +++ b/asm/MetroidPrime/Enemies/CPuffer.s @@ -68,7 +68,7 @@ __vt__7CPuffer: .4byte FluidFXThink__3CAiFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager .4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager .4byte GetSortingBounds__6CActorCFRC13CStateManager - .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType + .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef .4byte GetCollisionPrimitive__13CPhysicsActorCFv .4byte GetPrimitiveTransform__13CPhysicsActorCFv .4byte CollidedWith__10CPatternedFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager diff --git a/asm/MetroidPrime/Enemies/CRidley.s b/asm/MetroidPrime/Enemies/CRidley.s index 3eae559e..284c1396 100644 --- a/asm/MetroidPrime/Enemies/CRidley.s +++ b/asm/MetroidPrime/Enemies/CRidley.s @@ -7762,7 +7762,7 @@ lbl_80258CA0: /* 80258CB0 00255C10 7F A4 EB 78 */ mr r4, r29 /* 80258CB4 00255C14 7F C5 F3 78 */ mr r5, r30 /* 80258CB8 00255C18 7F E6 FB 78 */ mr r6, r31 -/* 80258CBC 00255C1C 4B E2 01 F5 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 80258CBC 00255C1C 4B E2 01 F5 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_80258CC0: /* 80258CC0 00255C20 E3 E1 03 A8 */ psq_l f31, 936(r1), 0, qr0 /* 80258CC4 00255C24 CB E1 03 A0 */ lfd f31, 0x3a0(r1) diff --git a/asm/MetroidPrime/Enemies/CRipper.s b/asm/MetroidPrime/Enemies/CRipper.s index 71c3d7e2..37d263d8 100644 --- a/asm/MetroidPrime/Enemies/CRipper.s +++ b/asm/MetroidPrime/Enemies/CRipper.s @@ -32,7 +32,7 @@ lbl_803E3348: .4byte FluidFXThink__3CAiFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager .4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager .4byte GetSortingBounds__6CActorCFRC13CStateManager - .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType + .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef .4byte GetCollisionPrimitive__13CPhysicsActorCFv .4byte GetPrimitiveTransform__13CPhysicsActorCFv .4byte CollidedWith__10CPatternedFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager diff --git a/asm/MetroidPrime/Enemies/CSeedling.s b/asm/MetroidPrime/Enemies/CSeedling.s index 59e87505..10f09bde 100644 --- a/asm/MetroidPrime/Enemies/CSeedling.s +++ b/asm/MetroidPrime/Enemies/CSeedling.s @@ -497,7 +497,7 @@ lbl_80266424: /* 80266434 00263394 7F A4 EB 78 */ mr r4, r29 /* 80266438 00263398 7F C5 F3 78 */ mr r5, r30 /* 8026643C 0026339C 7F E6 FB 78 */ mr r6, r31 -/* 80266440 002633A0 4B E1 2A 71 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 80266440 002633A0 4B E1 2A 71 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_80266444: /* 80266444 002633A4 80 01 00 24 */ lwz r0, 0x24(r1) /* 80266448 002633A8 CB E1 00 18 */ lfd f31, 0x18(r1) diff --git a/asm/MetroidPrime/Enemies/CSpacePirate.s b/asm/MetroidPrime/Enemies/CSpacePirate.s index 49397313..bb142284 100644 --- a/asm/MetroidPrime/Enemies/CSpacePirate.s +++ b/asm/MetroidPrime/Enemies/CSpacePirate.s @@ -2772,7 +2772,7 @@ lbl_80122084: /* 80122094 0011EFF4 7F A4 EB 78 */ mr r4, r29 /* 80122098 0011EFF8 7F C5 F3 78 */ mr r5, r30 /* 8012209C 0011EFFC 7F E6 FB 78 */ mr r6, r31 -/* 801220A0 0011F000 4B F5 6E 11 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 801220A0 0011F000 4B F5 6E 11 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_801220A4: /* 801220A4 0011F004 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 /* 801220A8 0011F008 80 01 00 94 */ lwz r0, 0x94(r1) diff --git a/asm/MetroidPrime/Enemies/CSpankWeed.s b/asm/MetroidPrime/Enemies/CSpankWeed.s index 10f9deb9..0c8adf38 100644 --- a/asm/MetroidPrime/Enemies/CSpankWeed.s +++ b/asm/MetroidPrime/Enemies/CSpankWeed.s @@ -32,7 +32,7 @@ lbl_803E2D28: .4byte FluidFXThink__3CAiFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager .4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager .4byte GetSortingBounds__6CActorCFRC13CStateManager - .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType + .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef .4byte GetCollisionPrimitive__13CPhysicsActorCFv .4byte GetPrimitiveTransform__13CPhysicsActorCFv .4byte CollidedWith__10CPatternedFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager diff --git a/asm/MetroidPrime/Enemies/CThardus.s b/asm/MetroidPrime/Enemies/CThardus.s index ed2a8a83..98f2da67 100644 --- a/asm/MetroidPrime/Enemies/CThardus.s +++ b/asm/MetroidPrime/Enemies/CThardus.s @@ -7968,11 +7968,11 @@ lbl_801E1060: /* 801E106C 001DDFCC 48 00 00 10 */ b lbl_801E107C .global lbl_801E1070 lbl_801E1070: -/* 801E1070 001DDFD0 4B E9 7E 41 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 801E1070 001DDFD0 4B E9 7E 41 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef /* 801E1074 001DDFD4 48 00 00 08 */ b lbl_801E107C .global lbl_801E1078 lbl_801E1078: -/* 801E1078 001DDFD8 4B E9 7E 39 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 801E1078 001DDFD8 4B E9 7E 39 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef .global lbl_801E107C lbl_801E107C: /* 801E107C 001DDFDC E3 E1 05 68 */ psq_l f31, 1384(r1), 0, qr0 diff --git a/asm/MetroidPrime/Enemies/CThardusRockProjectile.s b/asm/MetroidPrime/Enemies/CThardusRockProjectile.s index 5857cd05..cfe5791f 100644 --- a/asm/MetroidPrime/Enemies/CThardusRockProjectile.s +++ b/asm/MetroidPrime/Enemies/CThardusRockProjectile.s @@ -32,7 +32,7 @@ lbl_803E6BE0: .4byte FluidFXThink__3CAiFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager .4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager .4byte GetSortingBounds__6CActorCFRC13CStateManager - .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType + .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef .4byte GetCollisionPrimitive__13CPhysicsActorCFv .4byte GetPrimitiveTransform__13CPhysicsActorCFv .4byte CollidedWith__10CPatternedFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager diff --git a/asm/MetroidPrime/Enemies/CTryclops.s b/asm/MetroidPrime/Enemies/CTryclops.s index 855d1996..e4caf764 100644 --- a/asm/MetroidPrime/Enemies/CTryclops.s +++ b/asm/MetroidPrime/Enemies/CTryclops.s @@ -1207,7 +1207,7 @@ lbl_8025E85C: /* 8025E86C 0025B7CC 7F A4 EB 78 */ mr r4, r29 /* 8025E870 0025B7D0 7F C5 F3 78 */ mr r5, r30 /* 8025E874 0025B7D4 7F E6 FB 78 */ mr r6, r31 -/* 8025E878 0025B7D8 4B E1 A6 39 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 8025E878 0025B7D8 4B E1 A6 39 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_8025E87C: /* 8025E87C 0025B7DC E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 /* 8025E880 0025B7E0 CB E1 00 90 */ lfd f31, 0x90(r1) diff --git a/asm/MetroidPrime/Enemies/CWallWalker.s b/asm/MetroidPrime/Enemies/CWallWalker.s index eae75486..99e40899 100644 --- a/asm/MetroidPrime/Enemies/CWallWalker.s +++ b/asm/MetroidPrime/Enemies/CWallWalker.s @@ -32,7 +32,7 @@ lbl_803EA0F0: .4byte FluidFXThink__3CAiFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager .4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager .4byte GetSortingBounds__6CActorCFRC13CStateManager - .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType + .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef .4byte GetCollisionPrimitive__11CWallWalkerCFv .4byte GetPrimitiveTransform__13CPhysicsActorCFv .4byte CollidedWith__10CPatternedFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager diff --git a/asm/MetroidPrime/Enemies/CWarWasp.s b/asm/MetroidPrime/Enemies/CWarWasp.s index b5296383..125939a7 100644 --- a/asm/MetroidPrime/Enemies/CWarWasp.s +++ b/asm/MetroidPrime/Enemies/CWarWasp.s @@ -6663,7 +6663,7 @@ lbl_80110710: /* 80110720 0010D680 7F A4 EB 78 */ mr r4, r29 /* 80110724 0010D684 7F C5 F3 78 */ mr r5, r30 /* 80110728 0010D688 7F E6 FB 78 */ mr r6, r31 -/* 8011072C 0010D68C 4B F6 87 85 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType +/* 8011072C 0010D68C 4B F6 87 85 */ bl DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef lbl_80110730: /* 80110730 0010D690 E3 E1 0A 18 */ psq_l f31, -1512(r1), 0, qr0 /* 80110734 0010D694 CB E1 0A 10 */ lfd f31, 0xa10(r1) diff --git a/asm/MetroidPrime/ScriptObjects/CEnergyBall.s b/asm/MetroidPrime/ScriptObjects/CEnergyBall.s index 58edeed7..17eb52cd 100644 --- a/asm/MetroidPrime/ScriptObjects/CEnergyBall.s +++ b/asm/MetroidPrime/ScriptObjects/CEnergyBall.s @@ -32,7 +32,7 @@ lbl_803EC0A0: .4byte FluidFXThink__3CAiFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager .4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager .4byte GetSortingBounds__6CActorCFRC13CStateManager - .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventType + .4byte DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef .4byte GetCollisionPrimitive__13CPhysicsActorCFv .4byte GetPrimitiveTransform__13CPhysicsActorCFv .4byte CollidedWith__10CPatternedFRC9TUniqueIdRC18CCollisionInfoListR13CStateManager diff --git a/include/Collision/CRayCastResult.hpp b/include/Collision/CRayCastResult.hpp index 680e5ac3..a8f37991 100644 --- a/include/Collision/CRayCastResult.hpp +++ b/include/Collision/CRayCastResult.hpp @@ -16,9 +16,11 @@ public: }; float GetTime() const { return x0_t; } - bool IsValid() const { return x20_valid; } + bool IsValid() const { return x20_valid == kI_Valid; } + // TODO: figure out what's going on here + bool IsInvalid() const { return x20_valid == kI_Invalid; } // GetPlane__14CRayCastResultCFv - // GetPoint__14CRayCastResultCFv + const CVector3f& GetPoint() const { return x4_point; } // GetMaterial__14CRayCastResultCFv // Transform__14CRayCastResultFRC12CTransform4f diff --git a/include/MetroidPrime/CBoneTracking.hpp b/include/MetroidPrime/CBoneTracking.hpp index 35747649..6d0f10e3 100644 --- a/include/MetroidPrime/CBoneTracking.hpp +++ b/include/MetroidPrime/CBoneTracking.hpp @@ -6,7 +6,22 @@ #include "Kyoto/Math/CVector3f.hpp" #include "rstl/optional_object.hpp" + +enum EBoneTrackingFlags { + kBTF_None = 0, + kBTF_NoParent = 1, + kBTF_NoParentOrigin = 2, + kBTF_NoHorizontalAim = 4, + kBTF_ParentIk = 8, +}; + class CBoneTracking { +public: + CBoneTracking(const CAnimData& animData, const rstl::string& bone, float maxTrackingAngle, + float angSpeed, EBoneTrackingFlags flags); + + void SetActive(bool v); + private: CQuaternion x0_rotation; float x10_; @@ -14,7 +29,7 @@ private: float x18_time; float x1c_maxTrackingAngle; float x20_angSpeed; - rstl::optional_object x24_targetPosition; + rstl::optional_object< CVector3f > x24_targetPosition; TUniqueId x34_target; uchar x36_flags; }; diff --git a/include/MetroidPrime/CGameCollision.hpp b/include/MetroidPrime/CGameCollision.hpp index e07ce566..2111371b 100644 --- a/include/MetroidPrime/CGameCollision.hpp +++ b/include/MetroidPrime/CGameCollision.hpp @@ -9,6 +9,7 @@ class CCollisionPrimitive; class CMaterialFilter; class CStateManager; class CTransform4f; +class CRayCastResult; class CGameCollision { public: @@ -25,6 +26,8 @@ public: const CCollisionPrimitive&, const CTransform4f&, const CMaterialFilter&, const TEntityList&, CVector3f, TUniqueId&, CCollisionInfo&, double&); + static CRayCastResult RayStaticIntersection(const CStateManager&, const CVector3f&, + const CVector3f&, float, const CMaterialFilter&); }; #endif // _CGAMECOLLISION diff --git a/include/MetroidPrime/Enemies/CNewIntroBoss.hpp b/include/MetroidPrime/Enemies/CNewIntroBoss.hpp index 877c7dd2..b39774ef 100644 --- a/include/MetroidPrime/Enemies/CNewIntroBoss.hpp +++ b/include/MetroidPrime/Enemies/CNewIntroBoss.hpp @@ -3,12 +3,13 @@ #include "MetroidPrime/Enemies/CPatterned.hpp" +#include "Kyoto/Animation/CharacterCommon.hpp" #include "MetroidPrime/CBoneTracking.hpp" #include "MetroidPrime/Weapons/CProjectileInfo.hpp" -#include "Kyoto/Animation/CharacterCommon.hpp" class CCollisionActorManager; class CPatternedInfo; + class CNewIntroBoss : public CPatterned { public: CNewIntroBoss(TUniqueId, const rstl::string&, const CEntityInfo& info, const CTransform4f& xf, @@ -17,6 +18,32 @@ public: const CDamageInfo& dInfo, CAssetId beamContactFxId, CAssetId beamPulseFxId, CAssetId beamTextureId, CAssetId beamGlowTextureId); + // CEntity + void Accept(IVisitor& visitor) override; + void Think(float dt, CStateManager& mgr) override; + void AcceptScriptMsg(EScriptObjectMessage msg, TUniqueId uid, CStateManager& mgr) override; + + // CActor + void AddToRenderer(const CFrustumPlanes&, const CStateManager&) const override; + rstl::optional_object< CAABox > GetTouchBounds() const override; + void OnScanStateChange(EScanState, CStateManager&) override; + CAABox GetSortingBounds(const CStateManager&) const override; + void DoUserAnimEvent(CStateManager& mgr, const CInt32POINode& node, EUserEventType type, + float dt) override; + + // CAi + void Patrol(CStateManager&, EStateMsg, float) override; + void Generate(CStateManager& mgr, EStateMsg msg, float arg) override; + void Attack(CStateManager&, EStateMsg, float) override; + bool InAttackPosition(CStateManager&, float) override; + bool AnimOver(CStateManager&, float) override; + bool ShouldAttack(CStateManager&, float) override; + bool ShouldTurn(CStateManager&, float) override; + bool AIStage(CStateManager&, float) override; + + // CPatterned + CProjectileInfo* ProjectileInfo() override; + pas::ELocomotionType GetLocoForHealth(const CStateManager& mgr) const; pas::EGenerateType GetGenerateForHealth(const CStateManager& mgr) const; float GetNextAttackTime(CStateManager& mgr) const; @@ -26,10 +53,9 @@ public: float GetInitialHP() const { return x640_initialHp; } - void Generate(CStateManager& mgr, EStateMsg msg, float arg); private: pas::ELocomotionType x568_locomotion; - u32 x56c_stateProg; + uint x56c_stateProg; float x570_minTurnAngle; CBoneTracking x574_boneTracking; CProjectileInfo x5ac_projectileInfo; @@ -53,7 +79,7 @@ private: float x63c_attackTime; float x640_initialHp; CTransform4f x644_initialXf; - s16 x674_rumbleVoice; + short x674_rumbleVoice; TUniqueId x676_curProjectile; bool x678_; }; diff --git a/include/MetroidPrime/Enemies/CPatterned.hpp b/include/MetroidPrime/Enemies/CPatterned.hpp index ddc26486..ab406a6f 100644 --- a/include/MetroidPrime/Enemies/CPatterned.hpp +++ b/include/MetroidPrime/Enemies/CPatterned.hpp @@ -233,7 +233,7 @@ public: virtual u8 GetModelAlphau8(const CStateManager&) const { return x42c_color.GetAlphau8(); } virtual bool IsOnGround() const { return x328_27_onGround; } virtual float GetGravityConstant() const { return CPhysicsActor::GravityConstant(); } - virtual CProjectileInfo* GetProjectileInfo() { return nullptr; } + virtual CProjectileInfo* ProjectileInfo() { return nullptr; } virtual void PhazeOut(CStateManager&); virtual const rstl::optional_object< TLockedToken< CGenDescription > >& GetDeathExplosionParticle() const { @@ -241,6 +241,7 @@ public: } void DeathDelete(CStateManager& mgr); + CTransform4f GetLctrTransform(const rstl::string&) const; TUniqueId GetDestObj() const { return x2dc_destObj; } // TODO: name? CStateMachineState& StateMachineState() { return x330_stateMachineState; } diff --git a/include/MetroidPrime/Player/CPlayer.hpp b/include/MetroidPrime/Player/CPlayer.hpp index 47b6538e..ec1d5b28 100644 --- a/include/MetroidPrime/Player/CPlayer.hpp +++ b/include/MetroidPrime/Player/CPlayer.hpp @@ -48,13 +48,14 @@ class CPlayer : public CPhysicsActor { , x4_curAlphaInDur(alphaInDur) , x8_curAlphaOutDur(alphaOutDur) , xc_tex(tex) {} - CAssetId GetTextureId() const { return xc_tex; } + CAssetId GetTextureId() const { return xc_tex; } void SetSteam(float targetAlpha, float alphaInDur, float alphaOutDur, CAssetId txtr, bool affectsThermal); void Update(float dt); float GetAlpha() const { return x20_alpha; } bool AffectsThermal() const { return x28_affectsThermal; } }; + public: enum EPlayerOrbitState { kOS_NoOrbit, @@ -177,6 +178,7 @@ public: CVector3f GetBallPosition() const; CVector3f GetEyePosition() const; + float GetEyeHeight() const; CTransform4f CreateTransformFromMovementDirection() const; EPlayerOrbitState GetOrbitState() const { return x304_orbitState; } const CVector3f& GetMovementDirection() const { return x50c_moveDir; } @@ -215,14 +217,14 @@ public: void Teleport(const CTransform4f& xf, CStateManager& mgr, bool resetBallCam); void SetSpawnedMorphBallState(EPlayerMorphBallState state, CStateManager& mgr); const CVisorSteam& GetVisorSteam() const { return x7a0_visorSteam; } - void SetVisorSteam(float targetAlpha, float alphaInDur, float alphaOutDir, CAssetId txtr, bool affectsThermal); + void SetVisorSteam(float targetAlpha, float alphaInDur, float alphaOutDir, CAssetId txtr, + bool affectsThermal); CVector3f GetDampedClampedVelocityWR() const; float GetAverageSpeed() const; float GetGravity() const; private: - NPlayer::EPlayerMovementState x258_movementState; rstl::vector< CToken > x25c_ballTransitionsRes; TUniqueId x26c_attachedActor; diff --git a/include/MetroidPrime/ScriptObjects/CScriptWater.hpp b/include/MetroidPrime/ScriptObjects/CScriptWater.hpp index 3731326a..e114fcd4 100644 --- a/include/MetroidPrime/ScriptObjects/CScriptWater.hpp +++ b/include/MetroidPrime/ScriptObjects/CScriptWater.hpp @@ -8,11 +8,12 @@ class CFluidPlaneCPU; class CScriptWater { - uchar x0_pad[0x1b4]; - rstl::single_ptr x1b4_fluidPlane; +public: + CFluidPlaneCPU& FluidPlane() { return *x1b4_fluidPlane; } - public: - CFluidPlaneCPU& FluidPlane() { return *x1b4_fluidPlane; } +private: + uchar x0_pad[0x1b4]; + rstl::single_ptr< CFluidPlaneCPU > x1b4_fluidPlane; }; #endif // _CSCRIPTWATER diff --git a/include/MetroidPrime/Weapons/CProjectileInfo.hpp b/include/MetroidPrime/Weapons/CProjectileInfo.hpp index 377211e8..f28358d0 100644 --- a/include/MetroidPrime/Weapons/CProjectileInfo.hpp +++ b/include/MetroidPrime/Weapons/CProjectileInfo.hpp @@ -3,14 +3,14 @@ #include "MetroidPrime/CDamageInfo.hpp" -#include "Kyoto/TToken.hpp" #include "Kyoto/Math/CVector3f.hpp" +#include "Kyoto/TToken.hpp" class CPlayer; class CWeaponDescription; class CProjectileInfo { - TCachedToken x0_weaponDescription; + TCachedToken< CWeaponDescription > x0_weaponDescription; CDamageInfo xc_damageInfo; public: @@ -18,8 +18,12 @@ public: explicit CProjectileInfo(CInputStream&); float GetProjectileSpeed() const; - CVector3f PredictInterceptPos(const CVector3f& gunPos, const CVector3f& aimPos, const CPlayer& player, bool gravity, float dt); - static CVector3f PredictInterceptPos(const CVector3f& gunPos, const CVector3f& aimPos, const CPlayer& player, bool gravity, float speed, float dt); + CVector3f PredictInterceptPos(const CVector3f& gunPos, const CVector3f& aimPos, + const CPlayer& player, bool gravity, float dt); + static CVector3f PredictInterceptPos(const CVector3f& gunPos, const CVector3f& aimPos, + const CPlayer& player, bool gravity, float speed, float dt); + + TCachedToken< CWeaponDescription >& Token() { return x0_weaponDescription; } }; #endif // _CPROJECTILEINFO diff --git a/include/rstl/string.hpp b/include/rstl/string.hpp index 1db7b884..4109cc80 100644 --- a/include/rstl/string.hpp +++ b/include/rstl/string.hpp @@ -99,7 +99,10 @@ public: size_t size() const { return x8_size; } void assign(const basic_string&); - basic_string& operator=(const basic_string&); + basic_string& operator=(const basic_string& other) { + assign(other); + return *this; + } basic_string operator+(const basic_string&); basic_string operator+(const _CharTp*); diff --git a/src/MetroidPrime/Enemies/CNewIntroBoss.cpp b/src/MetroidPrime/Enemies/CNewIntroBoss.cpp index 0c65151a..c05d6b25 100644 --- a/src/MetroidPrime/Enemies/CNewIntroBoss.cpp +++ b/src/MetroidPrime/Enemies/CNewIntroBoss.cpp @@ -1,7 +1,48 @@ #include "MetroidPrime/Enemies/CNewIntroBoss.hpp" #include "MetroidPrime/CCollisionActorManager.hpp" +#include "MetroidPrime/CGameCollision.hpp" #include "MetroidPrime/CHealthInfo.hpp" +#include "MetroidPrime/CPOINode.hpp" +#include "MetroidPrime/CRumbleManager.hpp" +#include "MetroidPrime/Player/CPlayer.hpp" +#include "MetroidPrime/Weapons/CBeamProjectile.hpp" + +#include "Collision/CRayCastResult.hpp" + +// TODO move +struct SSphereJointInfo { + const char* name; + float radius; +}; +struct SOBBJointInfo { + const char* from; + const char* to; + float bX; + float bY; + float bZ; +}; + +const SOBBJointInfo skOBBJoints[] = { + {"Pelvis", "Spine_3", 4.f, 1.f, 4.f}, + {"Spine_3", "Tail_1", 2.f, 1.f, 2.f}, + {"Tail_1", "Tail_2", 1.f, 1.f, 1.f}, + {"Tail_2", "Tail_3", 1.f, 1.f, 1.f}, + {"Tail_3", "Tail_4", 1.f, 1.f, 1.f}, + {"R_shoulder_front", "R_elbow_front", .5f, .5f, .5f}, + {"R_elbow_front", "R_wrist_front", .5f, .5f, .5f}, + {"L_shoulder_front", "L_elbow_front", .5f, .5f, .5f}, + {"L_elbow_front", "L_wrist_front", .5f, .5f, .5f}, + {"R_shoulder_back", "R_elbow_back", .5f, .5f, .5f}, + {"R_elbow_back", "R_wrist_back", .5f, .5f, .5f}, + {"L_shoulder_back", "L_elbow_back", .5f, .5f, .5f}, + {"L_elbow_back", "L_wrist_back", .5f, .5f, .5f}, +}; + +const SSphereJointInfo skSphereJoints[] = { + {"Head_1", 1.5f}, + {"Tail_5", 1.5f}, +}; pas::ELocomotionType CNewIntroBoss::GetLocoForHealth(const CStateManager& mgr) const { const CHealthInfo* hInfo = GetHealthInfo(mgr); @@ -36,6 +77,118 @@ float CNewIntroBoss::GetNextAttackTime(CStateManager& mgr) const { return attackTime - (0.825f * attackTime); } +CNewIntroBoss::CNewIntroBoss(TUniqueId uid, const rstl::string& name, const CEntityInfo& info, + const CTransform4f& xf, const CModelData& mData, + const CPatternedInfo& pInfo, const CActorParameters& actParms, + float minTurnAngle, CAssetId projectile, const CDamageInfo& dInfo, + CAssetId beamContactFxId, CAssetId beamPulseFxId, + CAssetId beamTextureId, CAssetId beamGlowTextureId) +: CPatterned(kC_NewIntroBoss, uid, name, kFT_Zero, info, xf, mData, pInfo, kMT_Flyer, kCT_One, + kBT_Restricted, actParms, kKBV_Medium) +, x568_locomotion(pas::kLT_Relaxed) +, x56c_stateProg(0) +, x570_minTurnAngle(minTurnAngle) +, x574_boneTracking(*GetAnimationData(), rstl::string_l("Head_1"), CMath::Deg2Rad(80.f), + CMath::Deg2Rad(180.f), kBTF_None) +, x5ac_projectileInfo(projectile, dInfo) +, x5d4_stage1Projectile(kInvalidUniqueId) +, x5d6_stage2Projectile(kInvalidUniqueId) +, x5d8_stage3Projectile(kInvalidUniqueId) +, x5f0_beamContactFxId(beamContactFxId) +, x5f4_beamPulseFxId(beamPulseFxId) +, x5f8_beamTextureId(beamTextureId) +, x5fc_beamGlowTextureId(beamGlowTextureId) +, x600_headActor(kInvalidUniqueId) +, x602_pelvisActor(kInvalidUniqueId) +, x604_predictedPlayerPos(CVector3f::Zero()) +, x610_lookPos(CVector3f::Zero()) +, x61c_startPlayerPos(CVector3f::Zero()) +, x628_firingTime(0.f) +, x62c_targetPos(CVector3f::Zero()) +, x638_(0.2f) +, x63c_attackTime(8.f) +, x640_initialHp(0.f) +, x644_initialXf(xf) +, x674_rumbleVoice(-1) +, x676_curProjectile(kInvalidUniqueId) +, x678_(false) { + x5ac_projectileInfo.Token().Lock(); + x574_boneTracking.SetActive(true); +} + +CProjectileInfo* CNewIntroBoss::ProjectileInfo() { return &x5ac_projectileInfo; } + +CVector3f CNewIntroBoss::PlayerPos(const CStateManager& mgr) const { + float z0 = mgr.GetPlayer()->GetEyeHeight() / 2.f; + CVector3f pos = mgr.GetPlayer()->GetTranslation() + CVector3f(0.f, 0.f, z0); + CRayCastResult result = CGameCollision::RayStaticIntersection( + mgr, pos, CVector3f::Down(), 30.f, CMaterialFilter::MakeInclude(kMT_Solid)); + if (result.IsInvalid()) { + float z = mgr.GetPlayer()->GetEyeHeight() / 2.f + 0.2f; + return mgr.GetPlayer()->GetTranslation() + CVector3f(0.f, 0.f, z); + } else { + float z = mgr.GetPlayer()->GetEyeHeight() / 2.f + 0.2f; + return result.GetPoint() + CVector3f(0.f, 0.f, z); + } +} + +void CNewIntroBoss::DoUserAnimEvent(CStateManager& mgr, const CInt32POINode& node, + EUserEventType event, float dt) { + bool handled = false; + switch (event) { + case kUE_DamageOn: { + x5dc_damageLocator = node.GetLocatorName(); + CTransform4f xf = GetLctrTransform(x5dc_damageLocator); + CVector3f playerPos = PlayerPos(mgr); + x62c_targetPos = x610_lookPos = x604_predictedPlayerPos = playerPos; + x61c_startPlayerPos = playerPos; + x628_firingTime = 0.f; + if (GetLocoForHealth(mgr) == pas::kLT_Combat) { + x676_curProjectile = x5d8_stage3Projectile; + } else if (GetLocoForHealth(mgr) == pas::kLT_Lurk) { + x676_curProjectile = x5d6_stage2Projectile; + } else { + x676_curProjectile = x5d4_stage1Projectile; + } + + CTransform4f projXf = CTransform4f::LookAt(xf.GetTranslation(), x610_lookPos); + if (CBeamProjectile* projectile = + static_cast< CBeamProjectile* >(mgr.ObjectById(x676_curProjectile))) { + if (!projectile->GetActive()) { + projectile->Fire(projXf, mgr, false); + + if (x674_rumbleVoice == -1) + x674_rumbleVoice = + mgr.GetRumbleManager()->Rumble(mgr, kRFX_IntroBossProjectile, 1.f, kRP_Two); + } + } + handled = true; + break; + } + case kUE_DamageOff: { + if (CBeamProjectile* projectile = + static_cast< CBeamProjectile* >(mgr.ObjectById(x676_curProjectile))) { + projectile->ResetBeam(mgr, false); + } + + StopRumble(mgr); + x63c_attackTime = GetNextAttackTime(mgr); + SendScriptMsgs(kSS_Attack, mgr, kSM_None); + handled = true; + break; + } + case kUE_Projectile: + default: + break; + } + if (!handled) { + CPatterned::DoUserAnimEvent(mgr, node, event, dt); + } +} + +rstl::optional_object< CAABox > CNewIntroBoss::GetTouchBounds() const { + return rstl::optional_object_null(); +} void CNewIntroBoss::Generate(CStateManager& mgr, EStateMsg msg, float arg) { /* diff --git a/src/MetroidPrime/Weapons/CWeapon.cpp b/src/MetroidPrime/Weapons/CWeapon.cpp index caf92bca..2cae8f65 100644 --- a/src/MetroidPrime/Weapons/CWeapon.cpp +++ b/src/MetroidPrime/Weapons/CWeapon.cpp @@ -83,19 +83,20 @@ void CWeapon::FluidFXThink(EFluidState state, CScriptWater& water, CStateManager #if 0 if (doRipple) { CVector3f pos = GetTranslation(); - pos.SetZ(float(water.GetTriggerBoundsWR().GetMax().GetZ())); + pos.SetZ(water.GetSurfaceZ()); // <- GetTriggerBoundsWR().GetMax().GetZ() if (True(xe8_projectileAttribs & EProjectileAttrib::ComboShot)) { - if (!water.CanRippleAtPoint(pos)) + if (!water.CanRippleAtPoint(pos)) { doRipple = false; + } } else if (state == EFluidState::InFluid) { doRipple = false; } if (doRipple) { - water.GetFluidPlane().AddRipple(mag, x8_uid, pos, water, mgr); - mgr.GetFluidPlaneManager()->CreateSplash(x8_uid, mgr, water, pos, mag, - state == EFluidState::EnteredFluid || - state == EFluidState::LeftFluid); + water.FluidPlane().AddRipple(mag, x8_uid, pos, water, mgr); + mgr.FluidPlaneManager()->CreateSplash(x8_uid, mgr, water, pos, mag, + state == EFluidState::EnteredFluid || + state == EFluidState::LeftFluid); } } #endif