Misc Stuff 6 (#78)

* gcc fixes

* document random things in UnkStruct_027e09b8_00

* match func_ov001_020ba670 and rabbit docs

* match func_ov026_0211f394

* fix build issues

* match func_ov026_0211e3e0

* match func_ov026_02102924

* move structs to header

* document train rope thing

* MapObject OK and ActorRef stuff

* match more actor funcs

* fix regressions

* fix build issues

* more regressions fixes

* name keyt grab func

* UnkSubStruct19 -> CellAnimObject (based on the only assert string)

* fix build issues due to merge

* Actor::mUnk_4C -> Actor::mState + related changes

* create GetActorPtr template inline for Actor_c4

* ActorUnk_ov000_020a8bb0 -> Actor_Derived1

* actor: add comments about mUnk_50/52 and change type of mAngle
This commit is contained in:
Yanis
2026-06-17 22:20:45 +02:00
committed by GitHub
parent dfc8f2748c
commit 453db24d41
89 changed files with 1318 additions and 925 deletions
+3
View File
@@ -3,3 +3,6 @@
src/ITCM/ITCM_MapObjectManager.cpp:
.text start:0x01fff498 end:0x01fff5d0
src/ITCM/ITCM_ActorManager.cpp:
.text start:0x01fff350 end:0x01fff440
+1 -1
View File
@@ -212,7 +212,7 @@ _ZN9MapObject13func_01fff590Ei kind:function(arm,size=0x40) addr:0x01fff590
_ZN5Actor13func_01fff5d0Eii kind:function(arm,size=0x3c) addr:0x01fff5d0
_ZN18UnkStruct_027e09b413func_01fff60cEiiihii kind:function(arm,size=0x8c) addr:0x01fff60c
func_01fff698 kind:function(arm,size=0x38) addr:0x01fff698
_ZN21UnkStruct_027e0cd8_1013func_01fff6d0EP7VecFx32PiS2_ kind:function(arm,size=0x74) addr:0x01fff6d0
_ZN16MapObjectManager13func_01fff6d0EP7VecFx32PiS2_ kind:function(arm,size=0x74) addr:0x01fff6d0
func_01fff744 kind:function(arm,size=0x20) addr:0x01fff744
func_01fff764 kind:function(arm,size=0xec) addr:0x01fff764
func_01fff850 kind:function(arm,size=0x158) addr:0x01fff850
+2 -1
View File
@@ -76,6 +76,7 @@ src/000_Second/MapObject/MapObjectProfile_Derived2_20.cpp:
.data start:0x020b3560 end:0x020b3588
src/000_Second/MapObject/MapObject.cpp:
complete
.text start:0x0209cfe0 end:0x0209d700
.data start:0x020b3588 end:0x020b35c8
@@ -110,7 +111,7 @@ src/000_Second/Item/ItemManager.cpp:
.text start:0x020a863c end:0x020a8ae0
.rodata start:0x020afc40 end:0x020afc48
src/000_Second/Actor/ActorUnk_ov000_020a8bb0.cpp:
src/000_Second/Actor/Actor_Derived1.cpp:
.text start:0x020a8ae0 end:0x020a9b10
.data start:0x020b4d88 end:0x020b4e4c
+71 -71
View File
@@ -423,20 +423,20 @@ func_ov000_020606f0 kind:function(arm,size=0x48) addr:0x020606f0
func_ov000_02060738 kind:function(arm,size=0x24) addr:0x02060738
func_ov000_0206075c kind:function(arm,size=0x80) addr:0x0206075c
func_ov000_020607dc kind:function(arm,size=0x28) addr:0x020607dc
_ZN14UnkSubStruct19C1Ev kind:function(arm,size=0x28) addr:0x02060804
_ZN14UnkSubStruct1919func_ov000_0206082cEsi kind:function(arm,size=0x124) addr:0x0206082c
_ZN14UnkSubStruct1919func_ov000_02060950Ev kind:function(arm,size=0x60) addr:0x02060950
_ZN14UnkSubStruct1919func_ov000_020609b0Ev kind:function(arm,size=0x14) addr:0x020609b0
_ZN14UnkSubStruct1919func_ov000_020609c4Ev kind:function(arm,size=0xd4) addr:0x020609c4
_ZN14UnkSubStruct1919func_ov000_02060a98Ei kind:function(arm,size=0x38) addr:0x02060a98
_ZN14UnkSubStruct1919func_ov000_02060ad0Ev kind:function(arm,size=0x28) addr:0x02060ad0
_ZN14UnkSubStruct1919func_ov000_02060af8Ev kind:function(arm,size=0x58) addr:0x02060af8
_ZN14UnkSubStruct1919func_ov000_02060b50Ev kind:function(arm,size=0x14) addr:0x02060b50
_ZN14UnkSubStruct1919func_ov000_02060b64Ev kind:function(arm,size=0x20) addr:0x02060b64
_ZN14CellAnimObjectC1Ev kind:function(arm,size=0x28) addr:0x02060804
_ZN14CellAnimObject19func_ov000_0206082cEsi kind:function(arm,size=0x124) addr:0x0206082c
_ZN14CellAnimObject19func_ov000_02060950Ev kind:function(arm,size=0x60) addr:0x02060950
_ZN14CellAnimObject19func_ov000_020609b0Ev kind:function(arm,size=0x14) addr:0x020609b0
_ZN14CellAnimObject19func_ov000_020609c4Ev kind:function(arm,size=0xd4) addr:0x020609c4
_ZN14CellAnimObject19func_ov000_02060a98Ei kind:function(arm,size=0x38) addr:0x02060a98
_ZN14CellAnimObject19func_ov000_02060ad0Ev kind:function(arm,size=0x28) addr:0x02060ad0
_ZN14CellAnimObject19func_ov000_02060af8Ev kind:function(arm,size=0x58) addr:0x02060af8
_ZN14CellAnimObject19func_ov000_02060b50Ev kind:function(arm,size=0x14) addr:0x02060b50
_ZN14CellAnimObject19func_ov000_02060b64Ev kind:function(arm,size=0x20) addr:0x02060b64
func_ov000_02060b84 kind:function(arm,size=0x28) addr:0x02060b84
_ZN14UnkSubStruct1919func_ov000_02060bacEv kind:function(arm,size=0x2c) addr:0x02060bac
_ZN14UnkSubStruct1919func_ov000_02060bd8Ei kind:function(arm,size=0x50) addr:0x02060bd8
_ZN14UnkSubStruct1919func_ov000_02060c28Ev kind:function(arm,size=0xc) addr:0x02060c28
_ZN14CellAnimObject19func_ov000_02060bacEv kind:function(arm,size=0x2c) addr:0x02060bac
_ZN14CellAnimObject19func_ov000_02060bd8Ei kind:function(arm,size=0x50) addr:0x02060bd8
_ZN14CellAnimObject19func_ov000_02060c28Ev kind:function(arm,size=0xc) addr:0x02060c28
_ZN25UnkStruct_020d8698_2C_14CC1Ev kind:function(arm,size=0x1c) addr:0x02060c34
_ZN25UnkStruct_020d8698_2C_14C19func_ov000_02060c50EPKwP25UnkStruct_020d8698_2C_198iP34UnkStruct_ov019_020d24c8_28_258_00 kind:function(arm,size=0x2c) addr:0x02060c50
_ZN25UnkStruct_020d8698_2C_14C19func_ov000_02060c7cEi kind:function(arm,size=0x100) addr:0x02060c7c
@@ -696,7 +696,7 @@ _ZN21UnkSystem1_ov000_Base8vfunc_18Ev kind:function(arm,size=0x4) addr:0x020669d
_ZN21UnkSystem1_ov000_Base19func_ov000_020669dcEv kind:function(arm,size=0x2c) addr:0x020669dc
_ZN21UnkSystem1_ov000_Base19func_ov000_02066a08EP10UnkStruct5 kind:function(arm,size=0x54) addr:0x02066a08
_ZN21UnkSystem1_ov000_Base8vfunc_10EPt kind:function(arm,size=0x3a0) addr:0x02066a5c
_ZN21UnkSystem1_ov000_Base8vfunc_14EPv kind:function(arm,size=0x438) addr:0x02066dfc
_ZN21UnkSystem1_ov000_Base8vfunc_14EP9FLW1Instr kind:function(arm,size=0x438) addr:0x02066dfc
_ZN21UnkSystem1_ov000_Base8vfunc_1CEjii kind:function(arm,size=0x8) addr:0x02067234
_ZN21UnkSystem1_ov000_Base8vfunc_20Eiii kind:function(arm,size=0x8) addr:0x0206723c
_ZN25UnkSystem1_ov000_Derived1C2EiPN24UnkStruct_ov000_02067bc410UnkStruct1E kind:function(arm,size=0x34) addr:0x02067244
@@ -1496,9 +1496,9 @@ _ZN19func_ov000_0207ed10D2Ev kind:function(arm,size=0x30) addr:0x0207ed10
func_ov000_0207ed40 kind:function(arm,size=0x44) addr:0x0207ed40
func_ov000_0207ed84 kind:function(arm,size=0x8) addr:0x0207ed84
func_ov000_0207ed8c kind:function(arm,size=0x20) addr:0x0207ed8c
_ZN26ActorUnk_ov000_020a8bb0_94C2Ev kind:function(arm,size=0x20) addr:0x0207edac
_ZN17Actor_Derived1_94C2Ev kind:function(arm,size=0x20) addr:0x0207edac
func_ov000_0207edcc kind:function(arm,size=0x1c) addr:0x0207edcc
_ZN26ActorUnk_ov000_020a8bb0_94D2Ev kind:function(arm,size=0x30) addr:0x0207ede8
_ZN17Actor_Derived1_94D2Ev kind:function(arm,size=0x30) addr:0x0207ede8
_ZN19func_ov000_0207ee18D0Ev kind:function(arm,size=0x38) addr:0x0207ee18
_ZN19func_ov000_0207ee50D2Ev kind:function(arm,size=0x30) addr:0x0207ee50
func_ov000_0207ee80 kind:function(arm,size=0x4) addr:0x0207ee80
@@ -2326,13 +2326,13 @@ _ZN5Actor8vfunc_30Ev kind:function(arm,size=0x4) addr:0x020984c4
_ZN5Actor8vfunc_34Ev kind:function(arm,size=0x8) addr:0x020984c8
_ZN5Actor19func_ov000_020984d0Ev kind:function(arm,size=0x20) addr:0x020984d0
_ZN5Actor19func_ov000_020984f0Ev kind:function(arm,size=0x28) addr:0x020984f0
_ZN5Actor8vfunc_00EP7VecFx32 kind:function(arm,size=0x24) addr:0x02098518
_ZNK5Actor12GetOffsetPosEP7VecFx32 kind:function(arm,size=0x24) addr:0x02098518
_ZN5Actor19func_ov000_0209853cEi kind:function(arm,size=0x18) addr:0x0209853c
_ZN5Actor8vfunc_04Ev kind:function(arm,size=0x18) addr:0x02098554
_ZN5Actor8vfunc_08Ev kind:function(arm,size=0xc) addr:0x0209856c
_ZN5Actor8vfunc_0cEv kind:function(arm,size=0xc) addr:0x02098578
_ZN5Actor8vfunc_38Ei kind:function(arm,size=0x6c) addr:0x02098584
_ZN5Actor8vfunc_3cEiP7VecFx32 kind:function(arm,size=0x3c) addr:0x020985f0
_ZN5Actor4GrabE15ActorGrabParams kind:function(arm,size=0x6c) addr:0x02098584
_ZN5Actor4DropE15ActorGrabParamsPK7VecFx32 kind:function(arm,size=0x3c) addr:0x020985f0
_ZN5Actor19func_ov000_0209862cEi kind:function(arm,size=0x28) addr:0x0209862c
func_ov000_02098654 kind:function(arm,size=0x28) addr:0x02098654
func_ov000_0209867c kind:function(arm,size=0x38) addr:0x0209867c
@@ -2437,7 +2437,7 @@ _ZN19ActorProfileUnkSWOB6CreateEv kind:function(arm,size=0x24) addr:0x0209a8c4
_ZN19ActorProfileUnkSWOBC1Ev kind:function(arm,size=0x28) addr:0x0209a8e8
_ZN12ActorUnkSWOBC1Ev kind:function(arm,size=0x38) addr:0x0209a910
_ZN12ActorUnkSWOB8vfunc_18Ei kind:function(arm,size=0x6c) addr:0x0209a948
_ZN12ActorUnkSWOB19func_ov000_0209a9b4Ei kind:function(arm,size=0x7c) addr:0x0209a9b4
_ZN12ActorUnkSWOB8SetStateEs kind:function(arm,size=0x7c) addr:0x0209a9b4
_ZN12ActorUnkSWOB19func_ov000_0209aa30Ev kind:function(arm,size=0x234) addr:0x0209aa30
_ZN12ActorUnkSWOBD1Ev kind:function(arm,size=0x14) addr:0x0209ac64
_ZN12ActorUnkSWOBD0Ev kind:function(arm,size=0x1c) addr:0x0209ac78
@@ -2451,7 +2451,7 @@ _ZN12ActorUnkSWTMD0Ev kind:function(arm,size=0x50) addr:0x0209ada4
_ZN12ActorUnkSWTM8vfunc_18Ei kind:function(arm,size=0x74) addr:0x0209adf4
_ZN12ActorUnkSWTM8vfunc_20Ev kind:function(arm,size=0xe8) addr:0x0209ae68
_ZN12ActorUnkSWTM8vfunc_24Ev kind:function(arm,size=0x4) addr:0x0209af50
_ZN12ActorUnkSWTM19func_ov000_0209af54Ei kind:function(arm,size=0x90) addr:0x0209af54
_ZN12ActorUnkSWTM8SetStateEs kind:function(arm,size=0x90) addr:0x0209af54
_ZN12ActorUnkSWTM19func_ov000_0209afe4Ev kind:function(arm,size=0x54) addr:0x0209afe4
_ZN12ActorUnkSWTM19func_ov000_0209b038Ev kind:function(arm,size=0x128) addr:0x0209b038
_ZN12ActorUnkSWTM19func_ov000_0209b160Ev kind:function(arm,size=0x24) addr:0x0209b160
@@ -2570,7 +2570,7 @@ _ZN9MapObject19func_ov000_0209d2f0EiiP5Vec2b kind:function(arm,size=0xc4) addr:0
_ZN9MapObject19func_ov000_0209d3b4Eii kind:function(arm,size=0x80) addr:0x0209d3b4
_ZN9MapObject19func_ov000_0209d434EPcP34UnkStruct_ov019_020d24c8_28_258_00i kind:function(arm,size=0xe4) addr:0x0209d434
_ZN9MapObject19func_ov000_0209d518Eiiih kind:function(arm,size=0x34) addr:0x0209d518
_ZN9MapObject19func_ov000_0209d54cEPvPS_iP7VecFx32ii kind:function(arm,size=0x7c) addr:0x0209d54c
_ZN9MapObject19func_ov000_0209d54cEP8ActorRefPS_tPK7VecFx32st kind:function(arm,size=0x7c) addr:0x0209d54c
_ZN9MapObject19func_ov000_0209d5c8E8ActorRef kind:function(arm,size=0x4c) addr:0x0209d5c8
_ZN9MapObject19func_ov000_0209d614Ei kind:function(arm,size=0x54) addr:0x0209d614
_ZN9MapObject19func_ov000_0209d668Ev kind:function(arm,size=0x44) addr:0x0209d668
@@ -2716,7 +2716,7 @@ func_ov000_020a0f78 kind:function(thumb,size=0xc) addr:0x020a0f78
func_ov000_020a0f84 kind:function(thumb,size=0x30) addr:0x020a0f84
func_ov000_020a0fb4 kind:function(thumb,size=0x10) addr:0x020a0fb4
func_ov000_020a0fc4 kind:function(thumb,size=0x3c) addr:0x020a0fc4
_ZN15SaveManager_21C19func_ov000_020a1000Ev kind:function(thumb,size=0x28) addr:0x020a1000
_ZN28SaveFile_00000_0000_Data_D9C19func_ov000_020a1000Ev kind:function(thumb,size=0x28) addr:0x020a1000
_ZN8SaveSlot19func_ov000_020a1028EP12SaveInfoData kind:function(thumb,size=0xcc) addr:0x020a1028
_ZN8SaveSlot19func_ov000_020a10f4EP24SaveFile_00000_2600_Data kind:function(arm,size=0x30) addr:0x020a10f4
_ZN8SaveSlot19func_ov000_020a1124Ev kind:function(arm,size=0x13c) addr:0x020a1124
@@ -3020,56 +3020,56 @@ _ZN11ItemManager19func_ov000_020a8a90Ev kind:function(arm,size=0x14) addr:0x020a
_ZN11ItemManager19func_ov000_020a8aa4Ev kind:function(arm,size=0x14) addr:0x020a8aa4
_ZN11ItemManager19func_ov000_020a8ab8Ev kind:function(arm,size=0x14) addr:0x020a8ab8
_ZN11ItemManager19func_ov000_020a8accEv kind:function(arm,size=0x14) addr:0x020a8acc
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a8ae0Ei kind:function(arm,size=0x14) addr:0x020a8ae0
_ZN14Actor_Derived119func_ov000_020a8ae0Ei kind:function(arm,size=0x14) addr:0x020a8ae0
func_ov000_020a8af4 kind:function(arm,size=0x54) addr:0x020a8af4
func_ov000_020a8b48 kind:function(arm,size=0x34) addr:0x020a8b48
func_ov000_020a8b7c kind:function(arm,size=0x34) addr:0x020a8b7c
_ZN23ActorUnk_ov000_020a8bb0C1EP11ModelRenderi kind:function(arm,size=0x110) addr:0x020a8bb0
_ZN23ActorUnk_ov000_020a8bb0D1Ev kind:function(arm,size=0x20) addr:0x020a8cc0
_ZN23ActorUnk_ov000_020a8bb0D0Ev kind:function(arm,size=0x28) addr:0x020a8ce0
_ZN23ActorUnk_ov000_020a8bb0D2Ev kind:function(arm,size=0x20) addr:0x020a8d08
_ZN23ActorUnk_ov000_020a8bb08vfunc_18Ei kind:function(arm,size=0x78) addr:0x020a8d28
_ZN23ActorUnk_ov000_020a8bb08vfunc_54Ei kind:function(arm,size=0x4) addr:0x020a8da0
_ZN23ActorUnk_ov000_020a8bb08vfunc_1cEv kind:function(arm,size=0xc) addr:0x020a8da4
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a8db0Ev kind:function(arm,size=0x20) addr:0x020a8db0
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a8dd0Ev kind:function(arm,size=0x20) addr:0x020a8dd0
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a8df0E8ActorRefi kind:function(arm,size=0x94) addr:0x020a8df0
_ZN23ActorUnk_ov000_020a8bb08vfunc_b4Ev kind:function(arm,size=0x18) addr:0x020a8e84
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a8e9cEP7VecFx32 kind:function(arm,size=0x24) addr:0x020a8e9c
_ZN23ActorUnk_ov000_020a8bb08vfunc_b0Ev kind:function(arm,size=0x94) addr:0x020a8ec0
_ZN23ActorUnk_ov000_020a8bb08vfunc_88Ev kind:function(arm,size=0x8) addr:0x020a8f54
_ZN23ActorUnk_ov000_020a8bb08vfunc_8cEv kind:function(arm,size=0x8) addr:0x020a8f5c
_ZN23ActorUnk_ov000_020a8bb08vfunc_90Ev kind:function(arm,size=0x8) addr:0x020a8f64
_ZN23ActorUnk_ov000_020a8bb08vfunc_94Ev kind:function(arm,size=0xc) addr:0x020a8f6c
_ZN23ActorUnk_ov000_020a8bb08vfunc_60Ev kind:function(arm,size=0x68) addr:0x020a8f78
_ZN23ActorUnk_ov000_020a8bb08vfunc_64Ev kind:function(arm,size=0x14) addr:0x020a8fe0
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a8ff4Ev kind:function(arm,size=0x158) addr:0x020a8ff4
_ZN23ActorUnk_ov000_020a8bb08vfunc_6cEv kind:function(arm,size=0x4) addr:0x020a914c
_ZN23ActorUnk_ov000_020a8bb08vfunc_68Ev kind:function(arm,size=0x50) addr:0x020a9150
_ZN23ActorUnk_ov000_020a8bb08vfunc_7cEv kind:function(arm,size=0x8) addr:0x020a91a0
_ZN23ActorUnk_ov000_020a8bb08vfunc_80Ev kind:function(arm,size=0x8) addr:0x020a91a8
_ZN23ActorUnk_ov000_020a8bb08vfunc_84Ev kind:function(arm,size=0x8) addr:0x020a91b0
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a91b8EP7VecFx32i kind:function(arm,size=0x48) addr:0x020a91b8
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a9200Ev kind:function(arm,size=0x1c) addr:0x020a9200
_ZN23ActorUnk_ov000_020a8bb08vfunc_70Ev kind:function(arm,size=0x24) addr:0x020a921c
_ZN23ActorUnk_ov000_020a8bb08vfunc_74Ev kind:function(arm,size=0x4) addr:0x020a9240
_ZN23ActorUnk_ov000_020a8bb08vfunc_78Ev kind:function(arm,size=0x4) addr:0x020a9244
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a9248Ev kind:function(arm,size=0x88) addr:0x020a9248
_ZN23ActorUnk_ov000_020a8bb08vfunc_5cEv kind:function(arm,size=0x178) addr:0x020a92d0
_ZN23ActorUnk_ov000_020a8bb08vfunc_98Ev kind:function(arm,size=0x68) addr:0x020a9448
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a94b0Ev kind:function(arm,size=0xe8) addr:0x020a94b0
_ZN23ActorUnk_ov000_020a8bb08vfunc_9cEv kind:function(arm,size=0x2c) addr:0x020a9598
_ZN23ActorUnk_ov000_020a8bb08vfunc_a0Ev kind:function(arm,size=0x10) addr:0x020a95c4
_ZN23ActorUnk_ov000_020a8bb08vfunc_acEv kind:function(arm,size=0x4) addr:0x020a95d4
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a95d8Ev kind:function(arm,size=0xc) addr:0x020a95d8
_ZN23ActorUnk_ov000_020a8bb08vfunc_a4Ev kind:function(arm,size=0x218) addr:0x020a95e4
_ZN23ActorUnk_ov000_020a8bb08vfunc_a8Ev kind:function(arm,size=0x8) addr:0x020a97fc
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a9804Ev kind:function(arm,size=0xec) addr:0x020a9804
_ZN23ActorUnk_ov000_020a8bb08vfunc_20Ev kind:function(arm,size=0x4) addr:0x020a98f0
_ZN23ActorUnk_ov000_020a8bb08vfunc_24Ev kind:function(arm,size=0x68) addr:0x020a98f4
_ZN23ActorUnk_ov000_020a8bb08vfunc_2cEi kind:function(arm,size=0x48) addr:0x020a995c
_ZN23ActorUnk_ov000_020a8bb08vfunc_b8Ev kind:function(arm,size=0x34) addr:0x020a99a4
_ZN23ActorUnk_ov000_020a8bb08vfunc_14Ev kind:function(arm,size=0x48) addr:0x020a99d8
_ZN14Actor_Derived1C1EP11ModelRenderi kind:function(arm,size=0x110) addr:0x020a8bb0
_ZN14Actor_Derived1D1Ev kind:function(arm,size=0x20) addr:0x020a8cc0
_ZN14Actor_Derived1D0Ev kind:function(arm,size=0x28) addr:0x020a8ce0
_ZN14Actor_Derived1D2Ev kind:function(arm,size=0x20) addr:0x020a8d08
_ZN14Actor_Derived18vfunc_18Ei kind:function(arm,size=0x78) addr:0x020a8d28
_ZN14Actor_Derived18vfunc_54Ei kind:function(arm,size=0x4) addr:0x020a8da0
_ZN14Actor_Derived18vfunc_1cEv kind:function(arm,size=0xc) addr:0x020a8da4
_ZN14Actor_Derived119func_ov000_020a8db0Ev kind:function(arm,size=0x20) addr:0x020a8db0
_ZN14Actor_Derived119func_ov000_020a8dd0Ev kind:function(arm,size=0x20) addr:0x020a8dd0
_ZN14Actor_Derived119func_ov000_020a8df0E8ActorRefi kind:function(arm,size=0x94) addr:0x020a8df0
_ZN14Actor_Derived18vfunc_b4Ev kind:function(arm,size=0x18) addr:0x020a8e84
_ZN14Actor_Derived119func_ov000_020a8e9cEP7VecFx32 kind:function(arm,size=0x24) addr:0x020a8e9c
_ZN14Actor_Derived18vfunc_b0Ev kind:function(arm,size=0x94) addr:0x020a8ec0
_ZN14Actor_Derived18vfunc_88Ev kind:function(arm,size=0x8) addr:0x020a8f54
_ZN14Actor_Derived18vfunc_8cEv kind:function(arm,size=0x8) addr:0x020a8f5c
_ZN14Actor_Derived18vfunc_90Ev kind:function(arm,size=0x8) addr:0x020a8f64
_ZN14Actor_Derived18vfunc_94Ev kind:function(arm,size=0xc) addr:0x020a8f6c
_ZN14Actor_Derived18vfunc_60Ev kind:function(arm,size=0x68) addr:0x020a8f78
_ZN14Actor_Derived18vfunc_64Ev kind:function(arm,size=0x14) addr:0x020a8fe0
_ZN14Actor_Derived119func_ov000_020a8ff4Ev kind:function(arm,size=0x158) addr:0x020a8ff4
_ZN14Actor_Derived18vfunc_6cEv kind:function(arm,size=0x4) addr:0x020a914c
_ZN14Actor_Derived18vfunc_68Ev kind:function(arm,size=0x50) addr:0x020a9150
_ZN14Actor_Derived18vfunc_7cEv kind:function(arm,size=0x8) addr:0x020a91a0
_ZN14Actor_Derived18vfunc_80Ev kind:function(arm,size=0x8) addr:0x020a91a8
_ZN14Actor_Derived18vfunc_84Ev kind:function(arm,size=0x8) addr:0x020a91b0
_ZN14Actor_Derived119func_ov000_020a91b8EP7VecFx32i kind:function(arm,size=0x48) addr:0x020a91b8
_ZN14Actor_Derived119func_ov000_020a9200Ev kind:function(arm,size=0x1c) addr:0x020a9200
_ZN14Actor_Derived18vfunc_70Ev kind:function(arm,size=0x24) addr:0x020a921c
_ZN14Actor_Derived18vfunc_74Ev kind:function(arm,size=0x4) addr:0x020a9240
_ZN14Actor_Derived18vfunc_78Ev kind:function(arm,size=0x4) addr:0x020a9244
_ZN14Actor_Derived119func_ov000_020a9248Ev kind:function(arm,size=0x88) addr:0x020a9248
_ZN14Actor_Derived18vfunc_5cEv kind:function(arm,size=0x178) addr:0x020a92d0
_ZN14Actor_Derived18vfunc_98Ei kind:function(arm,size=0x68) addr:0x020a9448
_ZN14Actor_Derived119func_ov000_020a94b0Ev kind:function(arm,size=0xe8) addr:0x020a94b0
_ZN14Actor_Derived18vfunc_9cEv kind:function(arm,size=0x2c) addr:0x020a9598
_ZN14Actor_Derived18vfunc_a0Ev kind:function(arm,size=0x10) addr:0x020a95c4
_ZN14Actor_Derived18vfunc_acEv kind:function(arm,size=0x4) addr:0x020a95d4
_ZN14Actor_Derived119func_ov000_020a95d8Ev kind:function(arm,size=0xc) addr:0x020a95d8
_ZN14Actor_Derived18vfunc_a4Ev kind:function(arm,size=0x218) addr:0x020a95e4
_ZN14Actor_Derived18vfunc_a8Ev kind:function(arm,size=0x8) addr:0x020a97fc
_ZN14Actor_Derived119func_ov000_020a9804Ev kind:function(arm,size=0xec) addr:0x020a9804
_ZN14Actor_Derived18vfunc_20Ev kind:function(arm,size=0x4) addr:0x020a98f0
_ZN14Actor_Derived18vfunc_24Ev kind:function(arm,size=0x68) addr:0x020a98f4
_ZN14Actor_Derived18vfunc_2cEi kind:function(arm,size=0x48) addr:0x020a995c
_ZN14Actor_Derived18vfunc_b8Ev kind:function(arm,size=0x34) addr:0x020a99a4
_ZN14Actor_Derived18vfunc_14Ev kind:function(arm,size=0x48) addr:0x020a99d8
_ZN19func_ov000_020a9a20D1Ev kind:function(arm,size=0x14) addr:0x020a9a20
_ZN19func_ov000_020a9a34D0Ev kind:function(arm,size=0x1c) addr:0x020a9a34
func_ov000_020a9a50 kind:function(arm,size=0x44) addr:0x020a9a50
@@ -3999,7 +3999,7 @@ data_ov000_020b4d48 kind:data(any) addr:0x020b4d48
data_ov000_020b4d54 kind:data(any) addr:0x020b4d54
data_ov000_020b4d58 kind:data(any) addr:0x020b4d58
data_ov000_020b4d64 kind:data(any) addr:0x020b4d64
_ZTV23ActorUnk_ov000_020a8bb0 kind:data(any) addr:0x020b4d88
_ZTV14Actor_Derived1 kind:data(any) addr:0x020b4d88
data_ov000_020b4e4c kind:data(any) addr:0x020b4e4c
data_ov000_020b4e60 kind:data(any) addr:0x020b4e60
data_ov000_020b4e74 kind:data(any) addr:0x020b4e74
@@ -5,6 +5,9 @@
.data start:0x020c2940 end:0x020c2fe0 kind:data align:32
.bss start:0x020c2fe0 end:0x020c4720 kind:bss align:32
src/001_SceneInit/Save/SaveManager_001.cpp:
.text start:0x020ba670 end:0x020ba858
src/001_SceneInit/Actor/ActorManager_001.cpp:
.text start:0x020baf64 end:0x020bb87c
.rodata start:0x020c2624 end:0x020c264c
+1 -1
View File
@@ -243,7 +243,7 @@ src/024_MainGame/MiscAdvManager.cpp:
.text start:0x020d62b4 end:0x020d6650
.bss start:0x020d86b0 end:0x020d86b4
src/024_MainGame/Actor/ActorUnk_ov000_020a8bb0_EC_024.cpp:
src/024_MainGame/Actor/Actor_Derived1_EC_024.cpp:
complete
.text start:0x020d6650 end:0x020d6e9c
.bss start:0x020d86b4 end:0x020d86b8
+10 -10
View File
@@ -697,15 +697,15 @@ _ZN14MiscAdvManager13PostPriceCardEii kind:function(arm,size=0x74) addr:0x020d65
_ZN14MiscAdvManager19func_ov024_020d6610Ev kind:function(arm,size=0x1c) addr:0x020d6610
_ZN8InstanceI14MiscAdvManagerEC2Ev kind:function(arm,size=0x10) addr:0x020d662c
_ZN8InstanceI14MiscAdvManagerED2Ev kind:function(arm,size=0x14) addr:0x020d663c
_ZN26ActorUnk_ov000_020a8bb0_ECC2Ev kind:function(thumb,size=0x16) addr:0x020d6650
_ZN26ActorUnk_ov000_020a8bb0_ECC1Ev kind:function(thumb,size=0x16) addr:0x020d6668
_ZN26ActorUnk_ov000_020a8bb0_EC19func_ov024_020d6680EPK7VecFx32Ph kind:function(arm,size=0x40) addr:0x020d6680
_ZN26ActorUnk_ov000_020a8bb0_EC19func_ov024_020d66c0EPK7VecFx32i kind:function(arm,size=0x44) addr:0x020d66c0
_ZN26ActorUnk_ov000_020a8bb0_EC19func_ov024_020d6704Ev kind:function(arm,size=0x2c) addr:0x020d6704
_ZN26ActorUnk_ov000_020a8bb0_EC19func_ov024_020d6730Ev kind:function(arm,size=0x2a8) addr:0x020d6730
_ZN26ActorUnk_ov000_020a8bb0_EC19func_ov024_020d69d8EP7VecFx32PsS1_isi kind:function(arm,size=0x1a4) addr:0x020d69d8
_ZN26ActorUnk_ov000_020a8bb0_EC19func_ov024_020d6b7cEP7VecFx32PsS1_isi kind:function(arm,size=0x204) addr:0x020d6b7c
_ZN26ActorUnk_ov000_020a8bb0_EC19func_ov024_020d6d80EP7VecFx32S1_ kind:function(arm,size=0x11c) addr:0x020d6d80
_ZN17Actor_Derived1_ECC2Ev kind:function(thumb,size=0x16) addr:0x020d6650
_ZN17Actor_Derived1_ECC1Ev kind:function(thumb,size=0x16) addr:0x020d6668
_ZN17Actor_Derived1_EC19func_ov024_020d6680EPK7VecFx32Ph kind:function(arm,size=0x40) addr:0x020d6680
_ZN17Actor_Derived1_EC19func_ov024_020d66c0EPK7VecFx32i kind:function(arm,size=0x44) addr:0x020d66c0
_ZN17Actor_Derived1_EC19func_ov024_020d6704Ev kind:function(arm,size=0x2c) addr:0x020d6704
_ZN17Actor_Derived1_EC19func_ov024_020d6730Ev kind:function(arm,size=0x2a8) addr:0x020d6730
_ZN17Actor_Derived1_EC19func_ov024_020d69d8EP7VecFx32PsS1_isi kind:function(arm,size=0x1a4) addr:0x020d69d8
_ZN17Actor_Derived1_EC19func_ov024_020d6b7cEP7VecFx32PsS1_isi kind:function(arm,size=0x204) addr:0x020d6b7c
_ZN17Actor_Derived1_EC19func_ov024_020d6d80EP7VecFx32S1_ kind:function(arm,size=0x11c) addr:0x020d6d80
_ZN19ActorProfileUnkOBPC10GetProfileEv kind:function(arm,size=0xc) addr:0x020d6e9c
_ZN19ActorProfileUnkOBPC6CreateEv kind:function(arm,size=0x24) addr:0x020d6ea8
_ZN19ActorProfileUnkOBPCC1Ev kind:function(arm,size=0x28) addr:0x020d6ecc
@@ -714,7 +714,7 @@ _ZN12ActorUnkOBPC8vfunc_18Ei kind:function(arm,size=0x4c) addr:0x020d6f28
_ZN12ActorUnkOBPC19func_ov024_020d6f74Ev kind:function(arm,size=0x20) addr:0x020d6f74
_ZN12ActorUnkOBPC8vfunc_20Ev kind:function(arm,size=0xbc) addr:0x020d6f94
_ZN12ActorUnkOBPC8vfunc_24Ev kind:function(arm,size=0x14) addr:0x020d7050
_ZN12ActorUnkOBPC19func_ov024_020d7064Esi kind:function(arm,size=0xf0) addr:0x020d7064
_ZN12ActorUnkOBPC8SetStateEsi kind:function(arm,size=0xf0) addr:0x020d7064
_ZN12ActorUnkOBPC19func_ov024_020d7154Ev kind:function(arm,size=0x168) addr:0x020d7154
_ZN12ActorUnkOBPCD1Ev kind:function(arm,size=0x20) addr:0x020d72bc
_ZN12ActorUnkOBPCD0Ev kind:function(arm,size=0x28) addr:0x020d72dc
@@ -5,6 +5,10 @@
.data start:0x02135280 end:0x02138ce0 kind:data align:32
.bss start:0x02138ce0 end:0x021419e0 kind:bss align:32
src/026_Train/code_02102924.cpp:
.text start:0x02102924 end:0x02102934
.data start:0x02135fec end:0x0213616c
src/026_Train/Actor/ActorUnkDKCL.cpp:
.text start:0x02104f00 end:0x021050cc
.init start:0x02134038 end:0x02134088
+2 -2
View File
@@ -1011,7 +1011,7 @@ func_ov026_02102884 kind:function(arm,size=0x50) addr:0x02102884
func_ov026_021028d4 kind:function(arm,size=0x18) addr:0x021028d4
_ZN19func_ov026_021028ecD0Ev kind:function(arm,size=0x1c) addr:0x021028ec
_ZN19func_ov026_02102908D0Ev kind:function(arm,size=0x1c) addr:0x02102908
func_ov026_02102924 kind:function(arm,size=0x10) addr:0x02102924
_Z19func_ov026_02102924i kind:function(arm,size=0x10) addr:0x02102924
func_ov026_02102934 kind:function(arm,size=0x14) addr:0x02102934
func_ov026_02102948 kind:function(arm,size=0x3c) addr:0x02102948
_ZN19func_ov026_02102984D1Ev kind:function(arm,size=0x28) addr:0x02102984
@@ -1833,7 +1833,7 @@ _ZN19ActorProfileUnkRB1T6CreateEv kind:function(arm,size=0x24) addr:0x0211e104
_ZN19ActorProfileUnkRB1TC1Ev kind:function(arm,size=0x70) addr:0x0211e128
_ZN12ActorUnkRB1TC1Ev kind:function(arm,size=0x234) addr:0x0211e198
_ZN12ActorUnkRB1T19func_ov026_0211e3ccEv kind:function(arm,size=0x14) addr:0x0211e3cc
_ZN12ActorUnkRB1T19func_ov026_0211e3e0Ev kind:function(arm,size=0xe8) addr:0x0211e3e0
_ZN12ActorUnkRB1T19func_ov026_0211e3e0Ei kind:function(arm,size=0xe8) addr:0x0211e3e0
_ZN12ActorUnkRB1T19func_ov026_0211e4c8Ev kind:function(arm,size=0x8c) addr:0x0211e4c8
_ZN12ActorUnkRB1T19func_ov026_0211e554Ev kind:function(arm,size=0x178) addr:0x0211e554
_ZN12ActorUnkRB1T19func_ov026_0211e6ccEv kind:function(arm,size=0x18) addr:0x0211e6cc
+9 -9
View File
@@ -590,7 +590,7 @@ _ZN10ActorRupee19func_ov031_020e970cEv kind:function(arm,size=0x34) addr:0x020e9
_ZN10ActorRupee19func_ov031_020e9740Ev kind:function(arm,size=0xf8) addr:0x020e9740
_ZN10ActorRupee19func_ov031_020e9838Ev kind:function(arm,size=0x8c) addr:0x020e9838
_ZN10ActorRupee19func_ov031_020e98c4Ev kind:function(arm,size=0x40) addr:0x020e98c4
_ZN10ActorRupee19func_ov031_020e9904Ei kind:function(arm,size=0x54) addr:0x020e9904
_ZN10ActorRupee8SetStateEs kind:function(arm,size=0x54) addr:0x020e9904
_ZN10ActorRupee8vfunc_20Ev kind:function(arm,size=0x230) addr:0x020e9958
_ZN10ActorRupee19func_ov031_020e9b88Ev kind:function(arm,size=0x60) addr:0x020e9b88
_ZN10ActorRupee19func_ov031_020e9be8Ev kind:function(arm,size=0x44) addr:0x020e9be8
@@ -735,7 +735,7 @@ _ZN10ActorHeart19func_ov031_020eed64EP8ActorRefPK7VecFx32jS0_ kind:function(arm,
_ZN10ActorHeartC1Ev kind:function(arm,size=0xf8) addr:0x020eede0
_ZN10ActorHeart8vfunc_18Ei kind:function(arm,size=0x10) addr:0x020eeed8
_ZN10ActorHeart8vfunc_20Ev kind:function(arm,size=0x2cc) addr:0x020eeee8
_ZN10ActorHeart19func_ov031_020ef1b4Es kind:function(arm,size=0x54) addr:0x020ef1b4
_ZN10ActorHeart8SetStateEs kind:function(arm,size=0x54) addr:0x020ef1b4
_ZN10ActorHeart19func_ov031_020ef208Ev kind:function(arm,size=0xe4) addr:0x020ef208
_ZN10ActorHeart19func_ov031_020ef2ecEv kind:function(arm,size=0xc) addr:0x020ef2ec
_ZN10ActorHeart19func_ov031_020ef2f8Ev kind:function(arm,size=0x28) addr:0x020ef2f8
@@ -1173,7 +1173,7 @@ _ZN13ActorItemDrop8vfunc_18Ei kind:function(arm,size=0x30) addr:0x020fa20c
_ZN13ActorItemDrop8vfunc_20Ev kind:function(arm,size=0xc) addr:0x020fa23c
_ZN13ActorItemDrop8vfunc_24Ev kind:function(arm,size=0x18) addr:0x020fa248
_ZN13ActorItemDrop19func_ov031_020fa260Ev kind:function(arm,size=0x1c4) addr:0x020fa260
_ZN13ActorItemDrop19func_ov031_020fa424Es kind:function(arm,size=0x44) addr:0x020fa424
_ZN13ActorItemDrop8SetStateEs kind:function(arm,size=0x44) addr:0x020fa424
_ZN13ActorItemDrop19func_ov031_020fa468Ev kind:function(arm,size=0x4) addr:0x020fa468
_ZN13ActorItemDrop19func_ov031_020fa46cEv kind:function(arm,size=0x28) addr:0x020fa46c
_ZN13ActorItemDrop19func_ov031_020fa494Ev kind:function(arm,size=0xc) addr:0x020fa494
@@ -1190,11 +1190,11 @@ _ZN13ActorItemDrop19func_ov031_020fa6c8Ev kind:function(arm,size=0x64) addr:0x02
_ZN13ActorItemDrop19func_ov031_020fa72cEv kind:function(arm,size=0x110) addr:0x020fa72c
_ZN13ActorItemDrop8vfunc_2cEi kind:function(arm,size=0xc4) addr:0x020fa83c
_ZN13ActorItemDrop19func_ov031_020fa900Ev kind:function(arm,size=0xf8) addr:0x020fa900
_ZN19ActorDroppedItem_c4C1EP5Actor kind:function(arm,size=0x38) addr:0x020fa9f8
_ZN19ActorDroppedItem_c48vfunc_00E8ActorRefi kind:function(arm,size=0x44) addr:0x020faa30
_ZN19ActorDroppedItem_c48vfunc_04Ev kind:function(arm,size=0x20) addr:0x020faa74
_ZN19ActorDroppedItem_c48vfunc_0cEi kind:function(arm,size=0x28) addr:0x020faa94
_ZN19ActorDroppedItem_c48vfunc_08Ev kind:function(arm,size=0x20) addr:0x020faabc
_ZN16ActorItemDrop_c4C1EP5Actor kind:function(arm,size=0x38) addr:0x020fa9f8
_ZN16ActorItemDrop_c48vfunc_00E8ActorRefi kind:function(arm,size=0x44) addr:0x020faa30
_ZN16ActorItemDrop_c48vfunc_04Ev kind:function(arm,size=0x20) addr:0x020faa74
_ZN16ActorItemDrop_c48vfunc_0cEi kind:function(arm,size=0x28) addr:0x020faa94
_ZN16ActorItemDrop_c48vfunc_08Ev kind:function(arm,size=0x20) addr:0x020faabc
_ZN13ActorItemDropD1Ev kind:function(arm,size=0x14) addr:0x020faadc
_ZN13ActorItemDropD0Ev kind:function(arm,size=0x1c) addr:0x020faaf0
_ZN21ActorProfileArrowDropD1Ev kind:function(arm,size=0x14) addr:0x020fab0c
@@ -2394,7 +2394,7 @@ _ZTV19data_ov031_02114b44 kind:data(any) addr:0x02114b44
data_ov031_02114ba0 kind:data(any) addr:0x02114ba0 local
data_ov031_02114bb0 kind:data(any) addr:0x02114bb0 local
data_ov031_02114be8 kind:data(any) addr:0x02114be8 local
_ZTV19ActorDroppedItem_c4 kind:data(any) addr:0x02114c20
_ZTV16ActorItemDrop_c4 kind:data(any) addr:0x02114c20
_ZTV21ActorProfileArrowDrop kind:data(any) addr:0x02114c38
_ZTV24ActorProfileTreasureDrop kind:data(any) addr:0x02114c5c
_ZTV25ActorProfileRedPotionDrop kind:data(any) addr:0x02114c80
+1 -1
View File
@@ -29,7 +29,7 @@ _ZN12ActorUnkKEYTD0Ev kind:function(arm,size=0x38) addr:0x02123cc0
_ZN12ActorUnkKEYT19func_ov041_02123cf8Ev kind:function(arm,size=0x48) addr:0x02123cf8
_ZN12ActorUnkKEYT19func_ov041_02123d40Ev kind:function(arm,size=0x48) addr:0x02123d40
_ZN12ActorUnkKEYT19func_ov041_02123d88Ev kind:function(arm,size=0x130) addr:0x02123d88
_ZN12ActorUnkKEYT19func_ov041_02123eb8Ev kind:function(arm,size=0x140) addr:0x02123eb8
_ZN12ActorUnkKEYT4GrabE15ActorGrabParams kind:function(arm,size=0x140) addr:0x02123eb8
_ZN12ActorUnkKEYT19func_ov041_02123ff8Ev kind:function(arm,size=0x9c) addr:0x02123ff8
_ZN12ActorUnkKEYT19func_ov041_02124094Ev kind:function(arm,size=0x2c) addr:0x02124094
_ZN12ActorUnkKEYT19func_ov041_021240c0Ev kind:function(arm,size=0xa4) addr:0x021240c0
+1 -1
View File
@@ -196,7 +196,7 @@ from:0x0213a3c0 kind:load to:0x0213bf60 module:overlay(57)
from:0x0213a3c4 kind:load to:0x0213befa module:overlay(57)
from:0x0213a3c8 kind:load to:0x0213bf04 module:overlay(57)
from:0x0213a3cc kind:load to:0x0213b8ee module:overlay(57)
from:0x0213a3dc kind:arm_call to:0x020f750c module:overlays(26,31)
from:0x0213a3dc kind:arm_call to:0x020f750c module:overlay(31)
from:0x0213a3ec kind:arm_call to:0x0213a1d4 module:overlay(57)
from:0x0213a3f4 kind:arm_call to:0x0207f47c module:overlay(0)
from:0x0213a410 kind:arm_call to:0x0203d160 module:main
+1 -1
View File
@@ -1012,7 +1012,7 @@ func_0201a87c kind:function(arm,size=0xf8) addr:0x0201a87c
func_0201a974 kind:function(arm,size=0xd0) addr:0x0201a974
_ZN18UnkStruct_0204af1c13func_0201aa44EP34UnkStruct_ov019_020d24c8_28_258_00PviS2_ kind:function(arm,size=0x48) addr:0x0201aa44
_ZN18UnkStruct_0204af1c13func_0201aa8cEP34UnkStruct_ov019_020d24c8_28_258_00iiii kind:function(arm,size=0x44) addr:0x0201aa8c
_ZN18UnkStruct_0204af1c13func_0201aad0EP14UnkSubStruct19PviS2_ kind:function(arm,size=0x1a0) addr:0x0201aad0
_ZN18UnkStruct_0204af1c13func_0201aad0EP14CellAnimObjectPviS2_ kind:function(arm,size=0x1a0) addr:0x0201aad0
func_0201ac70 kind:function(arm,size=0x13c) addr:0x0201ac70
func_0201adac kind:function(arm,size=0x50) addr:0x0201adac
func_0201adfc kind:function(arm,size=0xb0) addr:0x0201adfc
+3
View File
@@ -3,3 +3,6 @@
src/ITCM/ITCM_MapObjectManager.cpp:
.text start:0x01fff498 end:0x01fff5d0
src/ITCM/ITCM_ActorManager.cpp:
.text start:0x01fff350 end:0x01fff440
+1 -1
View File
@@ -212,7 +212,7 @@ _ZN9MapObject13func_01fff590Ei kind:function(arm,size=0x40) addr:0x01fff590
_ZN5Actor13func_01fff5d0Eii kind:function(arm,size=0x3c) addr:0x01fff5d0
_ZN18UnkStruct_027e09b413func_01fff60cEiiihii kind:function(arm,size=0x8c) addr:0x01fff60c
func_01fff698 kind:function(arm,size=0x38) addr:0x01fff698
_ZN21UnkStruct_027e0cd8_1013func_01fff6d0EP7VecFx32PiS2_ kind:function(arm,size=0x74) addr:0x01fff6d0
_ZN16MapObjectManager13func_01fff6d0EP7VecFx32PiS2_ kind:function(arm,size=0x74) addr:0x01fff6d0
func_01fff744 kind:function(arm,size=0x20) addr:0x01fff744
func_01fff764 kind:function(arm,size=0xec) addr:0x01fff764
func_01fff850 kind:function(arm,size=0x158) addr:0x01fff850
+2 -1
View File
@@ -74,6 +74,7 @@ src/000_Second/MapObject/MapObjectProfile_Derived2_20.cpp:
.data start:0x020b4d60 end:0x020b4d88
src/000_Second/MapObject/MapObject.cpp:
complete
.text start:0x0209e7a4 end:0x0209eec4
.data start:0x020b4d88 end:0x020b4dc8
@@ -108,7 +109,7 @@ src/000_Second/Item/ItemManager.cpp:
.text start:0x020a9e3c end:0x020aa2e0
.rodata start:0x020b1450 end:0x020b1458
src/000_Second/Actor/ActorUnk_ov000_020a8bb0.cpp:
src/000_Second/Actor/Actor_Derived1.cpp:
.text start:0x020aa2e0 end:0x020ab310
.data start:0x020b6588 end:0x020b664c
+71 -71
View File
@@ -423,20 +423,20 @@ func_ov000_02061c78 kind:function(arm,size=0x48) addr:0x02061c78
func_ov000_02061cc0 kind:function(arm,size=0x24) addr:0x02061cc0
func_ov000_02061ce4 kind:function(arm,size=0x80) addr:0x02061ce4
func_ov000_02061d64 kind:function(arm,size=0x28) addr:0x02061d64
_ZN14UnkSubStruct19C1Ev kind:function(arm,size=0x28) addr:0x02061d8c
_ZN14UnkSubStruct1919func_ov000_0206082cEsi kind:function(arm,size=0x124) addr:0x02061db4
_ZN14UnkSubStruct1919func_ov000_02060950Ev kind:function(arm,size=0x60) addr:0x02061ed8
_ZN14UnkSubStruct1919func_ov000_020609b0Ev kind:function(arm,size=0x14) addr:0x02061f38
_ZN14UnkSubStruct1919func_ov000_020609c4Ev kind:function(arm,size=0xd4) addr:0x02061f4c
_ZN14UnkSubStruct1919func_ov000_02060a98Ei kind:function(arm,size=0x38) addr:0x02062020
_ZN14UnkSubStruct1919func_ov000_02060ad0Ev kind:function(arm,size=0x28) addr:0x02062058
_ZN14UnkSubStruct1919func_ov000_02060af8Ev kind:function(arm,size=0x58) addr:0x02062080
_ZN14UnkSubStruct1919func_ov000_02060b50Ev kind:function(arm,size=0x14) addr:0x020620d8
_ZN14UnkSubStruct1919func_ov000_02060b64Ev kind:function(arm,size=0x20) addr:0x020620ec
_ZN14CellAnimObjectC1Ev kind:function(arm,size=0x28) addr:0x02061d8c
_ZN14CellAnimObject19func_ov000_0206082cEsi kind:function(arm,size=0x124) addr:0x02061db4
_ZN14CellAnimObject19func_ov000_02060950Ev kind:function(arm,size=0x60) addr:0x02061ed8
_ZN14CellAnimObject19func_ov000_020609b0Ev kind:function(arm,size=0x14) addr:0x02061f38
_ZN14CellAnimObject19func_ov000_020609c4Ev kind:function(arm,size=0xd4) addr:0x02061f4c
_ZN14CellAnimObject19func_ov000_02060a98Ei kind:function(arm,size=0x38) addr:0x02062020
_ZN14CellAnimObject19func_ov000_02060ad0Ev kind:function(arm,size=0x28) addr:0x02062058
_ZN14CellAnimObject19func_ov000_02060af8Ev kind:function(arm,size=0x58) addr:0x02062080
_ZN14CellAnimObject19func_ov000_02060b50Ev kind:function(arm,size=0x14) addr:0x020620d8
_ZN14CellAnimObject19func_ov000_02060b64Ev kind:function(arm,size=0x20) addr:0x020620ec
func_ov000_0206210c kind:function(arm,size=0x28) addr:0x0206210c
_ZN14UnkSubStruct1919func_ov000_02060bacEv kind:function(arm,size=0x2c) addr:0x02062134
_ZN14UnkSubStruct1919func_ov000_02060bd8Ei kind:function(arm,size=0x50) addr:0x02062160
_ZN14UnkSubStruct1919func_ov000_02060c28Ev kind:function(arm,size=0xc) addr:0x020621b0
_ZN14CellAnimObject19func_ov000_02060bacEv kind:function(arm,size=0x2c) addr:0x02062134
_ZN14CellAnimObject19func_ov000_02060bd8Ei kind:function(arm,size=0x50) addr:0x02062160
_ZN14CellAnimObject19func_ov000_02060c28Ev kind:function(arm,size=0xc) addr:0x020621b0
_ZN25UnkStruct_020d8698_2C_14CC1Ev kind:function(arm,size=0x1c) addr:0x020621bc
_ZN25UnkStruct_020d8698_2C_14C19func_ov000_02060c50EPKwP25UnkStruct_020d8698_2C_198iP34UnkStruct_ov019_020d24c8_28_258_00 kind:function(arm,size=0x2c) addr:0x020621d8
_ZN25UnkStruct_020d8698_2C_14C19func_ov000_02060c7cEi kind:function(arm,size=0x100) addr:0x02062204
@@ -696,7 +696,7 @@ _ZN21UnkSystem1_ov000_Base8vfunc_18Ev kind:function(arm,size=0x4) addr:0x02067f6
_ZN21UnkSystem1_ov000_Base19func_ov000_020669dcEv kind:function(arm,size=0x2c) addr:0x02067f64
_ZN21UnkSystem1_ov000_Base19func_ov000_02066a08EP10UnkStruct5 kind:function(arm,size=0x54) addr:0x02067f90
_ZN21UnkSystem1_ov000_Base8vfunc_10EPt kind:function(arm,size=0x3a0) addr:0x02067fe4
_ZN21UnkSystem1_ov000_Base8vfunc_14EPv kind:function(arm,size=0x44c) addr:0x02068384
_ZN21UnkSystem1_ov000_Base8vfunc_14EP9FLW1Instr kind:function(arm,size=0x44c) addr:0x02068384
_ZN21UnkSystem1_ov000_Base8vfunc_1CEjii kind:function(arm,size=0x8) addr:0x020687d0
_ZN21UnkSystem1_ov000_Base8vfunc_20Eiii kind:function(arm,size=0x8) addr:0x020687d8
_ZN25UnkSystem1_ov000_Derived1C2EiPN24UnkStruct_ov000_02067bc410UnkStruct1E kind:function(arm,size=0x34) addr:0x020687e0
@@ -1494,9 +1494,9 @@ _ZN19func_ov000_020803c8D2Ev kind:function(arm,size=0x30) addr:0x020803c8
func_ov000_020803f8 kind:function(arm,size=0x44) addr:0x020803f8
func_ov000_0208043c kind:function(arm,size=0x8) addr:0x0208043c
func_ov000_02080444 kind:function(arm,size=0x20) addr:0x02080444
_ZN26ActorUnk_ov000_020a8bb0_94C2Ev kind:function(arm,size=0x20) addr:0x02080464
_ZN17Actor_Derived1_94C2Ev kind:function(arm,size=0x20) addr:0x02080464
func_ov000_02080484 kind:function(arm,size=0x1c) addr:0x02080484
_ZN26ActorUnk_ov000_020a8bb0_94D2Ev kind:function(arm,size=0x30) addr:0x020804a0
_ZN17Actor_Derived1_94D2Ev kind:function(arm,size=0x30) addr:0x020804a0
_ZN19func_ov000_020804d0D0Ev kind:function(arm,size=0x38) addr:0x020804d0
_ZN19func_ov000_02080508D2Ev kind:function(arm,size=0x30) addr:0x02080508
func_ov000_02080538 kind:function(arm,size=0x4) addr:0x02080538
@@ -2323,13 +2323,13 @@ _ZN5Actor8vfunc_30Ev kind:function(arm,size=0x4) addr:0x02099c6c
_ZN5Actor8vfunc_34Ev kind:function(arm,size=0x8) addr:0x02099c70
_ZN5Actor19func_ov000_020984d0Ev kind:function(arm,size=0x20) addr:0x02099c78
_ZN5Actor19func_ov000_020984f0Ev kind:function(arm,size=0x28) addr:0x02099c98
_ZN5Actor8vfunc_00EP7VecFx32 kind:function(arm,size=0x24) addr:0x02099cc0
_ZNK5Actor12GetOffsetPosEP7VecFx32 kind:function(arm,size=0x24) addr:0x02099cc0
_ZN5Actor19func_ov000_0209853cEi kind:function(arm,size=0x18) addr:0x02099ce4
_ZN5Actor8vfunc_04Ev kind:function(arm,size=0x18) addr:0x02099cfc
_ZN5Actor8vfunc_08Ev kind:function(arm,size=0xc) addr:0x02099d14
_ZN5Actor8vfunc_0cEv kind:function(arm,size=0xc) addr:0x02099d20
_ZN5Actor8vfunc_38Ei kind:function(arm,size=0x6c) addr:0x02099d2c
_ZN5Actor8vfunc_3cEiP7VecFx32 kind:function(arm,size=0x3c) addr:0x02099d98
_ZN5Actor4GrabE15ActorGrabParams kind:function(arm,size=0x6c) addr:0x02099d2c
_ZN5Actor4DropE15ActorGrabParamsPK7VecFx32 kind:function(arm,size=0x3c) addr:0x02099d98
_ZN5Actor19func_ov000_0209862cEi kind:function(arm,size=0x28) addr:0x02099dd4
func_ov000_02099dfc kind:function(arm,size=0x28) addr:0x02099dfc
func_ov000_02099e24 kind:function(arm,size=0x38) addr:0x02099e24
@@ -2434,7 +2434,7 @@ _ZN19ActorProfileUnkSWOB6CreateEv kind:function(arm,size=0x24) addr:0x0209c090
_ZN19ActorProfileUnkSWOBC1Ev kind:function(arm,size=0x28) addr:0x0209c0b4
_ZN12ActorUnkSWOBC1Ev kind:function(arm,size=0x38) addr:0x0209c0dc
_ZN12ActorUnkSWOB8vfunc_18Ei kind:function(arm,size=0x6c) addr:0x0209c114
_ZN12ActorUnkSWOB19func_ov000_0209a9b4Ei kind:function(arm,size=0x7c) addr:0x0209c180
_ZN12ActorUnkSWOB8SetStateEs kind:function(arm,size=0x7c) addr:0x0209c180
_ZN12ActorUnkSWOB19func_ov000_0209aa30Ev kind:function(arm,size=0x234) addr:0x0209c1fc
_ZN12ActorUnkSWOBD1Ev kind:function(arm,size=0x14) addr:0x0209c430
_ZN12ActorUnkSWOBD0Ev kind:function(arm,size=0x1c) addr:0x0209c444
@@ -2448,7 +2448,7 @@ _ZN12ActorUnkSWTMD0Ev kind:function(arm,size=0x50) addr:0x0209c570
_ZN12ActorUnkSWTM8vfunc_18Ei kind:function(arm,size=0x74) addr:0x0209c5c0
_ZN12ActorUnkSWTM8vfunc_20Ev kind:function(arm,size=0xe8) addr:0x0209c634
_ZN12ActorUnkSWTM8vfunc_24Ev kind:function(arm,size=0x4) addr:0x0209c71c
_ZN12ActorUnkSWTM19func_ov000_0209af54Ei kind:function(arm,size=0x90) addr:0x0209c720
_ZN12ActorUnkSWTM8SetStateEs kind:function(arm,size=0x90) addr:0x0209c720
_ZN12ActorUnkSWTM19func_ov000_0209afe4Ev kind:function(arm,size=0x54) addr:0x0209c7b0
_ZN12ActorUnkSWTM19func_ov000_0209b038Ev kind:function(arm,size=0x128) addr:0x0209c804
_ZN12ActorUnkSWTM19func_ov000_0209b160Ev kind:function(arm,size=0x24) addr:0x0209c92c
@@ -2566,7 +2566,7 @@ _ZN9MapObject19func_ov000_0209d2f0EiiP5Vec2b kind:function(arm,size=0xc4) addr:0
_ZN9MapObject19func_ov000_0209d3b4Eii kind:function(arm,size=0x80) addr:0x0209eb78
_ZN9MapObject19func_ov000_0209d434EPcP34UnkStruct_ov019_020d24c8_28_258_00i kind:function(arm,size=0xe4) addr:0x0209ebf8
_ZN9MapObject19func_ov000_0209d518Eiiih kind:function(arm,size=0x34) addr:0x0209ecdc
_ZN9MapObject19func_ov000_0209d54cEPvPS_iP7VecFx32ii kind:function(arm,size=0x7c) addr:0x0209ed10
_ZN9MapObject19func_ov000_0209d54cEP8ActorRefPS_tPK7VecFx32st kind:function(arm,size=0x7c) addr:0x0209ed10
_ZN9MapObject19func_ov000_0209d5c8E8ActorRef kind:function(arm,size=0x4c) addr:0x0209ed8c
_ZN9MapObject19func_ov000_0209d614Ei kind:function(arm,size=0x54) addr:0x0209edd8
_ZN9MapObject19func_ov000_0209d668Ev kind:function(arm,size=0x44) addr:0x0209ee2c
@@ -2714,7 +2714,7 @@ func_ov000_020a2750 kind:function(thumb,size=0xc) addr:0x020a2750
func_ov000_020a275c kind:function(thumb,size=0x30) addr:0x020a275c
func_ov000_020a278c kind:function(thumb,size=0x10) addr:0x020a278c
func_ov000_020a279c kind:function(thumb,size=0x3c) addr:0x020a279c
_ZN15SaveManager_21C19func_ov000_020a1000Ev kind:function(thumb,size=0x28) addr:0x020a27d8
_ZN28SaveFile_00000_0000_Data_D9C19func_ov000_020a1000Ev kind:function(thumb,size=0x28) addr:0x020a27d8
_ZN8SaveSlot19func_ov000_020a1028EP12SaveInfoData kind:function(thumb,size=0xcc) addr:0x020a2800
_ZN8SaveSlot19func_ov000_020a10f4EP24SaveFile_00000_2600_Data kind:function(arm,size=0x30) addr:0x020a28cc
_ZN8SaveSlot19func_ov000_020a1124Ev kind:function(arm,size=0x13c) addr:0x020a28fc
@@ -3019,56 +3019,56 @@ _ZN11ItemManager19func_ov000_020a8a90Ev kind:function(arm,size=0x14) addr:0x020a
_ZN11ItemManager19func_ov000_020a8aa4Ev kind:function(arm,size=0x14) addr:0x020aa2a4
_ZN11ItemManager19func_ov000_020a8ab8Ev kind:function(arm,size=0x14) addr:0x020aa2b8
_ZN11ItemManager19func_ov000_020a8accEv kind:function(arm,size=0x14) addr:0x020aa2cc
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a8ae0Ei kind:function(arm,size=0x14) addr:0x020aa2e0
_ZN14Actor_Derived119func_ov000_020a8ae0Ei kind:function(arm,size=0x14) addr:0x020aa2e0
func_ov000_020aa2f4 kind:function(arm,size=0x54) addr:0x020aa2f4
func_ov000_020aa348 kind:function(arm,size=0x34) addr:0x020aa348
func_ov000_020aa37c kind:function(arm,size=0x34) addr:0x020aa37c
_ZN23ActorUnk_ov000_020a8bb0C1EP11ModelRenderi kind:function(arm,size=0x110) addr:0x020aa3b0
_ZN23ActorUnk_ov000_020a8bb0D1Ev kind:function(arm,size=0x20) addr:0x020aa4c0
_ZN23ActorUnk_ov000_020a8bb0D0Ev kind:function(arm,size=0x28) addr:0x020aa4e0
_ZN23ActorUnk_ov000_020a8bb0D2Ev kind:function(arm,size=0x20) addr:0x020aa508
_ZN23ActorUnk_ov000_020a8bb08vfunc_18Ei kind:function(arm,size=0x78) addr:0x020aa528
_ZN23ActorUnk_ov000_020a8bb08vfunc_54Ei kind:function(arm,size=0x4) addr:0x020aa5a0
_ZN23ActorUnk_ov000_020a8bb08vfunc_1cEv kind:function(arm,size=0xc) addr:0x020aa5a4
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a8db0Ev kind:function(arm,size=0x20) addr:0x020aa5b0
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a8dd0Ev kind:function(arm,size=0x20) addr:0x020aa5d0
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a8df0E8ActorRefi kind:function(arm,size=0x94) addr:0x020aa5f0
_ZN23ActorUnk_ov000_020a8bb08vfunc_b4Ev kind:function(arm,size=0x18) addr:0x020aa684
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a8e9cEP7VecFx32 kind:function(arm,size=0x24) addr:0x020aa69c
_ZN23ActorUnk_ov000_020a8bb08vfunc_b0Ev kind:function(arm,size=0x94) addr:0x020aa6c0
_ZN23ActorUnk_ov000_020a8bb08vfunc_88Ev kind:function(arm,size=0x8) addr:0x020aa754
_ZN23ActorUnk_ov000_020a8bb08vfunc_8cEv kind:function(arm,size=0x8) addr:0x020aa75c
_ZN23ActorUnk_ov000_020a8bb08vfunc_90Ev kind:function(arm,size=0x8) addr:0x020aa764
_ZN23ActorUnk_ov000_020a8bb08vfunc_94Ev kind:function(arm,size=0xc) addr:0x020aa76c
_ZN23ActorUnk_ov000_020a8bb08vfunc_60Ev kind:function(arm,size=0x68) addr:0x020aa778
_ZN23ActorUnk_ov000_020a8bb08vfunc_64Ev kind:function(arm,size=0x14) addr:0x020aa7e0
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a8ff4Ev kind:function(arm,size=0x158) addr:0x020aa7f4
_ZN23ActorUnk_ov000_020a8bb08vfunc_6cEv kind:function(arm,size=0x4) addr:0x020aa94c
_ZN23ActorUnk_ov000_020a8bb08vfunc_68Ev kind:function(arm,size=0x50) addr:0x020aa950
_ZN23ActorUnk_ov000_020a8bb08vfunc_7cEv kind:function(arm,size=0x8) addr:0x020aa9a0
_ZN23ActorUnk_ov000_020a8bb08vfunc_80Ev kind:function(arm,size=0x8) addr:0x020aa9a8
_ZN23ActorUnk_ov000_020a8bb08vfunc_84Ev kind:function(arm,size=0x8) addr:0x020aa9b0
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a91b8EP7VecFx32i kind:function(arm,size=0x48) addr:0x020aa9b8
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a9200Ev kind:function(arm,size=0x1c) addr:0x020aaa00
_ZN23ActorUnk_ov000_020a8bb08vfunc_70Ev kind:function(arm,size=0x24) addr:0x020aaa1c
_ZN23ActorUnk_ov000_020a8bb08vfunc_74Ev kind:function(arm,size=0x4) addr:0x020aaa40
_ZN23ActorUnk_ov000_020a8bb08vfunc_78Ev kind:function(arm,size=0x4) addr:0x020aaa44
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a9248Ev kind:function(arm,size=0x88) addr:0x020aaa48
_ZN23ActorUnk_ov000_020a8bb08vfunc_5cEv kind:function(arm,size=0x178) addr:0x020aaad0
_ZN23ActorUnk_ov000_020a8bb08vfunc_98Ev kind:function(arm,size=0x68) addr:0x020aac48
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a94b0Ev kind:function(arm,size=0xe8) addr:0x020aacb0
_ZN23ActorUnk_ov000_020a8bb08vfunc_9cEv kind:function(arm,size=0x2c) addr:0x020aad98
_ZN23ActorUnk_ov000_020a8bb08vfunc_a0Ev kind:function(arm,size=0x10) addr:0x020aadc4
_ZN23ActorUnk_ov000_020a8bb08vfunc_acEv kind:function(arm,size=0x4) addr:0x020aadd4
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a95d8Ev kind:function(arm,size=0xc) addr:0x020aadd8
_ZN23ActorUnk_ov000_020a8bb08vfunc_a4Ev kind:function(arm,size=0x218) addr:0x020aade4
_ZN23ActorUnk_ov000_020a8bb08vfunc_a8Ev kind:function(arm,size=0x8) addr:0x020aaffc
_ZN23ActorUnk_ov000_020a8bb019func_ov000_020a9804Ev kind:function(arm,size=0xec) addr:0x020ab004
_ZN23ActorUnk_ov000_020a8bb08vfunc_20Ev kind:function(arm,size=0x4) addr:0x020ab0f0
_ZN23ActorUnk_ov000_020a8bb08vfunc_24Ev kind:function(arm,size=0x68) addr:0x020ab0f4
_ZN23ActorUnk_ov000_020a8bb08vfunc_2cEi kind:function(arm,size=0x48) addr:0x020ab15c
_ZN23ActorUnk_ov000_020a8bb08vfunc_b8Ev kind:function(arm,size=0x34) addr:0x020ab1a4
_ZN23ActorUnk_ov000_020a8bb08vfunc_14Ev kind:function(arm,size=0x48) addr:0x020ab1d8
_ZN14Actor_Derived1C1EP11ModelRenderi kind:function(arm,size=0x110) addr:0x020aa3b0
_ZN14Actor_Derived1D1Ev kind:function(arm,size=0x20) addr:0x020aa4c0
_ZN14Actor_Derived1D0Ev kind:function(arm,size=0x28) addr:0x020aa4e0
_ZN14Actor_Derived1D2Ev kind:function(arm,size=0x20) addr:0x020aa508
_ZN14Actor_Derived18vfunc_18Ei kind:function(arm,size=0x78) addr:0x020aa528
_ZN14Actor_Derived18vfunc_54Ei kind:function(arm,size=0x4) addr:0x020aa5a0
_ZN14Actor_Derived18vfunc_1cEv kind:function(arm,size=0xc) addr:0x020aa5a4
_ZN14Actor_Derived119func_ov000_020a8db0Ev kind:function(arm,size=0x20) addr:0x020aa5b0
_ZN14Actor_Derived119func_ov000_020a8dd0Ev kind:function(arm,size=0x20) addr:0x020aa5d0
_ZN14Actor_Derived119func_ov000_020a8df0E8ActorRefi kind:function(arm,size=0x94) addr:0x020aa5f0
_ZN14Actor_Derived18vfunc_b4Ev kind:function(arm,size=0x18) addr:0x020aa684
_ZN14Actor_Derived119func_ov000_020a8e9cEP7VecFx32 kind:function(arm,size=0x24) addr:0x020aa69c
_ZN14Actor_Derived18vfunc_b0Ev kind:function(arm,size=0x94) addr:0x020aa6c0
_ZN14Actor_Derived18vfunc_88Ev kind:function(arm,size=0x8) addr:0x020aa754
_ZN14Actor_Derived18vfunc_8cEv kind:function(arm,size=0x8) addr:0x020aa75c
_ZN14Actor_Derived18vfunc_90Ev kind:function(arm,size=0x8) addr:0x020aa764
_ZN14Actor_Derived18vfunc_94Ev kind:function(arm,size=0xc) addr:0x020aa76c
_ZN14Actor_Derived18vfunc_60Ev kind:function(arm,size=0x68) addr:0x020aa778
_ZN14Actor_Derived18vfunc_64Ev kind:function(arm,size=0x14) addr:0x020aa7e0
_ZN14Actor_Derived119func_ov000_020a8ff4Ev kind:function(arm,size=0x158) addr:0x020aa7f4
_ZN14Actor_Derived18vfunc_6cEv kind:function(arm,size=0x4) addr:0x020aa94c
_ZN14Actor_Derived18vfunc_68Ev kind:function(arm,size=0x50) addr:0x020aa950
_ZN14Actor_Derived18vfunc_7cEv kind:function(arm,size=0x8) addr:0x020aa9a0
_ZN14Actor_Derived18vfunc_80Ev kind:function(arm,size=0x8) addr:0x020aa9a8
_ZN14Actor_Derived18vfunc_84Ev kind:function(arm,size=0x8) addr:0x020aa9b0
_ZN14Actor_Derived119func_ov000_020a91b8EP7VecFx32i kind:function(arm,size=0x48) addr:0x020aa9b8
_ZN14Actor_Derived119func_ov000_020a9200Ev kind:function(arm,size=0x1c) addr:0x020aaa00
_ZN14Actor_Derived18vfunc_70Ev kind:function(arm,size=0x24) addr:0x020aaa1c
_ZN14Actor_Derived18vfunc_74Ev kind:function(arm,size=0x4) addr:0x020aaa40
_ZN14Actor_Derived18vfunc_78Ev kind:function(arm,size=0x4) addr:0x020aaa44
_ZN14Actor_Derived119func_ov000_020a9248Ev kind:function(arm,size=0x88) addr:0x020aaa48
_ZN14Actor_Derived18vfunc_5cEv kind:function(arm,size=0x178) addr:0x020aaad0
_ZN14Actor_Derived18vfunc_98Ei kind:function(arm,size=0x68) addr:0x020aac48
_ZN14Actor_Derived119func_ov000_020a94b0Ev kind:function(arm,size=0xe8) addr:0x020aacb0
_ZN14Actor_Derived18vfunc_9cEv kind:function(arm,size=0x2c) addr:0x020aad98
_ZN14Actor_Derived18vfunc_a0Ev kind:function(arm,size=0x10) addr:0x020aadc4
_ZN14Actor_Derived18vfunc_acEv kind:function(arm,size=0x4) addr:0x020aadd4
_ZN14Actor_Derived119func_ov000_020a95d8Ev kind:function(arm,size=0xc) addr:0x020aadd8
_ZN14Actor_Derived18vfunc_a4Ev kind:function(arm,size=0x218) addr:0x020aade4
_ZN14Actor_Derived18vfunc_a8Ev kind:function(arm,size=0x8) addr:0x020aaffc
_ZN14Actor_Derived119func_ov000_020a9804Ev kind:function(arm,size=0xec) addr:0x020ab004
_ZN14Actor_Derived18vfunc_20Ev kind:function(arm,size=0x4) addr:0x020ab0f0
_ZN14Actor_Derived18vfunc_24Ev kind:function(arm,size=0x68) addr:0x020ab0f4
_ZN14Actor_Derived18vfunc_2cEi kind:function(arm,size=0x48) addr:0x020ab15c
_ZN14Actor_Derived18vfunc_b8Ev kind:function(arm,size=0x34) addr:0x020ab1a4
_ZN14Actor_Derived18vfunc_14Ev kind:function(arm,size=0x48) addr:0x020ab1d8
_ZN19func_ov000_020ab220D1Ev kind:function(arm,size=0x14) addr:0x020ab220
_ZN19func_ov000_020ab234D0Ev kind:function(arm,size=0x1c) addr:0x020ab234
func_ov000_020a9a50 kind:function(arm,size=0x44) addr:0x020ab250
@@ -3999,7 +3999,7 @@ data_ov000_020b6548 kind:data(any) addr:0x020b6548
data_ov000_020b6554 kind:data(any) addr:0x020b6554
data_ov000_020b6558 kind:data(any) addr:0x020b6558
data_ov000_020b6564 kind:data(any) addr:0x020b6564
_ZTV23ActorUnk_ov000_020a8bb0 kind:data(any) addr:0x020b6588
_ZTV14Actor_Derived1 kind:data(any) addr:0x020b6588
data_ov000_020b664c kind:data(any) addr:0x020b664c
data_ov000_020b6660 kind:data(any) addr:0x020b6660
data_ov000_020b6674 kind:data(any) addr:0x020b6674
@@ -5,6 +5,9 @@
.data start:0x020c4180 end:0x020c4820 kind:data align:32
.bss start:0x020c4820 end:0x020c5f60 kind:bss align:32
src/001_SceneInit/Save/SaveManager_001.cpp:
.text start:0x020bbeac end:0x020bc094
src/001_SceneInit/Actor/ActorManager_001.cpp:
.text start:0x020bc7ac end:0x020bd0c4
.rodata start:0x020c3e78 end:0x020c3ea0
+1 -1
View File
@@ -243,7 +243,7 @@ src/024_MainGame/MiscAdvManager.cpp:
.text start:0x020d7c58 end:0x020d7ff4
.bss start:0x020da050 end:0x020da054
src/024_MainGame/Actor/ActorUnk_ov000_020a8bb0_EC_024.cpp:
src/024_MainGame/Actor/Actor_Derived1_EC_024.cpp:
complete
.text start:0x020d7ff4 end:0x020d8840
.bss start:0x020da054 end:0x020da058
+10 -10
View File
@@ -697,15 +697,15 @@ _ZN14MiscAdvManager13PostPriceCardEii kind:function(arm,size=0x74) addr:0x020d7f
_ZN14MiscAdvManager19func_ov024_020d6610Ev kind:function(arm,size=0x1c) addr:0x020d7fb4
_ZN8InstanceI14MiscAdvManagerEC2Ev kind:function(arm,size=0x10) addr:0x020d7fd0
_ZN8InstanceI14MiscAdvManagerED2Ev kind:function(arm,size=0x14) addr:0x020d7fe0
_ZN26ActorUnk_ov000_020a8bb0_ECC2Ev kind:function(thumb,size=0x16) addr:0x020d7ff4
_ZN26ActorUnk_ov000_020a8bb0_ECC1Ev kind:function(thumb,size=0x16) addr:0x020d800c
_ZN26ActorUnk_ov000_020a8bb0_EC19func_ov024_020d6680EPK7VecFx32Ph kind:function(arm,size=0x40) addr:0x020d8024
_ZN26ActorUnk_ov000_020a8bb0_EC19func_ov024_020d66c0EPK7VecFx32i kind:function(arm,size=0x44) addr:0x020d8064
_ZN26ActorUnk_ov000_020a8bb0_EC19func_ov024_020d6704Ev kind:function(arm,size=0x2c) addr:0x020d80a8
_ZN26ActorUnk_ov000_020a8bb0_EC19func_ov024_020d6730Ev kind:function(arm,size=0x2a8) addr:0x020d80d4
_ZN26ActorUnk_ov000_020a8bb0_EC19func_ov024_020d69d8EP7VecFx32PsS1_isi kind:function(arm,size=0x1a4) addr:0x020d837c
_ZN26ActorUnk_ov000_020a8bb0_EC19func_ov024_020d6b7cEP7VecFx32PsS1_isi kind:function(arm,size=0x204) addr:0x020d8520
_ZN26ActorUnk_ov000_020a8bb0_EC19func_ov024_020d6d80EP7VecFx32S1_ kind:function(arm,size=0x11c) addr:0x020d8724
_ZN17Actor_Derived1_ECC2Ev kind:function(thumb,size=0x16) addr:0x020d7ff4
_ZN17Actor_Derived1_ECC1Ev kind:function(thumb,size=0x16) addr:0x020d800c
_ZN17Actor_Derived1_EC19func_ov024_020d6680EPK7VecFx32Ph kind:function(arm,size=0x40) addr:0x020d8024
_ZN17Actor_Derived1_EC19func_ov024_020d66c0EPK7VecFx32i kind:function(arm,size=0x44) addr:0x020d8064
_ZN17Actor_Derived1_EC19func_ov024_020d6704Ev kind:function(arm,size=0x2c) addr:0x020d80a8
_ZN17Actor_Derived1_EC19func_ov024_020d6730Ev kind:function(arm,size=0x2a8) addr:0x020d80d4
_ZN17Actor_Derived1_EC19func_ov024_020d69d8EP7VecFx32PsS1_isi kind:function(arm,size=0x1a4) addr:0x020d837c
_ZN17Actor_Derived1_EC19func_ov024_020d6b7cEP7VecFx32PsS1_isi kind:function(arm,size=0x204) addr:0x020d8520
_ZN17Actor_Derived1_EC19func_ov024_020d6d80EP7VecFx32S1_ kind:function(arm,size=0x11c) addr:0x020d8724
_ZN19ActorProfileUnkOBPC10GetProfileEv kind:function(arm,size=0xc) addr:0x020d8840
_ZN19ActorProfileUnkOBPC6CreateEv kind:function(arm,size=0x24) addr:0x020d884c
_ZN19ActorProfileUnkOBPCC1Ev kind:function(arm,size=0x28) addr:0x020d8870
@@ -714,7 +714,7 @@ _ZN12ActorUnkOBPC8vfunc_18Ei kind:function(arm,size=0x4c) addr:0x020d88cc
_ZN12ActorUnkOBPC19func_ov024_020d6f74Ev kind:function(arm,size=0x20) addr:0x020d8918
_ZN12ActorUnkOBPC8vfunc_20Ev kind:function(arm,size=0xbc) addr:0x020d8938
_ZN12ActorUnkOBPC8vfunc_24Ev kind:function(arm,size=0x14) addr:0x020d89f4
_ZN12ActorUnkOBPC19func_ov024_020d7064Esi kind:function(arm,size=0xf0) addr:0x020d8a08
_ZN12ActorUnkOBPC8SetStateEsi kind:function(arm,size=0xf0) addr:0x020d8a08
_ZN12ActorUnkOBPC19func_ov024_020d7154Ev kind:function(arm,size=0x168) addr:0x020d8af8
_ZN12ActorUnkOBPCD1Ev kind:function(arm,size=0x20) addr:0x020d8c60
_ZN12ActorUnkOBPCD0Ev kind:function(arm,size=0x28) addr:0x020d8c80
@@ -5,6 +5,10 @@
.data start:0x02137600 end:0x0213b060 kind:data align:32
.bss start:0x0213b060 end:0x02143d60 kind:bss align:32
src/026_Train/code_02102924.cpp:
.text start:0x02104b74 end:0x02104b84
.data start:0x0213836c end:0x021384ec
src/026_Train/Actor/ActorUnkDKCL.cpp:
.text start:0x02107150 end:0x0210731c
.init start:0x021363b0 end:0x02136400
+3 -3
View File
@@ -1015,7 +1015,7 @@ func_ov026_02104ad4 kind:function(arm,size=0x50) addr:0x02104ad4
func_ov026_02104b24 kind:function(arm,size=0x18) addr:0x02104b24
_ZN19func_ov026_02104b3cD0Ev kind:function(arm,size=0x1c) addr:0x02104b3c
_ZN19func_ov026_02104b58D0Ev kind:function(arm,size=0x1c) addr:0x02104b58
func_ov026_02104b74 kind:function(arm,size=0x10) addr:0x02104b74
_Z19func_ov026_02102924i kind:function(arm,size=0x10) addr:0x02104b74
func_ov026_02104b84 kind:function(arm,size=0x14) addr:0x02104b84
func_ov026_02104b98 kind:function(arm,size=0x3c) addr:0x02104b98
_ZN19func_ov026_02104bd4D1Ev kind:function(arm,size=0x28) addr:0x02104bd4
@@ -1838,7 +1838,7 @@ _ZN19ActorProfileUnkRB1T6CreateEv kind:function(arm,size=0x24) addr:0x0212035c
_ZN19ActorProfileUnkRB1TC1Ev kind:function(arm,size=0x70) addr:0x02120380
_ZN12ActorUnkRB1TC1Ev kind:function(arm,size=0x234) addr:0x021203f0
_ZN12ActorUnkRB1T19func_ov026_0211e3ccEv kind:function(arm,size=0x14) addr:0x02120624
_ZN12ActorUnkRB1T19func_ov026_0211e3e0Ev kind:function(arm,size=0xe8) addr:0x02120638
_ZN12ActorUnkRB1T19func_ov026_0211e3e0Ei kind:function(arm,size=0xe8) addr:0x02120638
_ZN12ActorUnkRB1T19func_ov026_0211e4c8Ev kind:function(arm,size=0x8c) addr:0x02120720
_ZN12ActorUnkRB1T19func_ov026_0211e554Ev kind:function(arm,size=0x178) addr:0x021207ac
_ZN12ActorUnkRB1T19func_ov026_0211e6ccEv kind:function(arm,size=0x18) addr:0x02120924
@@ -2679,7 +2679,7 @@ data_ov026_021382a8 kind:data(any) addr:0x021382a8
data_ov026_021382bc kind:data(any) addr:0x021382bc
data_ov026_021382e0 kind:data(any) addr:0x021382e0
data_ov026_02138328 kind:data(any) addr:0x02138328
data_ov026_0213836c kind:data(any) addr:0x0213836c
data_ov026_02135fec kind:data(any) addr:0x0213836c
data_ov026_021384ec kind:data(any) addr:0x021384ec
data_ov026_02138794 kind:data(any) addr:0x02138794
data_ov026_021387d8 kind:data(any) addr:0x021387d8
+9 -9
View File
@@ -590,7 +590,7 @@ _ZN10ActorRupee19func_ov031_020e970cEv kind:function(arm,size=0x34) addr:0x020eb
_ZN10ActorRupee19func_ov031_020e9740Ev kind:function(arm,size=0xf8) addr:0x020eb12c
_ZN10ActorRupee19func_ov031_020e9838Ev kind:function(arm,size=0x8c) addr:0x020eb224
_ZN10ActorRupee19func_ov031_020e98c4Ev kind:function(arm,size=0x40) addr:0x020eb2b0
_ZN10ActorRupee19func_ov031_020e9904Ei kind:function(arm,size=0x54) addr:0x020eb2f0
_ZN10ActorRupee8SetStateEs kind:function(arm,size=0x54) addr:0x020eb2f0
_ZN10ActorRupee8vfunc_20Ev kind:function(arm,size=0x230) addr:0x020eb344
_ZN10ActorRupee19func_ov031_020e9b88Ev kind:function(arm,size=0x60) addr:0x020eb574
_ZN10ActorRupee19func_ov031_020e9be8Ev kind:function(arm,size=0x44) addr:0x020eb5d4
@@ -735,7 +735,7 @@ _ZN10ActorHeart19func_ov031_020eed64EP8ActorRefPK7VecFx32jS0_ kind:function(arm,
_ZN10ActorHeartC1Ev kind:function(arm,size=0xf8) addr:0x020f07cc
_ZN10ActorHeart8vfunc_18Ei kind:function(arm,size=0x10) addr:0x020f08c4
_ZN10ActorHeart8vfunc_20Ev kind:function(arm,size=0x2cc) addr:0x020f08d4
_ZN10ActorHeart19func_ov031_020ef1b4Es kind:function(arm,size=0x54) addr:0x020f0ba0
_ZN10ActorHeart8SetStateEs kind:function(arm,size=0x54) addr:0x020f0ba0
_ZN10ActorHeart19func_ov031_020ef208Ev kind:function(arm,size=0xe4) addr:0x020f0bf4
_ZN10ActorHeart19func_ov031_020ef2ecEv kind:function(arm,size=0xc) addr:0x020f0cd8
_ZN10ActorHeart19func_ov031_020ef2f8Ev kind:function(arm,size=0x28) addr:0x020f0ce4
@@ -1172,7 +1172,7 @@ _ZN13ActorItemDrop8vfunc_18Ei kind:function(arm,size=0x30) addr:0x020fbc50
_ZN13ActorItemDrop8vfunc_20Ev kind:function(arm,size=0xc) addr:0x020fbc80
_ZN13ActorItemDrop8vfunc_24Ev kind:function(arm,size=0x18) addr:0x020fbc8c
_ZN13ActorItemDrop19func_ov031_020fa260Ev kind:function(arm,size=0x1c4) addr:0x020fbca4
_ZN13ActorItemDrop19func_ov031_020fa424Es kind:function(arm,size=0x58) addr:0x020fbe68
_ZN13ActorItemDrop8SetStateEs kind:function(arm,size=0x58) addr:0x020fbe68
_ZN13ActorItemDrop19func_ov031_020fa468Ev kind:function(arm,size=0x4) addr:0x020fbec0
_ZN13ActorItemDrop19func_ov031_020fa46cEv kind:function(arm,size=0x28) addr:0x020fbec4
_ZN13ActorItemDrop19func_ov031_020fa494Ev kind:function(arm,size=0xc) addr:0x020fbeec
@@ -1189,11 +1189,11 @@ _ZN13ActorItemDrop19func_ov031_020fa6c8Ev kind:function(arm,size=0x64) addr:0x02
_ZN13ActorItemDrop19func_ov031_020fa72cEv kind:function(arm,size=0x110) addr:0x020fc184
_ZN13ActorItemDrop8vfunc_2cEi kind:function(arm,size=0xc4) addr:0x020fc294
_ZN13ActorItemDrop19func_ov031_020fa900Ev kind:function(arm,size=0xf8) addr:0x020fc358
_ZN19ActorDroppedItem_c4C1EP5Actor kind:function(arm,size=0x38) addr:0x020fc450
_ZN19ActorDroppedItem_c48vfunc_00E8ActorRefi kind:function(arm,size=0x44) addr:0x020fc488
_ZN19ActorDroppedItem_c48vfunc_04Ev kind:function(arm,size=0x20) addr:0x020fc4cc
_ZN19ActorDroppedItem_c48vfunc_0cEi kind:function(arm,size=0x28) addr:0x020fc4ec
_ZN19ActorDroppedItem_c48vfunc_08Ev kind:function(arm,size=0x20) addr:0x020fc514
_ZN16ActorItemDrop_c4C1EP5Actor kind:function(arm,size=0x38) addr:0x020fc450
_ZN16ActorItemDrop_c48vfunc_00E8ActorRefi kind:function(arm,size=0x44) addr:0x020fc488
_ZN16ActorItemDrop_c48vfunc_04Ev kind:function(arm,size=0x20) addr:0x020fc4cc
_ZN16ActorItemDrop_c48vfunc_0cEi kind:function(arm,size=0x28) addr:0x020fc4ec
_ZN16ActorItemDrop_c48vfunc_08Ev kind:function(arm,size=0x20) addr:0x020fc514
_ZN13ActorItemDropD1Ev kind:function(arm,size=0x14) addr:0x020fc534
_ZN13ActorItemDropD0Ev kind:function(arm,size=0x1c) addr:0x020fc548
_ZN21ActorProfileArrowDropD1Ev kind:function(arm,size=0x14) addr:0x020fc564
@@ -2389,7 +2389,7 @@ _ZTV19data_ov031_021168b8 kind:data(any) addr:0x021168b8
data_ov031_02114ba0 kind:data(any) addr:0x02116914 local
data_ov031_02114bb0 kind:data(any) addr:0x02116924 local
data_ov031_02114be8 kind:data(any) addr:0x0211695c local
_ZTV19ActorDroppedItem_c4 kind:data(any) addr:0x02116994
_ZTV16ActorItemDrop_c4 kind:data(any) addr:0x02116994
_ZTV21ActorProfileArrowDrop kind:data(any) addr:0x021169ac
_ZTV24ActorProfileTreasureDrop kind:data(any) addr:0x021169d0
_ZTV25ActorProfileRedPotionDrop kind:data(any) addr:0x021169f4
+1 -1
View File
@@ -29,7 +29,7 @@ _ZN12ActorUnkKEYTD0Ev kind:function(arm,size=0x38) addr:0x02125a80
_ZN12ActorUnkKEYT19func_ov041_02123cf8Ev kind:function(arm,size=0x48) addr:0x02125ab8
_ZN12ActorUnkKEYT19func_ov041_02123d40Ev kind:function(arm,size=0x48) addr:0x02125b00
_ZN12ActorUnkKEYT19func_ov041_02123d88Ev kind:function(arm,size=0x130) addr:0x02125b48
_ZN12ActorUnkKEYT19func_ov041_02123eb8Ev kind:function(arm,size=0x140) addr:0x02125c78
_ZN12ActorUnkKEYT4GrabE15ActorGrabParams kind:function(arm,size=0x140) addr:0x02125c78
_ZN12ActorUnkKEYT19func_ov041_02123ff8Ev kind:function(arm,size=0x9c) addr:0x02125db8
_ZN12ActorUnkKEYT19func_ov041_02124094Ev kind:function(arm,size=0x2c) addr:0x02125e54
_ZN12ActorUnkKEYT19func_ov041_021240c0Ev kind:function(arm,size=0xa4) addr:0x02125e80
+1 -1
View File
@@ -1012,7 +1012,7 @@ func_0201a814 kind:function(arm,size=0xf8) addr:0x0201a814
func_0201a90c kind:function(arm,size=0xd0) addr:0x0201a90c
_ZN18UnkStruct_0204af1c13func_0201aa44EP34UnkStruct_ov019_020d24c8_28_258_00PviS2_ kind:function(arm,size=0x48) addr:0x0201a9dc
_ZN18UnkStruct_0204af1c13func_0201aa8cEP34UnkStruct_ov019_020d24c8_28_258_00iiii kind:function(arm,size=0x44) addr:0x0201aa24
_ZN18UnkStruct_0204af1c13func_0201aad0EP14UnkSubStruct19PviS2_ kind:function(arm,size=0x1a0) addr:0x0201aa68
_ZN18UnkStruct_0204af1c13func_0201aad0EP14CellAnimObjectPviS2_ kind:function(arm,size=0x1a0) addr:0x0201aa68
func_0201ac08 kind:function(arm,size=0x13c) addr:0x0201ac08
func_0201ad44 kind:function(arm,size=0x50) addr:0x0201ad44
func_0201ad94 kind:function(arm,size=0xb0) addr:0x0201ad94
+32 -10
View File
@@ -101,6 +101,12 @@ enum ActorFlag_ {
class Actor_c4;
struct ActorGrabParams {
/* 00 */ u16 unk_00;
/* 02 */ u16 unk_02;
/* 04 */
};
class Actor_9c {
public:
/* 00 (vtable) */
@@ -115,6 +121,7 @@ public:
};
typedef s16 ActorState;
#define ActorState_None -1
class Actor : public SysObject {
public:
@@ -122,7 +129,7 @@ public:
/* 04 */ VecFx32 mPos;
/* 10 */ VecFx32 mPrevPos;
/* 1C */ VecFx32 mVel;
/* 28 */ s16 mAngle;
/* 28 */ fx16 mAngle;
/* 2A */ unk16 mUnk_2A;
/* 2C */ unk32 mUnk_2C; // gravity?
/* 30 */ Cylinder *mUnk_30;
@@ -133,12 +140,11 @@ public:
/* 44 */ u16 mUnk_44;
/* 46 */ unk16 mUnk_46;
/* 48 */ unk16 mUnk_48;
/* 4A */ unk8 mUnk_4A;
/* 4A */ unk8 mUnk_4B;
/* 4C */ ActorState mUnk_4C;
/* 4E */ s16 mUnk_4E;
/* 50 */ volatile u16 mUnk_50;
/* 52 */ u16 mUnk_52;
/* 4A */ u8 mUnk_4A[2];
/* 4C */ ActorState mState;
/* 4E */ fx16 mYOffset;
/* 50 */ volatile u16 mUnk_50; // timer some actors are using
/* 52 */ u16 mUnk_52; // maximum value for above timer
/* 54 */ unk32 mUnk_54;
/* 58 */ ActorFlags mFlags[1];
/* 5C */ ActorParams mUnk_5C;
@@ -146,7 +152,7 @@ public:
/* 90 */ ActorProfile *mpProfile;
/* 94 */
/* 00 */ virtual void vfunc_00(VecFx32 *param1);
/* 00 */ virtual void GetOffsetPos(VecFx32 *pPos) const;
/* 04 */ virtual bool vfunc_04();
/* 08 */ virtual unk16 vfunc_08();
/* 0C */ virtual unk8 vfunc_0c();
@@ -160,8 +166,8 @@ public:
/* 2C */ virtual void vfunc_2c(unk32 param1);
/* 30 */ virtual void vfunc_30();
/* 34 */ virtual unk32 vfunc_34();
/* 38 */ virtual unk32 vfunc_38(unk32 param1);
/* 3C */ virtual bool vfunc_3c(unk32 param2, VecFx32 *param3);
/* 38 */ virtual bool Grab(ActorGrabParams grabParams);
/* 3C */ virtual bool Drop(ActorGrabParams grabParams, const VecFx32 *pVel);
/* 40 */ virtual void vfunc_40();
/* 44 */ virtual void vfunc_44();
/* 48 */ virtual void vfunc_48();
@@ -178,6 +184,10 @@ public:
UNSET_FLAG(this->mFlags, ActorFlag_Alive);
}
bool IsAlive() {
return GET_FLAG(this->mFlags, ActorFlag_Alive);
}
Actor();
ActorId GetActorId();
@@ -252,6 +262,10 @@ public:
/* 0C */ virtual void vfunc_0c(unk32 param1);
/* 10 */
template <typename T> T *GetActorPtr() {
return (T *) this->mUnk_20;
}
Actor_c4(Actor *param1) :
Actor_c4_Base(&param1->mRef, 0) {}
};
@@ -275,3 +289,11 @@ public:
};
extern UnkStruct_ov000_020b539c data_ov000_020b539c_eur;
struct UnkActorDataStruct1 {
/* 00 */ unk32 unk_00[4];
/* 10 */ unk32 unk_10;
/* 14 */ unk32 unk_14;
/* 18 */
};
extern "C" void func_ov000_02099ddc(void *thisx, UnkActorDataStruct1 param1, unk32 param2, unk32 param3);
+1 -1
View File
@@ -9,7 +9,7 @@
class ActorEventIcon : public Actor {
public:
/* 000 (base) */
/* 094 */ UnkSubStruct19 mUnk_094; // event icon
/* 094 */ CellAnimObject mUnk_094; // event icon
/* 10C */ unk16 mUnk_10C;
/* 110 */ unk16 mUnk_10E; // pad?
+13 -2
View File
@@ -5,6 +5,16 @@
#include "ActorRupee.hpp"
#include "types.h"
enum ActorHeartState_ {
ActorHeartState_0 = 0,
ActorHeartState_1 = 1,
ActorHeartState_2 = 2,
ActorHeartState_3 = 3,
ActorHeartState_4 = 4,
ActorHeartState_5 = 5,
ActorHeartState_Max,
};
class ActorHeart_c4 : public Actor_c4 {
public:
ActorHeart_c4(Actor *param1);
@@ -45,14 +55,15 @@ public:
/* 4C */ virtual ~ActorHeart() override {};
void func_ov031_020f0750();
static void func_ov031_020eed64(ActorRef *pOutRef, const VecFx32 *pPos, u32 params, ActorRef ref);
void func_ov031_020ef1b4(unk16 param_2);
void SetState(ActorState state);
void func_ov031_020ef208();
void func_ov031_020ef4a8();
void func_ov031_020ef528();
void func_ov031_020ef570();
void func_ov031_020ef698();
static void func_ov031_020eed64(ActorRef *pOutRef, const VecFx32 *pPos, u32 params, ActorRef ref);
// data_ov031_02113d74
void func_ov031_020ef2f8();
void func_ov031_020ef334();
+31 -27
View File
@@ -20,21 +20,21 @@ enum ItemDropType_ {
ItemDropType_Max = 10,
};
enum ActorDroppedItemState_ {
ActorDroppedItemState_0 = 0,
ActorDroppedItemState_1 = 1,
ActorDroppedItemState_2 = 2,
ActorDroppedItemState_3 = 3,
ActorDroppedItemState_4 = 4,
ActorDroppedItemState_5 = 5,
ActorDroppedItemState_6 = 6,
ActorDroppedItemState_Max,
enum ActorItemDropState_ {
ActorItemDropState_0 = 0,
ActorItemDropState_1 = 1,
ActorItemDropState_2 = 2,
ActorItemDropState_3 = 3,
ActorItemDropState_4 = 4,
ActorItemDropState_5 = 5,
ActorItemDropState_6 = 6,
ActorItemDropState_Max,
};
class ActorDroppedItem_c4 : public Actor_c4 {
class ActorItemDrop_c4 : public Actor_c4 {
public:
// func_ov031_020fa9f8
ActorDroppedItem_c4(Actor *param1);
ActorItemDrop_c4(Actor *param1);
virtual bool vfunc_00(ActorRef ref, unk32 param2) override;
virtual void vfunc_04() override;
@@ -58,7 +58,7 @@ public:
/* 0D8 */ fx32 mUnk_D8;
/* 0DC */ ActorRef mUnk_DC;
/* 0E0 */ ActorRef mUnk_E0;
/* 0E4 */ ActorDroppedItem_c4 mUnk_E4;
/* 0E4 */ ActorItemDrop_c4 mUnk_E4;
/* 108 */ unk16 mUnk_108;
/* 10A */ STRUCT_PAD(0x10A, 0x10C);
/* 10C */ VecFx32 mUnk_10C;
@@ -83,24 +83,28 @@ public:
/* 4C */ virtual ~ActorItemDrop() override;
void func_ov031_020fa260();
void func_ov031_020fa424(ActorState state);
void func_ov031_020fa468();
void func_ov031_020fa46c();
void func_ov031_020fa494();
void func_ov031_020fa4a0();
void func_ov031_020fa524();
void func_ov031_020fa568();
void func_ov031_020fa5d8();
void func_ov031_020fa5f0();
void func_ov031_020fa650();
void func_ov031_020fa664();
void func_ov031_020fa668();
void func_ov031_020fa678();
void func_ov031_020fa6c8();
void func_ov031_020fa72c();
void SetState(ActorState state);
void func_ov031_020fa900();
static void func_ov031_020f9f8c(ActorRef *pOutRef, const VecFx32 *pPos, u32 params, ActorRef ref);
// data_ov031_02114bb0
void func_ov031_020fa46c();
void func_ov031_020fa4a0();
void func_ov031_020fa568();
void func_ov031_020fa5f0();
void func_ov031_020fa664();
void func_ov031_020fa678();
void func_ov031_020fa72c();
// data_ov031_02114be8
void func_ov031_020fa468();
void func_ov031_020fa494();
void func_ov031_020fa524();
void func_ov031_020fa5d8();
void func_ov031_020fa650();
void func_ov031_020fa668();
void func_ov031_020fa6c8();
};
class ActorProfileArrowDrop : public ActorProfile {
+3 -2
View File
@@ -1,6 +1,7 @@
#pragma once
#include "Actor/ActorUnk_ov000_020a8bb0.hpp"
#include "Actor/ActorRef.hpp"
#include "Actor/Actor_Derived1.hpp"
#include "System/SysNew.hpp"
#include "Unknown/Common.hpp"
#include "files.h"
@@ -43,8 +44,8 @@ public:
ActorManager();
~ActorManager();
Actor *func_01fff3b4(ActorRef ref);
Actor **func_01fff350(void *param1, Actor **ppActorTable);
Actor *func_01fff3b4(ActorRef ref);
void func_ov000_02096e44(int index);
unk32 func_ov000_0209704c();
+19 -2
View File
@@ -3,7 +3,7 @@
#include "Actor/Actor.hpp"
#include "Actor/ActorManager.hpp"
#include "Actor/ActorProfile.hpp"
#include "Actor/ActorUnk_ov000_020a8bb0.hpp"
#include "Actor/Actor_Derived1.hpp"
#include "Player/PlayerGet.hpp"
#include "types.h"
@@ -19,6 +19,23 @@ enum RupeeId_ {
/* 7 */ RupeeId_7,
};
enum ActorRupeeState_ {
ActorRupeeState_0 = 0,
ActorRupeeState_1 = 1,
ActorRupeeState_2 = 2,
ActorRupeeState_3 = 3,
ActorRupeeState_4 = 4,
ActorRupeeState_5 = 5,
ActorRupeeState_6 = 6,
ActorRupeeState_7 = 7,
ActorRupeeState_8 = 8,
ActorRupeeState_9 = 9,
ActorRupeeState_10 = 10,
ActorRupeeState_11 = 11,
ActorRupeeState_12 = 12,
ActorRupeeState_Max,
};
class ActorRupee_c4 : public Actor_c4 {
public:
ActorRupee_c4(Actor *param1);
@@ -91,7 +108,7 @@ public:
void func_ov031_020e9740();
void func_ov031_020e9838();
void func_ov031_020e98c4();
void func_ov031_020e9904(unk32 param1);
void SetState(ActorState state);
void func_ov031_020e9b88();
void func_ov031_020e9be8();
bool func_ov031_020e9d54();
+1 -1
View File
@@ -24,13 +24,13 @@ public:
ActorUnkKEYT();
/* 38 */ virtual bool Grab(ActorGrabParams grabParams) override;
/* 4C */ virtual ~ActorUnkKEYT() override;
void func_ov041_02123c7c(void);
void func_ov041_02123cf8(void);
void func_ov041_02123d40(void);
void func_ov041_02123d88(void);
void func_ov041_02123eb8(void);
void func_ov041_02123ff8(void);
void func_ov041_02124094(void);
void func_ov041_021240c0(void);
+7 -3
View File
@@ -6,6 +6,12 @@
#include "global.h"
#include "types.h"
enum ActorUnkOBPCState_ {
ActorUnkOBPCState_0 = 0,
ActorUnkOBPCState_1 = 1,
ActorUnkOBPCState_Max,
};
class ActorUnkOBPC : public Actor {
public:
/* 00 (base) */
@@ -19,10 +25,9 @@ public:
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
/* 20 */ virtual void vfunc_20() override;
/* 24 */ virtual void vfunc_24() override;
/* 4C */ virtual ~ActorUnkOBPC() override;
bool func_ov024_020d6f74(void);
void func_ov024_020d7064(s16 param1, unk32 param2);
void SetState(ActorState state, int param2);
bool func_ov024_020d7154(void);
};
@@ -31,7 +36,6 @@ public:
/* 00 (base) */
ActorProfileUnkOBPC();
~ActorProfileUnkOBPC();
/* 0C */ virtual Actor *Create();
+27 -6
View File
@@ -4,6 +4,7 @@
#include "Actor/Actor.hpp"
#include "Actor/ActorProfile.hpp"
#include "Actor/Actor_Derived1.hpp"
#include "global.h"
#include "types.h"
@@ -17,20 +18,40 @@ public:
/* 0C */ virtual void vfunc_0c(unk32 param1) override;
};
class ActorUnkRB1T : public Actor {
class ActorUnkRB1T : public Actor_Derived1 {
public:
/* 00 (base) */
/* 94 */
/* 000 (base) */
/* 120 */ unk32 mUnk_120;
/* 124 */ STRUCT_PAD(0x124, 0x20C);
/* 20C */ ModelRender mUnk_20C; // actually a derived class of a derived class
/* 26C */ STRUCT_PAD(0x26C, 0x280);
/* 280 */ unk32 mUnk_280;
/* 284 */ STRUCT_PAD(0x284, 0x300);
/* 300 */ unk32 mUnk_300;
/* 304 */ STRUCT_PAD(0x304, 0x36C);
/* 36C */ unk8 mUnk_36C;
/* 36D */ unk8 mUnk_36D;
/* 36E */ unk8 mUnk_36E;
/* 36F */ unk8 mUnk_36F;
/* 370 */ unk8 mUnk_370;
/* 371 */ unk8 mUnk_371;
/* 372 */ unk8 mUnk_372;
/* 373 */ unk8 mUnk_373;
/* 374 */ unk8 mUnk_374;
/* 375 */ unk8 mUnk_375;
/* 376 */ unk8 mUnk_376;
/* 377 */ unk8 mUnk_377;
ActorUnkRB1T();
/* 4C */ virtual ~ActorUnkRB1T() override;
/* 58 */ virtual void vfunc_58(unk32 param1);
void func_ov026_0211e3cc(void);
void func_ov026_0211e3e0(void);
bool func_ov026_0211e3e0(unk32 param1);
void func_ov026_0211e4c8(void);
void func_ov026_0211e554(void);
void func_ov026_0211e6cc(void);
unk32 func_ov026_0211e6cc(void);
void func_ov026_0211e6e4(void);
void func_ov026_0211e6f0(void);
void func_ov026_0211e748(void);
@@ -77,7 +98,7 @@ public:
void func_ov026_02120744(void);
void func_ov026_021207e0(void);
void func_ov026_02120874(void);
void func_ov026_021208a0(void);
static void func_ov026_021208a0(void); //! TODO is this really static? can't make it work as a ptmf
void func_ov026_02120954(void);
void func_ov026_02120974(void);
void func_ov026_021209d8(void);
+9 -3
View File
@@ -2,9 +2,17 @@
#include "Actor/Actor.hpp"
#include "Actor/ActorProfile.hpp"
#include "Actor/ActorRef.hpp"
#include "global.h"
#include "types.h"
enum ActorUnkSWOBState_ {
ActorUnkSWOBState_0 = 0,
ActorUnkSWOBState_1 = 1,
ActorUnkSWOBState_2 = 2,
ActorUnkSWOBState_Max,
};
class ActorUnkSWOB : public Actor {
public:
/* 00 (base) */
@@ -21,10 +29,9 @@ public:
/* 18 */ virtual bool vfunc_18(unk32 param1) override;
/* 20 */ virtual void vfunc_20() override;
/* 4C */ virtual ~ActorUnkSWOB() override;
bool func_ov000_0209a948(void);
void func_ov000_0209a9b4(unk32 param1);
void SetState(ActorState state);
void func_ov000_0209aa30(void);
};
@@ -33,7 +40,6 @@ public:
/* 00 (base) */
ActorProfileUnkSWOB();
~ActorProfileUnkSWOB();
/* 0C */ virtual Actor *Create();
+9 -2
View File
@@ -5,6 +5,14 @@
#include "global.h"
#include "types.h"
enum ActorUnkSWTMState_ {
ActorUnkSWTMState_0 = 0,
ActorUnkSWTMState_1 = 1,
ActorUnkSWTMState_2 = 2,
ActorUnkSWTMState_3 = 3,
ActorUnkSWTMState_Max,
};
class ActorUnkSWTM_B0 {
public:
/* 00 */ unk32 mUnk_00;
@@ -39,7 +47,7 @@ public:
/* 24 */ virtual void vfunc_24() override;
/* 4C */ virtual ~ActorUnkSWTM() override;
void func_ov000_0209af54(unk32 param1);
void SetState(ActorState state);
bool func_ov000_0209afe4(void);
unk32 func_ov000_0209b038(void);
void func_ov000_0209b160(void);
@@ -52,7 +60,6 @@ public:
/* 00 (base) */
ActorProfileUnkSWTM();
~ActorProfileUnkSWTM();
/* 0C */ virtual Actor *Create();
@@ -33,7 +33,7 @@ public:
ActorUnk_vfunc_b0();
};
class ActorUnk_ov000_020a8bb0_94 {
class Actor_Derived1_94 {
public:
/* 00 */ unk32 mUnk_00;
/* 04 */ unk32 mUnk_04;
@@ -41,20 +41,20 @@ public:
/* 0A */ unk16 mUnk_0A;
/* 0C */ unk32 mUnk_0C;
ActorUnk_ov000_020a8bb0_94();
~ActorUnk_ov000_020a8bb0_94();
Actor_Derived1_94();
~Actor_Derived1_94();
};
class ActorUnk_ov000_020a8bb0_94_Derived1 : public ActorUnk_ov000_020a8bb0_94 {
class Actor_Derived1_94_Derived1 : public Actor_Derived1_94 {
public:
/* 00 (base) */
ActorUnk_ov000_020a8bb0_94_Derived1(unk32 param1) {
Actor_Derived1_94_Derived1(unk32 param1) {
this->mUnk_0C = param1;
}
};
class ActorUnk_ov000_020a8bb0_a4 {
class Actor_Derived1_a4 {
public:
/* 00 */ ModelRender *mpModelRender;
/* 08 */ unk16 mUnk_04;
@@ -64,16 +64,16 @@ public:
void func_01ffc6d4(u16 param1, VecFx32 *pos);
ActorUnk_ov000_020a8bb0_a4(ModelRender *pModelRender) {
Actor_Derived1_a4(ModelRender *pModelRender) {
this->mpModelRender = pModelRender;
this->mUnk_04 = 0;
this->mUnk_08 = 0;
}
~ActorUnk_ov000_020a8bb0_a4() {}
~Actor_Derived1_a4() {}
};
class ActorUnk_ov000_020a8bb0_EC {
class Actor_Derived1_EC {
public:
/* 00 */ UnkStruct_027e0960_TableEntry *mUnk_00;
/* 04 */ u8 mUnk_04;
@@ -84,8 +84,8 @@ public:
/* 0C */ VecFx32 mUnk_0C;
/* 18 */
ActorUnk_ov000_020a8bb0_EC();
~ActorUnk_ov000_020a8bb0_EC() {}
Actor_Derived1_EC();
~Actor_Derived1_EC() {}
void func_ov024_020d6680(const VecFx32 *param1, u8 *param2);
void func_ov024_020d66c0(const VecFx32 *param1, unk32 param2);
@@ -96,11 +96,11 @@ public:
u16 *func_ov024_020d6d80(VecFx32 *pPos, VecFx32 *pVel);
};
class ActorUnk_ov000_020a8bb0 : public Actor {
class Actor_Derived1 : public Actor {
public:
/* 000 (base) */
/* 094 */ ActorUnk_ov000_020a8bb0_94_Derived1 mUnk_094;
/* 0A4 */ ActorUnk_ov000_020a8bb0_a4 mUnk_0A4;
/* 094 */ Actor_Derived1_94_Derived1 mUnk_094;
/* 0A4 */ Actor_Derived1_a4 mUnk_0A4;
/* 0B0 */ u16 mUnk_0B0;
/* 0B4 */ unk32 mUnk_0B4;
/* 0B8 */ unk32 mUnk_0B8;
@@ -116,10 +116,10 @@ public:
/* 0DC */ unk16 mUnk_0DE;
/* 0E0 */ unk16 mUnk_0E0;
/* 0E0 */ unk16 mUnk_0E2;
/* 0E4 */ unk32 mUnk_0E4;
/* 0E4 */ void *mUnk_0E4; // callback
/* 0E8 */ unk16 mUnk_0E8;
/* 0E8 */ unk16 mUnk_0EA;
/* 0EC */ ActorUnk_ov000_020a8bb0_EC mUnk_0EC;
/* 0EC */ Actor_Derived1_EC mUnk_0EC;
/* 104 */ Cylinder mUnk_104;
/* 114 */ unk32 mUnk_114;
/* 118 */ unk32 mUnk_118;
@@ -131,9 +131,9 @@ public:
/* 20 */ virtual void vfunc_20() override;
/* 24 */ virtual void vfunc_24() override;
/* 2C */ virtual void vfunc_2c(unk32 param1) override;
/* 4C */ virtual ~ActorUnk_ov000_020a8bb0();
/* 4C */ virtual ~Actor_Derived1();
/* 54 */ virtual void vfunc_54(unk32 param1);
/* 54 */ virtual void vfunc_58(unk32 param1) = 0;
/* 58 */ virtual void vfunc_58(unk32 param1) = 0;
/* 5C */ virtual void vfunc_5c();
/* 60 */ virtual void vfunc_60();
/* 64 */ virtual bool vfunc_64();
@@ -149,7 +149,7 @@ public:
/* 8C */ virtual unk32 vfunc_8c();
/* 90 */ virtual unk32 vfunc_90();
/* 94 */ virtual void vfunc_94();
/* 98 */ virtual void vfunc_98();
/* 98 */ virtual void vfunc_98(unk32 param1);
/* 9C */ virtual void vfunc_9c();
/* A0 */ virtual unk32 vfunc_a0();
/* A4 */ virtual void vfunc_a4();
@@ -160,8 +160,10 @@ public:
/* B8 */ virtual void vfunc_b8();
/* BC */
Actor_Derived1(ModelRender *param1, unk32 param2);
// overlay 0
void func_ov000_020a8ae0(fx32 param1);
ActorUnk_ov000_020a8bb0(ModelRender *param1, unk32 param2);
bool func_ov000_020a8db0();
bool func_ov000_020a8dd0();
void func_ov000_020a8df0(ActorRef param1, unk32 param2);
@@ -172,7 +174,6 @@ public:
void func_ov000_020a9248();
void func_ov000_020a94b0();
void func_ov000_020a95d8();
static void func_ov000_020a9804();
void func_ov000_020a9a20();
void func_ov000_020a9a34();
void func_ov000_020a9a50();
@@ -181,5 +182,8 @@ public:
void func_ov000_020a9ae0();
void func_ov000_020a9afc();
static void func_ov000_020a9804();
// overlay 31
void func_ov031_020e3ca4();
};
+47
View File
@@ -0,0 +1,47 @@
#pragma once
#include <math.hpp>
#include <nns/anim.h>
// assumed to be the only original name, from an assert inside `func_ov000_020609c4`
class CellAnimObject {
public:
/* 00 */ CellAnim mCellAnim;
/* 50 */ unk32 mUnk_50;
/* 54 */ unk32 mUnk_54;
/* 58 */ unk32 mUnk_58; // another timer?
/* 5C */ Vec2s mUnk_5C; // position of the animated texture
/* 60 */ unk32 mUnk_60;
/* 64 */ unk32 mUnk_64;
/* 68 */ unk32 mUnk_68;
/* 6C */ unk16 mUnk_6C;
/* 6E */ bool mUnk_6E;
/* 6F */ unk8 mUnk_6F;
/* 70 */ unk32 mUnk_70;
/* 74 */ unk16 mUnk_74;
/* 76 */ unk16 mUnk_76;
/* 78 */
CellAnimObject();
CellAnimObject(unk32 param1, unk32 param2) {
this->mUnk_6E = true;
this->mUnk_70 = 0;
this->mUnk_5C.x = 0;
this->mUnk_5C.y = 0;
this->mUnk_74 = 0;
this->func_ov000_0206082c(param1, param2);
}
void func_ov000_0206082c(s16 param1, unk32 param2);
void func_ov000_02060950();
void func_ov000_020609b0();
void func_ov000_020609c4(void);
bool func_ov000_02060a98(unk32 param1);
void func_ov000_02060ad0();
bool func_ov000_02060af8(void);
void func_ov000_02060b50();
void func_ov000_02060b64(void);
void func_ov000_02060bac();
unk32 func_ov000_02060c28(void);
void func_ov000_02060bd8(unk32 param1);
};
+1 -1
View File
@@ -16,7 +16,7 @@ extern "C" void func_ov001_020bd6a8();
class FileSelect_UnkClass7_04 {
public:
/* 000 */ UnkSubStruct19 mUnk_000[30];
/* 000 */ CellAnimObject mUnk_000[30];
/* E10 */ Vec2us mUnk_E10[30];
/* E88 */
};
+2 -2
View File
@@ -124,7 +124,7 @@ public:
// adventure mode animated sword icon
/* 10BC */ UnkSystem2_UnkSubSystem9 mUnk_10BC;
/* 1100 */ UnkSystem2_UnkSubSystem9 mUnk_1100;
/* 1144 */ UnkSubStruct19 mUnk_1144;
/* 1144 */ CellAnimObject mUnk_1144;
// "battle" button
/* 11BC */ UnkSystem2_UnkSubSystem1_Derived2 mUnk_11BC;
@@ -135,7 +135,7 @@ public:
// battle mode animated sword icon
/* 14D4 */ UnkSystem2_UnkSubSystem9 mUnk_14D4;
/* 1518 */ UnkSystem2_UnkSubSystem9 mUnk_1518;
/* 155C */ UnkSubStruct19 mUnk_155C;
/* 155C */ CellAnimObject mUnk_155C;
// "contact mode" button
/* 15D4 */ UnkSystem2_UnkSubSystem1_Derived2 mUnk_15D4;
+10 -10
View File
@@ -18,16 +18,16 @@ public:
/* 064 */ UnkSystem2_UnkSubSystem5 mUnk_064;
/* 29C */ UnkStruct_ov019_020d24c8_28_258 mUnk_29C; // top-left 1 and 2 icons
/* 2B4 */ UnkStruct_ov019_020d24c8_28_258 mUnk_2B4; // static hearts (hearts before beating heart)
/* 2CC */ UnkSubStruct19 mUnk_2CC;
/* 344 */ UnkSubStruct19 mUnk_344;
/* 3BC */ UnkSubStruct19 mUnk_3BC;
/* 434 */ UnkSubStruct19 mUnk_434;
/* 4AC */ UnkSubStruct19 mUnk_4AC;
/* 524 */ UnkSubStruct19 mUnk_524; // forest dungeon icon
/* 59C */ UnkSubStruct19 mUnk_59C; // snow dungeon icon
/* 614 */ UnkSubStruct19 mUnk_614; // ocean dungeon icon
/* 68C */ UnkSubStruct19 mUnk_68C; // fire dungeon icon
/* 704 */ UnkSubStruct19 mUnk_704; // desert dungeon icon
/* 2CC */ CellAnimObject mUnk_2CC;
/* 344 */ CellAnimObject mUnk_344;
/* 3BC */ CellAnimObject mUnk_3BC;
/* 434 */ CellAnimObject mUnk_434;
/* 4AC */ CellAnimObject mUnk_4AC;
/* 524 */ CellAnimObject mUnk_524; // forest dungeon icon
/* 59C */ CellAnimObject mUnk_59C; // snow dungeon icon
/* 614 */ CellAnimObject mUnk_614; // ocean dungeon icon
/* 68C */ CellAnimObject mUnk_68C; // fire dungeon icon
/* 704 */ CellAnimObject mUnk_704; // desert dungeon icon
/* 77C */ Vec2us mUnk_77C;
/* 780 */
+1 -1
View File
@@ -33,7 +33,7 @@ public:
/* 04 */ GameModeCreateCallback createCallback;
/* 08 */ GameUnkCallback1 mUnk_08; // seems related to entering and leaving houses/grottos??
/* 0C */ unk32 mFrameCounter;
/* 10 */ SaveFile *mpSaveFile;
/* 10 */ SaveSlot *mpSaveSlot;
/* 14 */ GameUnkCallback2 mUnk_14; // only set for wireless stuff?
/* 18 */ GameUnkCallback3 mUnk_18; // same as above
/* 1C */ UnkStruct_02049a2c_1C mUnk_1C;
+2 -1
View File
@@ -186,5 +186,6 @@ public:
static void func_ov000_0209d0bc(Vec2b *param1, MapObject *thisx);
static void func_ov000_0209d22c(unk16 *param1, MapObject *thisx, unk32 param2);
static void func_ov000_0209d54c(void *param1, MapObject *thisx, unk32 param2, VecFx32 *param3, unk32 param4, unk32 param5);
static void func_ov000_0209d54c(ActorRef *param1, MapObject *thisx, u16 param2, const VecFx32 *pPos, s16 param3,
u16 param4);
};
+1 -1
View File
@@ -40,7 +40,7 @@ public:
/* 050 */ MapObject_10 mUnk_050;
/* 074 */ MapObjectTreasureSpawned_74 mUnk_074;
/* 0D8 */ ItemId mItemId;
/* 0DC */ UnkSubStruct19 mUnk_0DC;
/* 0DC */ CellAnimObject mUnk_0DC;
/* 154 */
MapObjectChestBase(unk32 param1); // func_ov031_0210307c
+1 -1
View File
@@ -143,7 +143,7 @@ struct FLW1Instr {
InstrBranch branch;
InstrEvent event;
};
/* 09 */
/* 08 */
};
struct SectionFLW1 {
+8 -5
View File
@@ -1,11 +1,14 @@
#pragma once
#include "Actor/Actor.hpp"
#include "LinkList.hpp"
#include "Unknown/Common.hpp"
#include "Unknown/UnkStruct_ov000_0208f820.hpp"
#include "math.hpp"
#include "types.h"
class UnkStruct_027e0ce0_40;
class PlayerActorBase_5C {
public:
/* 00 */ unk32 mUnk_00;
@@ -41,14 +44,14 @@ public:
/* 30 */ u16 mAngle;
/* 32 */ u8 mInvincibilityTimer;
/* 33 */ u8 mInvincibilityIconTimer; // the blinking icon on top-screen
/* 34 */ unk32 mUnk_34;
/* 34 */ ActorRef mGrabActor;
/* 38 */ UnkStruct_PlayerGet_64 mUnk_38;
/* 44 */ unk32 mUnk_44;
/* 48 */ unk32 mUnk_48;
/* 4C */ unk32 mUnk_4C;
/* 50 */ unk32 mUnk_50;
/* 50 */ ActorGrabParams mUnk_50;
/* 54 */ unk32 mUnk_54;
/* 58 */ unk32 mUnk_58;
/* 58 */ UnkStruct_027e0ce0_40 *mUnk_58;
/* 5C */ PlayerActorBase_5C mUnk_5C;
/* 70 */ PlayerActorBase_70 *mUnk_70;
/* 74 */ PlayerActorBase_74 *mUnk_74;
@@ -194,9 +197,9 @@ public:
/* 0B9 */ unk8 mUnk_B9;
/* 0BA */ unk8 mUnk_BA;
/* 0BB */ unk8 mUnk_BB;
/* 0BC */ UnkSubStruct19 mUnk_BC;
/* 0BC */ CellAnimObject mUnk_BC;
/* 134 */ PlayerActor_134 *mUnk_134;
/* 138 */ UnkSubStruct19 mUnk_138; // sanctuary link icon animation
/* 138 */ CellAnimObject mUnk_138; // sanctuary link icon animation
/* 1B0 */ PlayerActor_1B0 mUnk_1B0[3];
/* 1D4 */
+124 -43
View File
@@ -3,6 +3,7 @@
#include "Item/ItemManager.hpp"
#include "MainGame/MiscAdvManager.hpp"
#include "MainGame/PassengerManager.hpp"
#include "flags.h"
#include "math.hpp"
#include "types.h"
@@ -37,10 +38,12 @@ struct SaveFile_00000_0000_Data_D8 {
SaveFile_00000_0000_Data_D8();
};
// related to scene flags?
struct SaveFile_00000_0000_Data_184 {
/* 00 */ unk32 unk_00;
/* 04 */ unk16 unk_04;
/* 06 */ unk16 unk_06;
/* 06 */ u8 keyAmount;
/* 07 */ unk8 unk_07;
/* 08 */
SaveFile_00000_0000_Data_184() :
@@ -126,24 +129,122 @@ struct SaveFile_00000_0000_Data_C84 {
}
};
struct SaveFile_00000_0000_Data_D4C {
/* D24 */ unk32 unk_D4C;
/* D24 */ unk32 unk_D50;
/* D24 */ unk32 unk_D54;
/* D24 */ unk32 unk_D58;
/* D24 */ unk32 unk_D5C;
/* D24 */ unk32 unk_D60;
/* D24 */ unk32 unk_D64;
/* D24 */ unk32 unk_D68;
/* D6C */ unk8 unk_D6C[0x08];
/* D74 */ unk16 unk_D74;
struct SaveFile_00000_0000_Data_D24 {
/* 00 */ unk32 unk_00;
/* 04 */ unk32 unk_04;
/* 08 */ unk32 unk_08;
/* 0C */ unk32 unk_0C;
/* 10 */ unk32 unk_10;
/* 14 */ unk32 unk_14;
/* 18 */ unk32 unk_18;
/* 1C */ unk32 unk_1C;
/* 20 */ unk32 unk_20;
/* 24 */ unk32 unk_24;
/* 28 */
};
SaveFile_00000_0000_Data_D4C() {
MI_CpuFill32(0, this->unk_D6C, sizeof(this->unk_D6C));
this->unk_D74 = 0;
typedef u32 RabbitFlag;
enum RabbitFlag_ {
RabbitFlag_None = -1,
RabbitFlag_Grass_01 = FLAG(0, 0),
RabbitFlag_Grass_02 = FLAG(0, 1),
RabbitFlag_Grass_03 = FLAG(0, 2),
RabbitFlag_Grass_04 = FLAG(0, 3),
RabbitFlag_Grass_05 = FLAG(0, 4),
RabbitFlag_Grass_06 = FLAG(0, 5),
RabbitFlag_Grass_07 = FLAG(0, 6),
RabbitFlag_Grass_08 = FLAG(0, 7),
RabbitFlag_Grass_09 = FLAG(0, 8),
RabbitFlag_Grass_10 = FLAG(0, 9),
RabbitFlag_Snow_01 = FLAG(0, 10),
RabbitFlag_Snow_02 = FLAG(0, 11),
RabbitFlag_Snow_03 = FLAG(0, 12),
RabbitFlag_Snow_04 = FLAG(0, 13),
RabbitFlag_Snow_05 = FLAG(0, 14),
RabbitFlag_Snow_06 = FLAG(0, 15),
RabbitFlag_Snow_07 = FLAG(0, 16),
RabbitFlag_Snow_08 = FLAG(0, 17),
RabbitFlag_Snow_09 = FLAG(0, 18),
RabbitFlag_Snow_10 = FLAG(0, 19),
RabbitFlag_Water_01 = FLAG(0, 20),
RabbitFlag_Water_02 = FLAG(0, 21),
RabbitFlag_Water_03 = FLAG(0, 22),
RabbitFlag_Water_04 = FLAG(0, 23),
RabbitFlag_Water_05 = FLAG(0, 24),
RabbitFlag_Water_06 = FLAG(0, 25),
RabbitFlag_Water_07 = FLAG(0, 26),
RabbitFlag_Water_08 = FLAG(0, 27),
RabbitFlag_Water_09 = FLAG(0, 28),
RabbitFlag_Water_10 = FLAG(0, 29),
RabbitFlag_Mountain_01 = FLAG(0, 30),
RabbitFlag_Mountain_02 = FLAG(0, 31),
RabbitFlag_Mountain_03 = FLAG(1, 0),
RabbitFlag_Mountain_04 = FLAG(1, 1),
RabbitFlag_Mountain_05 = FLAG(1, 2),
RabbitFlag_Mountain_06 = FLAG(1, 3),
RabbitFlag_Mountain_07 = FLAG(1, 4),
RabbitFlag_Mountain_08 = FLAG(1, 5),
RabbitFlag_Mountain_09 = FLAG(1, 6),
RabbitFlag_Mountain_10 = FLAG(1, 7),
RabbitFlag_Sand_01 = FLAG(1, 8),
RabbitFlag_Sand_02 = FLAG(1, 9),
RabbitFlag_Sand_03 = FLAG(1, 10),
RabbitFlag_Sand_04 = FLAG(1, 11),
RabbitFlag_Sand_05 = FLAG(1, 12),
RabbitFlag_Sand_06 = FLAG(1, 13),
RabbitFlag_Sand_07 = FLAG(1, 14),
RabbitFlag_Sand_08 = FLAG(1, 15),
RabbitFlag_Sand_09 = FLAG(1, 16),
RabbitFlag_Sand_10 = FLAG(1, 17),
RabbitFlag_Max,
};
struct SaveFile_00000_0000_Data_D4C {
/* 00 */ unk32 unk_00;
/* 04 */ unk32 unk_04;
/* 08 */ unk32 unk_08;
/* 0C */ unk32 unk_0C;
/* 10 */ unk32 unk_10;
/* 14 */ unk32 unk_14;
/* 18 */ unk32 unk_18;
/* 1C */ unk32 unk_1C;
/* 20 */ RabbitFlag rabbitFlags[2];
/* 28 */ unk16 unk_28;
/* 2A */ unk16 unk_2A;
/* 2C */ unk32 unk_2C;
/* 30 */ unk32 unk_30;
/* 34 */ unk32 unk_34;
/* 38 */ unk32 unk_38;
/* 3C */ unk32 unk_3C;
/* 40 */
SaveFile_00000_0000_Data_D4C() {}
SaveFile_00000_0000_Data_D4C(unk16 param1) {
MI_CpuFill32(0, this->rabbitFlags, sizeof(this->rabbitFlags));
this->unk_28 = param1;
}
};
struct SaveFile_00000_0000_Data_D8C {
/* 00 */ unk32 unk_00;
/* 04 */ unk32 unk_04;
/* 08 */ unk32 unk_08;
/* 0C */ unk32 unk_0C;
/* 10 */
};
struct SaveFile_00000_0000_Data_D9C {
/* 00 */ unk32 unk_00;
/* 04 */ unk16 unk_04;
/* 06 */ wchar_t mPlayerName[LENGTH_PLAYER_NAME + 1];
/* 18 */ unk32 unk_18;
/* 1C */ unk32 unk_1C;
/* 20 */
unk32 func_ov000_020a1000();
};
struct SaveInfoData {
/* 000 */ unk32 unk_000;
/* 004 */ unk32 unk_004;
@@ -162,35 +263,14 @@ struct SaveInfoData {
/* 040 */ SaveInventory inventory;
/* 0D8 */ SaveFile_00000_0000_Data_D8 unk_0D8;
/* 158 */ SaveFile_00000_0000_Data_158 unk_158;
/* 184 */ SaveFile_00000_0000_Data_184 unk_184[96];
/* 184 */ SaveFile_00000_0000_Data_184 unk_184[SaveCourseIndex_Max];
/* 484 */ SaveFile_00000_0000_Data_484 unk_484[256];
/* C84 */ SaveFile_00000_0000_Data_C84 unk_C84;
/* C94 */ SaveMiscAdvManager miscAdvManager;
/* D24 */ unk32 unk_D24;
/* D24 */ unk32 unk_D28;
/* D24 */ unk32 unk_D2C;
/* D24 */ unk32 unk_D30;
/* D24 */ unk32 unk_D34;
/* D24 */ unk32 unk_D38;
/* D24 */ unk32 unk_D3C;
/* D24 */ unk32 unk_D40;
/* D24 */ unk32 unk_D44;
/* D24 */ unk32 unk_D48;
/* D24 */ SaveFile_00000_0000_Data_D24 unk_D24;
/* D4C */ SaveFile_00000_0000_Data_D4C unk_D4C;
/* D78 */ unk32 unk_D78;
/* D7C */ unk32 unk_D7C;
/* D80 */ unk32 unk_D80;
/* D84 */ unk32 unk_D84;
/* D88 */ unk32 unk_D88;
/* D8C */ unk32 unk_D8C;
/* D90 */ unk32 unk_D90;
/* D94 */ unk32 unk_D94;
/* D98 */ unk32 unk_D98;
/* D9C */ unk32 unk_D9C;
/* DA0 */ unk16 unk_DA0;
/* DA2 */ wchar_t mPlayerName[LENGTH_PLAYER_NAME + 1];
/* DB4 */ unk32 unk_DB4;
/* DB8 */ unk32 unk_DB8;
/* D8C */ SaveFile_00000_0000_Data_D8C unk_D8C;
/* D9C */ SaveFile_00000_0000_Data_D9C unk_D9C;
/* DBC */ unk32 unk_DBC;
/* DC0 */ unk32 unk_DC0;
/* DC4 */ unk32 unk_DC4;
@@ -212,7 +292,8 @@ struct SaveInfoData {
/* E00 */
SaveInfoData() :
unk_014(0) {}
unk_014(0),
unk_D4C(0) {}
};
struct SaveTreasureData {
@@ -267,11 +348,11 @@ public:
}
wchar_t *GetPlayerName() {
return this->mInfoData[0].mPlayerName;
return this->mInfoData[0].unk_D9C.mPlayerName;
}
bool IsPlayerNameSet() {
return this->mInfoData[0].mPlayerName[0] != L'\0';
return this->mInfoData[0].unk_D9C.mPlayerName[0] != L'\0';
}
SaveFile_00000_2600_Data *Get2600Ptr() {
+22 -19
View File
@@ -9,6 +9,8 @@
#include "global.h"
#include "types.h"
#include <nitro/mi.h>
#define SAVE_DATA_SIZE (sizeof(SaveSlot) + sizeof(u8) * NUM_UNK_BLOCKS * SIZE_UNK_BLOCK)
enum {
@@ -19,25 +21,19 @@ enum {
SaveDataIndex_04,
};
class SaveManager_21C {
public:
/* 00 */ unk32 mUnk_00;
unk32 func_ov000_020a1000();
};
struct SaveManager_36 {
/* 00 */ u8 mKeyAmount;
/* 01 */ STRUCT_PAD(0x01, 0x08);
/* 08 */
};
struct SaveManager_00 {
/* 000 */ STRUCT_PAD(0x00, 0x36);
/* 036 */ SaveManager_36 mUnk_36[0x60];
/* 336 */ STRUCT_PAD(0x336, 0xB30);
/* B30 */ unk32 mUnk_B30[1]; // flags, at least 1
/* 000 */ unk32 unk_00;
/* 004 */ SaveFile_00000_0000_Data_158 unk_004;
/* 030 */ SaveFile_00000_0000_Data_184 unk_030[SaveCourseIndex_Max];
/* 330 */ SaveFile_00000_0000_Data_484 unk_330[256];
/* B30 */ SaveFile_00000_0000_Data_C84 unk_B30;
/* B40 */ SaveFile_00000_0000_Data_D24 unk_B40;
/* B68 */ SaveFile_00000_0000_Data_D8C unk_B68;
/* B78 */ SaveFile_00000_0000_Data_D4C unk_B78;
/* BB8 */
SaveManager_00(unk16 param1) :
unk_B78(param1) {}
};
class SaveManager {
@@ -54,8 +50,7 @@ public:
/* 210 */ unk32 mUnk_210;
/* 214 */ unk32 mUnk_214;
/* 218 */ SaveFile *mpSaveFile;
/* 21C */ SaveManager_21C mUnk_21C;
/* 220 */ STRUCT_PAD(0x220, 0x23C);
/* 21C */ SaveFile_00000_0000_Data_D9C mUnk_21C;
/* 23C */ PTMF<SaveFile>::PTMFCallback mUnk_23C;
/* 244 */ unk32 mUnk_244;
@@ -75,17 +70,25 @@ public:
return this->mpSaveFile->mSlots;
}
SaveManager_00 *GetUnk000() {
return this->mUnk_000;
}
SaveManager();
// overlay 0
void func_ov000_020a0b2c(UnkCallback param1, unk32 param2);
bool func_ov000_020a0b70(void *param1, unk32 param2);
// overlay 1
void func_ov001_020ba670();
void func_ov001_020ba7a8();
void func_ov001_020ba7c8(u16 saveSlotIndex);
// overlay 17
void func_ov017_020c3040(void *param1, unk32 param2);
// overlay 19
void func_ov019_020d08fc(unk32 param1, PTMF<SaveFile>::PTMFCallback param2);
bool func_ov019_020d0964(void);
void func_ov019_020d09dc(u16 saveSlotIndex);
+1 -1
View File
@@ -40,7 +40,7 @@ public:
void *operator new(size_t length, u32 id, u32 idLength = 4);
void *operator new[](size_t length, u32 id, u32 idLength = 4);
static inline void *operator new(size_t length, void *ptr = nullptr) {
inline void *operator new(size_t length, void *ptr = nullptr) {
#pragma unused(length)
return ptr;
}
+6 -6
View File
@@ -73,15 +73,15 @@ public:
/* 021 */ u8 mUnk_021;
/* 022 */ unk8 mUnk_022;
/* 023 */ unk8 mUnk_023;
/* 024 */ UnkSubStruct19 mUnk_024; // feather
/* 09C */ UnkSubStruct19 mUnk_09C; // green rectangle
/* 114 */ UnkSubStruct19 mUnk_114; // "touch screen!" text
/* 18C */ UnkSubStruct19 mUnk_18C; // copyright text
/* 024 */ CellAnimObject mUnk_024; // feather
/* 09C */ CellAnimObject mUnk_09C; // green rectangle
/* 114 */ CellAnimObject mUnk_114; // "touch screen!" text
/* 18C */ CellAnimObject mUnk_18C; // copyright text
/* 204 */ TitleScreen_Sub2 mUnk_204;
/* 218 */ TitleScreen_Sub3 mUnk_218;
/* 23C */ UnkStruct_ov019_020d24c8_28_258 mUnk_23C;
/* 254 */ UnkSubStruct19 mUnk_254; // logo shine
/* 2CC */ UnkSubStruct19 mUnk_2CC; // logo shine outline (it's barely visible)
/* 254 */ CellAnimObject mUnk_254; // logo shine
/* 2CC */ CellAnimObject mUnk_2CC; // logo shine outline (it's barely visible)
/* 344 */ unk32 mUnk_344;
/* 348 */
+36 -67
View File
@@ -1,5 +1,6 @@
#pragma once
#include "Animation/CellAnimObject.hpp"
#include "Game/GameModeManager.hpp"
#include "System/SysNew.hpp"
#include "Unknown/UnkFileSystem.hpp"
@@ -880,71 +881,6 @@ struct UnkResult {
void func_02017520(const char *nscrPath, const char *ncgrPath, const char *nclrPath);
};
// used to draw the swords from the adventure and battle buttons
class UnkSubStruct19 {
public:
/* 00 */ void *mUnk_00;
/* 04 */ void *mUnk_04;
/* 08 */ unk32 mUnk_08;
/* 0C */ unk32 mUnk_0C; // pause the animation timer (in this context: pause the shiny animation on the sword)
/* 10 */ unk32 mUnk_10; // animation timer
/* 14 */ unk32 mUnk_14; // animation speed (also affects above timer)
/* 18 */ unk32 mUnk_18;
/* 1C */ void *mUnk_1C; // pointer to animation bank ("ABNK")
/* 20 */ unk32 mUnk_20;
/* 24 */ unk32 mUnk_24;
/* 28 */ u8 mUnk_28; // bool?
/* 29 */ unk8 mUnk_29;
/* 2A */ unk8 mUnk_2A;
/* 2B */ unk8 mUnk_2B;
/* 2C */ unk32 mUnk_2C;
/* 30 */ void *mUnk_30; // pointer to somewhere inside "CEBK"
/* 34 */ void *mUnk_34;
/* 38 */ unk32 mUnk_38;
/* 3C */ unk32 mUnk_3C;
/* 40 */ unk32 mUnk_40; // related to the width of the texture (scaling matrix?)
/* 44 */ unk32 mUnk_44; // related to the height of the texture
/* 48 */ Vec2us mUnk_48;
/* 4C */ unk32 mUnk_4C;
/* 50 */ unk32 mUnk_50;
/* 54 */ unk32 mUnk_54;
/* 58 */ unk32 mUnk_58; // another timer?
/* 5C */ Vec2s mUnk_5C; // position of the animated texture
/* 60 */ unk32 mUnk_60;
/* 64 */ unk32 mUnk_64;
/* 68 */ unk32 mUnk_68;
/* 6C */ unk16 mUnk_6C;
/* 6E */ bool mUnk_6E;
/* 6F */ unk8 mUnk_6F;
/* 70 */ unk32 mUnk_70;
/* 74 */ unk16 mUnk_74;
/* 76 */ unk16 mUnk_76;
/* 78 */
UnkSubStruct19();
UnkSubStruct19(unk32 param1, unk32 param2) {
this->mUnk_6E = true;
this->mUnk_70 = 0;
this->mUnk_5C.x = 0;
this->mUnk_5C.y = 0;
this->mUnk_74 = 0;
this->func_ov000_0206082c(param1, param2);
}
void func_ov000_0206082c(s16 param1, unk32 param2);
void func_ov000_02060950();
void func_ov000_020609b0();
void func_ov000_020609c4(void);
bool func_ov000_02060a98(unk32 param1);
void func_ov000_02060ad0();
bool func_ov000_02060af8(void);
void func_ov000_02060b50();
void func_ov000_02060b64(void);
void func_ov000_02060bac();
unk32 func_ov000_02060c28(void);
void func_ov000_02060bd8(unk32 param1);
};
struct UnkStruct_StackTitleScreen {
/* 00 */ unk32 pad[5];
/* 14 */
@@ -1026,8 +962,8 @@ class UnkActorSystem2 : public GameModeManagerBase_104 {
public:
/* 000 (base) */
/* 01B */ bool mUnk_01B;
/* 01C */ UnkSubStruct19 mUnk_01C;
/* 094 */ UnkSubStruct19 mUnk_094;
/* 01C */ CellAnimObject mUnk_01C;
/* 094 */ CellAnimObject mUnk_094;
/* 10C */ bool mUnk_10C;
/* 10C */ bool mUnk_10D;
@@ -1293,3 +1229,36 @@ public:
/* 00 */ virtual ~MapObjectProfile_Derived5() override;
/* 08 */
};
//! TODO: move to a better place
enum TrainPresetType_ {
TrainPresetType_Default = 0, // normal overworld settings
TrainPresetType_DarkRealmNormal = 1, // default dark realm settings (SceneIndex_t_dark)
TrainPresetType_DarkRealmLightTear = 2, // dark realm when on a light tear (SceneIndex_t_dark)
TrainPresetType_DarkRealmLightTearRope = 3, // same as above but when pulling the rope (SceneIndex_t_dark)
TrainPresetType_DarkRealmFight = 4, // (SceneIndex_t_eviltrain, SceneIndex_t_eviltrain2 & SceneIndex_t_eviltrain3)
TrainPresetType_5 = 5, // unused?
TrainPresetType_Max,
};
struct TrainSpeedTarget {
/* 00 */ unk32 speed;
/* 04 */ unk32 unk_04;
/* 08 */
};
struct TrainSpeedPreset {
/* 00 */ TrainSpeedTarget reverse;
/* 08 */ TrainSpeedTarget stop;
/* 10 */ TrainSpeedTarget slow;
/* 18 */ TrainSpeedTarget fast;
/* 20 */ unk32 unk_20;
/* 24 */ unk32 unk_24;
/* 28 */ unk32 unk_28;
/* 2C */ unk32 unk_2C;
/* 30 */ unk32 unk_30;
/* 34 */ unk32 unk_34;
/* 38 */ unk32 unk_38; // related to the "emergency break" thing when you go to reverse while fast speed
/* 3C */ fx32 unk_3C;
/* 40 */
};
+10 -10
View File
@@ -25,15 +25,15 @@ public:
/* 00A */ u8 mUnk_00A;
/* 00B */ unk8 mUnk_00B;
/* 000 */ UnkStruct_ov019_020d24c8_28_258 mUnk_00C;
/* 018 */ UnkSubStruct19 mUnk_024;
/* 090 */ UnkSubStruct19 mUnk_09C;
/* 108 */ UnkSubStruct19 mUnk_114;
/* 180 */ UnkSubStruct19 mUnk_18C;
/* 1F8 */ UnkSubStruct19 mUnk_204;
/* 270 */ UnkSubStruct19 mUnk_27C;
/* 2E8 */ UnkSubStruct19 mUnk_2F4;
/* 360 */ UnkSubStruct19 mUnk_36C;
/* 3E4 */ UnkSubStruct19 mUnk_3E4[2];
/* 018 */ CellAnimObject mUnk_024;
/* 090 */ CellAnimObject mUnk_09C;
/* 108 */ CellAnimObject mUnk_114;
/* 180 */ CellAnimObject mUnk_18C;
/* 1F8 */ CellAnimObject mUnk_204;
/* 270 */ CellAnimObject mUnk_27C;
/* 2E8 */ CellAnimObject mUnk_2F4;
/* 360 */ CellAnimObject mUnk_36C;
/* 3E4 */ CellAnimObject mUnk_3E4[2];
/* 4D4 */ u8 mUnk_4D4;
/* 4D5 */ u8 mUnk_4D5;
/* 4D6 */ unk8 mUnk_4D6; // pad?
@@ -191,7 +191,7 @@ public:
class UICounter_SmallKeys {
public:
/* 00 */ UnkStruct_ov019_020d24c8_28_258 mUnk_00;
/* 18 */ UnkSubStruct19 mUnk_18;
/* 18 */ CellAnimObject mUnk_18;
/* 90 */ unk16 mUnk_90;
/* 92 */ unk16 mUnk_92;
/* 94 */
+2 -2
View File
@@ -2,7 +2,7 @@
#include "types.h"
class UnkSubStruct19;
class CellAnimObject;
class UnkStruct_0204af1c_00 {
public:
@@ -22,7 +22,7 @@ public:
UnkStruct_0204af1c();
void func_0201a800();
void func_0201aa44(UnkStruct_ov019_020d24c8_28_258_00 *param1, void *param2, unk32 param3, void *param4);
void func_0201aad0(UnkSubStruct19 *param1, void *param2, unk32 param3, void *param4);
void func_0201aad0(CellAnimObject *param1, void *param2, unk32 param3, void *param4);
void func_0201aa8c(UnkStruct_ov019_020d24c8_28_258_00 *param1, unk32 param2, unk32 param3, unk32 param4, unk32 param5);
};
+6 -1
View File
@@ -15,11 +15,15 @@ struct stack_ov000_02073578 {
class UnkStruct_027e09b8_00 {
public:
/* 000 */ STRUCT_PAD(0x000, 0xFD4);
/* 000 */ STRUCT_PAD(0x000, 0xFD0);
/* FD0 */ unk16 mUnk_FD0; // set to 1 when link has a blocking interaction?
/* FD2 */ unk16 mUnk_FD2;
/* FD4 */
UnkStruct_027e09b8_00();
~UnkStruct_027e09b8_00();
void func_ov000_02073bc0();
};
class UnkStruct_027e09b8_04 {
@@ -85,6 +89,7 @@ public:
unk32 func_ov000_02073470(void *param1, unk32 param2);
unk32 func_ov000_02073388(void *param1, unk32 param2);
void func_ov000_02073578(void *param1, unk32 param2);
void func_ov000_0207332c();
#if IS_JP
void func_ov000_02074d78(unk32 param1);
+18 -4
View File
@@ -3,6 +3,7 @@
#include "global.h"
#include "types.h"
#include "Actor/ActorRef.hpp"
#include "Item/ItemManager.hpp"
#include "LinkList.hpp"
#include "Player/Player.hpp"
@@ -105,7 +106,10 @@ public:
class UnkStruct_027e0ce0_38_58 {
public:
/* 000 */ STRUCT_PAD(0x00, 0x3D4);
/* 000 */ STRUCT_PAD(0x00, 0x338);
/* 338 */ unk32 mUnk_338; // rope pulled timer
/* 33C */ unk32 mUnk_33C; // rope pull strength, 0 to 8
/* 340 */ STRUCT_PAD(0x340, 0x3D4);
/* 3D4 */
UnkStruct_027e0ce0_38_58();
@@ -175,7 +179,7 @@ public:
/* 050 */ unk32 mUnk_050;
/* 054 */ unk16 mUnk_054;
/* 056 */ unk16 mUnk_056;
/* 058 */ UnkStruct_027e0ce0_38_58 *mUnk_058;
/* 058 */ UnkStruct_027e0ce0_38_58 *mUnk_058; // related to train invicibility state in the dark realm (+0x35C/+0x360)
/* 05C */ UnkStruct_027e0ce0_38_5C *mUnk_05C;
/* 060 */ UnkStruct_027e0ce0_38_60 mUnk_060;
/* 138 */ unk32 mUnk_138;
@@ -197,7 +201,7 @@ public:
/* 174 */ UnkStruct_027e0ce0_38_174 mUnk_174;
/* 19C */ UnkStruct_027e0ce0_38_19C mUnk_19C;
/* 1C8 */ UnkStruct_027e0ce0_38_1C8 mUnk_1C8;
/* 1FC */ UnkSubStruct19 mUnk_1FC;
/* 1FC */ CellAnimObject mUnk_1FC;
/* 274 */ UnkStruct_ov019_020d24c8_28_258_00 mUnk_274;
/* 280 */
@@ -243,7 +247,17 @@ public:
class UnkStruct_027e0ce0_40_Base_94 {
public:
/* 00 */ STRUCT_PAD(0x00, 0x5C);
/* 00 */ STRUCT_PAD(0x00, 0x14);
/* 14 */ ActorRef mUnk_14;
/* 18 */ unk32 mUnk_18;
/* 1C */ ActorRef mUnk_1C;
/* 20 */ unk32 mUnk_20;
/* 24 */ STRUCT_PAD(0x24, 0x48);
/* 48 */ ActorRef mUnk_48;
/* 4C */ unk32 mUnk_4C;
/* 50 */ unk32 mUnk_50;
/* 54 */ unk32 mUnk_54;
/* 58 */ unk32 mUnk_58;
/* 5C */ unk32 mUnk_5C; // seems to be the walking speed of link??
/* 60 */ unk32 mUnk_60;
/* 64 */ unk32 mUnk_64;
+1 -1
View File
@@ -8,7 +8,7 @@
#include "types.h"
struct UnkStruct_027e0cf8_00_18_00 {
/* 00 */ UnkSubStruct19 mUnk_00;
/* 00 */ CellAnimObject mUnk_00;
/* 78 */ unk32 mUnk_78;
/* 7C */ unk32 mUnk_7C;
/* 80 */ unk32 mUnk_80;
+10 -17
View File
@@ -3,6 +3,7 @@
#include "global.h"
#include "types.h"
#include "Actor/ActorRef.hpp"
#include "Item/ItemManager.hpp"
#include "System/SysNew.hpp"
#include "math.hpp"
@@ -25,9 +26,9 @@ public:
class UnkStruct_PlayerGet_64 {
public:
/* 00 */ unk32 mUnk_00;
/* 00 */ ActorRef *mUnk_00;
/* 04 */ unk32 mUnk_04;
/* 08 */ u16 mUnk_08;
/* 08 */ u16 mUnk_08; // makes link invisible when set
/* 0A */ unk16 mUnk_0A;
/* 0C */
@@ -94,7 +95,7 @@ public:
/* A0 */ STRUCT_PAD(0xA0, 0x148);
/* 148 */ u32 mUnk_148;
/* 14C */ unk32 mUnk_14C;
/* 150 */ unk32 mUnk_150;
/* 150 */ ActorRef mUnk_150;
};
class UnkStruct_ov000_0208f820_30_10 {
@@ -160,25 +161,17 @@ public:
class UnkStruct_ov000_0208f820_04 {
public:
/* 00 */ union {
u8 mUnk_00[4];
u16 mUnk_00_s16;
u32 mUnk_00_s32;
};
/* 04 */ union {
u8 mUnk_04[4];
u16 mUnk_04_s16;
u32 mUnk_04_s32;
};
/* 00 */ ActorRef mUnk_00;
/* 04 */ ActorRef mUnk_04;
/* 08 */ unk32 mUnk_08;
/* 0C */ ItemId mItemId;
/* 10 */
UnkStruct_ov000_0208f820_04(unk32 param1, unk32 param2, unk32 param3, ItemId itemId) {
*(u32 *) this->mUnk_00 = param1;
*(u32 *) this->mUnk_04 = param2;
this->mUnk_08 = param3;
this->mItemId = itemId;
this->mUnk_00.data = param1;
this->mUnk_04.data = param2;
this->mUnk_08 = param3;
this->mItemId = itemId;
}
UnkStruct_ov000_0208f820_04() {}
+1 -1
View File
@@ -68,7 +68,7 @@ public:
void func_ov000_0206d0bc(unk32 param1);
void func_ov000_0206d0ec(unk32 param1, unk32 param2, unk32 param3, unk32 param4);
void func_ov000_0206d134(unk32 param1);
void func_ov000_0206d274(unk32 param1);
void func_ov000_0206d274(unk32 param1); // play seq?
void func_ov018_020c5940();
};
+2 -1
View File
@@ -1,5 +1,6 @@
#pragma once
#include "Message/BMG.hpp"
#include "Save/SaveManager.hpp"
#include "System/SysNew.hpp"
#include "global.h"
@@ -33,7 +34,7 @@ public:
/* 08 */ virtual void vfunc_08(unk32 param1); // func_ov000_020669cc
/* 0C */ virtual unk32 vfunc_0C(); // func_ov000_020669d0
/* 10 */ virtual unk32 vfunc_10(u16 *param1); // func_ov000_02066a5c
/* 14 */ virtual unk32 vfunc_14(void *param1); // func_ov000_02066dfc
/* 14 */ virtual bool vfunc_14(FLW1Instr *param1); // func_ov000_02066dfc
/* 18 */ virtual void vfunc_18(); // func_ov000_020669d8
/* 1C */ virtual unk32 vfunc_1C(u32 param1, unk32 param2, unk32 param3); // func_ov000_02067234
/* 20 */ virtual unk32 vfunc_20(unk32 param1, unk32 param2, unk32 param3); // func_ov000_0206723c
+2 -2
View File
@@ -319,7 +319,7 @@ static inline void Vec2pCpp_Copy(const Vec2pCpp *a, Vec2pCpp *dst) {
}
//! TODO: remove
extern "C" static inline Vec2s *Vec2s_New(s16 x, s16 y) {
extern "C" inline Vec2s *Vec2s_New(s16 x, s16 y) {
Vec2s vec;
vec.x = x;
vec.y = y;
@@ -327,7 +327,7 @@ extern "C" static inline Vec2s *Vec2s_New(s16 x, s16 y) {
}
//! TODO: remove
extern "C" static inline Vec2s *Vec2s_GetCopy(Vec2s *src) {
extern "C" inline Vec2s *Vec2s_GetCopy(Vec2s *src) {
Vec2s vec;
vec.x = src->x;
vec.y = src->y;
+1 -1
View File
@@ -405,7 +405,7 @@ inline void GX_SetCapture(u32 size, u32 mode, u32 srcA, GXCaptureSrcB srcB, u32
}
inline void GXS_SetOBJVRamModeBmp(u32 mode) {
REG_DISPCNT_SUB = REG_DISPCNT_SUB & ~0x60 | ((mode & 0x3) << 5);
REG_DISPCNT_SUB = (REG_DISPCNT_SUB & ~0x60) | ((mode & 0x3) << 5);
}
inline void GX_SetVisibleWindows(s32 windows) {
+55
View File
@@ -0,0 +1,55 @@
#pragma once
#include <nitro/math.h>
#include <types.h>
#ifdef __cplusplus
extern "C" {
#endif
// note: some of those names are from an assert inside `CellAnimObject::func_ov000_020609c4`
typedef struct AnimCallbackFunctor {
// `unk_00` is function kind? in `func_020075ec` it's calling `pFunc` with one arg when set to 2 or 3
// and in `func_02007498` it goes with two when set to 1
/* 00 */ unk32 unk_00;
/* 04 */ unk32 unk_04;
/* 08 */ void *pFunc;
/* 0C */ unk32 unk_0C;
} AnimCallbackFunctor; // size = 0x10
typedef struct AnimController {
/* 00 */ void *unk_00;
/* 04 */ void *unk_04;
/* 08 */ unk32 unk_08;
/* 0C */ unk32 unk_0C; // pause the animation timer
/* 10 */ unk32 unk_10; // animation timer
/* 14 */ unk32 unk_14; // animation speed (also affects above timer)
/* 18 */ unk32 unk_18;
/* 1C */ void *unk_1C; // pointer to animation bank ("ABNK")
/* 20 */ AnimCallbackFunctor callbackFunctor;
} AnimController; // size = 0x30
typedef struct UnkAnimStruct1 {
/* 00 */ unk32 unk_00;
/* 04 */ unk32 unk_04; // related to the width of the texture (scaling matrix?)
/* 08 */ unk32 unk_08; // related to the height of the texture
/* 0C */ struct { //! TODO: used to be `Vec2us`
u16 x;
u16 y;
} unk_0C;
/* 10 */ unk16 unk_10;
/* 12 */ unk16 unk_12;
} UnkAnimStruct1; // size = 0x14
typedef struct CellAnim {
/* 00 */ AnimController animCtrl;
/* 30 */ void *unk_30; // pointer to somewhere inside "CEBK"
/* 34 */ void *unk_34;
/* 38 */ unk32 unk_38;
/* 3C */ UnkAnimStruct1 unk_3C;
} CellAnim; // size = 0x50
#ifdef __cplusplus
} // extern "C"
#endif
+33 -50
View File
@@ -12,7 +12,7 @@ ARM Actor::Actor() {
this->mUnk_3C = NULL;
this->mUnk_40 = 0;
this->mUnk_48 = 4;
this->mUnk_4C = -1;
this->mState = ActorState_None;
this->mUnk_50 = 0;
this->mUnk_52 = 0;
this->mUnk_54 = 0;
@@ -36,15 +36,14 @@ ARM Actor::~Actor() {}
// non-matching (equivalent)
ARM void Actor::func_ov000_0209848c(ActorProfile *param1) {
s16 unk_1c;
Cylinder *temp_r3;
unk_1c = param1->mUnk_1C;
temp_r3 = &param1->mUnk_04;
Cylinder *temp_r3 = &param1->mUnk_04;
unk32 unk_1c = param1->mUnk_1C;
this->mpProfile = param1;
this->mUnk_30 = this->mUnk_34 = temp_r3;
this->mUnk_4E = unk_1c;
this->mUnk_34 = &param1->mUnk_04;
this->mUnk_30 = &param1->mUnk_04;
this->mYOffset = unk_1c;
}
ARM bool Actor::vfunc_18(unk32 param1) {
@@ -81,17 +80,11 @@ ARM void Actor::func_ov000_020984f0() {
}
}
// non-matching
ARM void Actor::vfunc_00(VecFx32 *param1) {
*param1 = mPos;
param1->y += mUnk_4E;
// short sVar1;
// int iVar2;
// int iVar3;
// param1->x = this->mPos.x;
// param1->y = this->mPos.y + this->mUnk_4E;
// param1->z = this->mPos.z;
ARM void Actor::GetOffsetPos(VecFx32 *pPos) const {
pPos->x = this->mPos.x;
pPos->y = this->mPos.y;
pPos->z = this->mPos.z;
pPos->y += this->mYOffset;
}
ARM VecFx32 *Actor::func_ov000_0209853c(unk32 param1) {
@@ -110,59 +103,49 @@ ARM unk8 Actor::vfunc_0c() {
return this->mpProfile->mUnk_18;
}
// non-matching
ARM unk32 Actor::vfunc_38(unk32 param1) {
u16 var_r3;
short stack_c;
var_r3 = param1 >> 16;
if (GET_FLAG(this->mFlags, ActorFlag_Grabbed)) {
return 0;
ARM bool Actor::Grab(ActorGrabParams grabParams) {
// fake match?
if (GET_FLAG((volatile ActorFlags *) this->mFlags, ActorFlag_Grabbed)) {
return false;
}
SET_FLAG(this->mFlags, ActorFlag_Grabbed);
stack_c = this->mFlags[0];
switch (stack_c) {
switch (grabParams.unk_00) {
case 0x100:
case 0x101:
if (stack_c == 0x101) {
case 0x101: {
u16 var_r3 = grabParams.unk_02;
if (grabParams.unk_00 == 0x101) {
var_r3 = 0;
}
// ???
*(&this->mUnk_4A + var_r3) = 0;
this->mUnk_4A[var_r3] = 0;
break;
}
default:
break;
}
return 1;
return true;
}
// non-matching
ARM bool Actor::vfunc_3c(unk32 param2, VecFx32 *param3) {
if (!GET_FLAG(this->mFlags, ActorFlag_Grabbed)) {
ARM bool Actor::Drop(ActorGrabParams param2, const VecFx32 *pVel) {
// fake match?
if (!GET_FLAG((volatile ActorFlags *) this->mFlags, ActorFlag_Grabbed)) {
return false;
}
this->mVel.x = param3->x;
this->mVel.y = param3->y;
this->mVel.z = param3->z;
this->mVel.x = pVel->x;
this->mVel.y = pVel->y;
this->mVel.z = pVel->z;
UNSET_FLAG(this->mFlags, ActorFlag_Grabbed);
return true;
}
// non-matching
ARM void Actor::func_ov000_0209862c(unk32 param1) {
s8 var_ip;
void *temp_r2;
var_ip = 0;
do {
var_ip += 1;
(&this->mUnk_4A)[var_ip] = param1;
} while (var_ip < 2);
for (s8 i = 0; i < ARRAY_LEN(this->mUnk_4A); i++) {
this->mUnk_4A[i] = param1;
}
}
+9 -12
View File
@@ -29,29 +29,29 @@ ARM bool ActorUnkSWOB::vfunc_18(unk32 param1) {
this->mUnk_9C = this->mUnk_9E;
if (this->func_ov000_02098a60(0)) {
this->func_ov000_0209a9b4(1);
this->SetState(ActorUnkSWOBState_1);
} else {
this->func_ov000_0209a9b4(0);
this->SetState(ActorUnkSWOBState_0);
}
return true;
}
ARM void ActorUnkSWOB::func_ov000_0209a9b4(unk32 param1) {
this->mUnk_4C = param1;
ARM void ActorUnkSWOB::SetState(ActorState state) {
this->mState = state;
switch (this->mUnk_4C) {
case 0:
switch (this->mState) {
case ActorUnkSWOBState_0:
this->func_ov000_02098a88(0, 0);
break;
case 1:
case ActorUnkSWOBState_1:
this->func_ov000_02098a88(0, 1);
if (this->mUnk_94 == 0) {
UNSET_FLAG(this->mFlags, ActorFlag_Alive);
}
break;
case 2:
case ActorUnkSWOBState_2:
this->func_ov000_0209aa30();
this->mUnk_52 = -1;
this->mUnk_50 = 0;
@@ -62,7 +62,7 @@ ARM void ActorUnkSWOB::func_ov000_0209a9b4(unk32 param1) {
}
ARM void ActorUnkSWOB::func_ov000_0209aa30(void) {
if (this->mUnk_4C == 1) {
if (this->mState == ActorUnkSWOBState_1) {
return;
}
@@ -120,6 +120,3 @@ ARM void ActorUnkSWOB::func_ov000_0209aa30(void) {
break;
}
}
ARM ActorUnkSWOB::~ActorUnkSWOB() {}
ARM ActorProfileUnkSWOB::~ActorProfileUnkSWOB() {}
+21 -23
View File
@@ -23,7 +23,7 @@ ARM ActorUnkSWTM::ActorUnkSWTM() :
mUnk_A8(0) {}
ARM ActorUnkSWTM::~ActorUnkSWTM() {
if (this->mUnk_4C != 2 && this->func_ov000_02098a60(0) == 0) {
if (this->mState != ActorUnkSWTMState_2 && this->func_ov000_02098a60(0) == 0) {
this->func_ov000_0209b184();
}
}
@@ -38,52 +38,52 @@ ARM bool ActorUnkSWTM::vfunc_18(unk32 param1) {
this->mUnk_9C = this->mUnk_9E;
if (this->func_ov000_02098a60(0)) {
this->func_ov000_0209af54(2);
this->SetState(ActorUnkSWTMState_2);
} else {
this->func_ov000_0209af54(0);
this->SetState(ActorUnkSWTMState_0);
}
return true;
}
ARM void ActorUnkSWTM::vfunc_20(void) {
switch (this->mUnk_4C) {
case 0:
switch (this->mState) {
case ActorUnkSWTMState_0:
if (!this->func_ov000_0209afe4()) {
return;
}
this->func_ov000_0209af54(1);
this->SetState(ActorUnkSWTMState_1);
break;
case 1:
case ActorUnkSWTMState_1:
this->mUnk_A8++;
this->func_ov000_0209b1d0();
if (this->mUnk_A8 >= this->mUnk_A4) {
this->func_ov000_0209af54(3);
this->SetState(ActorUnkSWTMState_3);
} else {
switch (this->func_ov000_0209b038()) {
case 1:
this->func_ov000_0209af54(2);
this->SetState(ActorUnkSWTMState_2);
break;
case 2:
this->func_ov000_0209af54(3);
this->SetState(ActorUnkSWTMState_3);
break;
default:
break;
}
}
break;
case 2:
case ActorUnkSWTMState_2:
break;
case 3:
case ActorUnkSWTMState_3:
if (this->mUnk_50 < this->mUnk_52) {
this->mUnk_50++;
}
if ((s32) this->mUnk_50 >= 15) {
this->func_ov000_0209b184();
this->func_ov000_0209af54(0);
this->SetState(ActorUnkSWTMState_0);
}
break;
default:
@@ -93,26 +93,26 @@ ARM void ActorUnkSWTM::vfunc_20(void) {
ARM void ActorUnkSWTM::vfunc_24(void) {}
ARM void ActorUnkSWTM::func_ov000_0209af54(unk32 param1) {
this->mUnk_4C = param1;
ARM void ActorUnkSWTM::SetState(ActorState state) {
this->mState = state;
this->mUnk_A8 = 0;
switch (this->mUnk_4C) {
case 0:
switch (this->mState) {
case ActorUnkSWTMState_0:
this->func_ov000_02098a88(0, 0);
break;
case 1:
case ActorUnkSWTMState_1:
this->mUnk_AC = false;
this->mUnk_9C = this->mUnk_9E;
break;
case 2:
case ActorUnkSWTMState_2:
this->func_ov000_02098a88(0, 1);
if (this->mUnk_94 == 0) {
UNSET_FLAG(this->mFlags, ActorFlag_Alive);
}
break;
case 3:
case ActorUnkSWTMState_3:
this->func_ov000_0209b160();
this->mUnk_50 = 0;
this->mUnk_52 = -1;
@@ -177,7 +177,7 @@ ARM unk32 ActorUnkSWTM::func_ov000_0209b038(void) {
}
ARM void ActorUnkSWTM::func_ov000_0209b160(void) {
if (this->mUnk_4C != 2) {
if (this->mState != ActorUnkSWTMState_2) {
data_ov000_020b5214.func_ov000_0206db44(0xA3);
}
}
@@ -199,5 +199,3 @@ ARM void ActorUnkSWTM::func_ov000_0209b1d0(void) {
data_ov000_020b5214.func_ov000_0206e7e8(0x91);
}
}
ARM ActorProfileUnkSWTM::~ActorProfileUnkSWTM() {}
@@ -1,10 +1,10 @@
#include "Actor/ActorUnk_ov000_020a8bb0.hpp"
#include "Actor/Actor_Derived1.hpp"
#include "Unknown/UnkStruct_027e09b8.hpp"
#include "Unknown/UnkStruct_027e0cd8.hpp"
#include "flags.h"
#include "global.h"
ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a8ae0(fx32 param1) {
ARM void Actor_Derived1::func_ov000_020a8ae0(fx32 param1) {
u32 posY = this->mVel.y;
if (posY <= param1) {
@@ -14,7 +14,7 @@ ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a8ae0(fx32 param1) {
this->mVel.y = posY;
}
ARM ActorUnk_ov000_020a8bb0::ActorUnk_ov000_020a8bb0(ModelRender *param1, unk32 param2) :
ARM Actor_Derived1::Actor_Derived1(ModelRender *param1, unk32 param2) :
mUnk_094(param2),
mUnk_0A4(param1),
mUnk_0B0(0),
@@ -39,45 +39,45 @@ ARM ActorUnk_ov000_020a8bb0::ActorUnk_ov000_020a8bb0(ModelRender *param1, unk32
mUnk_118(0x1000),
mUnk_11C(0x019A) {
this->mUnk_30 = &this->mUnk_104;
this->mUnk_4A = 5;
this->mUnk_4A[0] = 5;
this->mUnk_44 = 0x1F;
this->mUnk_094.mUnk_08 = 3;
this->mUnk_38 = &this->mUnk_094.mUnk_00;
this->mUnk_0B0 |= 0x08;
}
ARM ActorUnk_ov000_020a8bb0::~ActorUnk_ov000_020a8bb0() {}
ARM Actor_Derived1::~Actor_Derived1() {}
ARM bool ActorUnk_ov000_020a8bb0::vfunc_18(unk32 param1) {
ARM bool Actor_Derived1::vfunc_18(unk32 param1) {
if (this->mUnk_5C.mParams[2] == 0 && this->func_ov000_020a8dd0()) {
UNSET_FLAG(this->mFlags, ActorFlag_Alive);
}
if (this->mUnk_0B0 & 8) {
this->mUnk_0A4.mpModelRender->func_ov000_02057c38(6, 2);
this->mUnk_0A4.mpModelRender->func_ov000_0209a7b8(this, ActorUnk_ov000_020a8bb0::func_ov000_020a9804);
this->mUnk_0A4.mpModelRender->func_ov000_0209a7b8(this, Actor_Derived1::func_ov000_020a9804);
}
this->vfunc_54(param1);
return 1;
}
ARM void ActorUnk_ov000_020a8bb0::vfunc_54(unk32 param1) {}
ARM void Actor_Derived1::vfunc_54(unk32 param1) {}
ARM void ActorUnk_ov000_020a8bb0::vfunc_1c() {
ARM void Actor_Derived1::vfunc_1c() {
this->func_ov031_020e3ca4();
}
ARM bool ActorUnk_ov000_020a8bb0::func_ov000_020a8db0() {
ARM bool Actor_Derived1::func_ov000_020a8db0() {
return data_027e0cd8->func_ov000_02081e30(this->mUnk_5C.mUnk_1A, this->mUnk_5C.mUnk_18.x);
}
ARM bool ActorUnk_ov000_020a8bb0::func_ov000_020a8dd0() {
ARM bool Actor_Derived1::func_ov000_020a8dd0() {
return data_027e0cd8->func_ov000_02081e30(this->mUnk_5C.mUnk_1C_0, this->mUnk_5C.mUnk_18.y);
}
// non-matching
ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a8df0(ActorRef param1, unk32 param2) {
ARM void Actor_Derived1::func_ov000_020a8df0(ActorRef param1, unk32 param2) {
if (!((u32) (((param2 + 8) - param2) / 2) < 2)) {
this->mUnk_0B0 |= 2;
} else {
@@ -94,12 +94,12 @@ ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a8df0(ActorRef param1, unk32 par
}
}
ARM void ActorUnk_ov000_020a8bb0::vfunc_b4() {
ARM void Actor_Derived1::vfunc_b4() {
this->vfunc_58(0);
}
// non-matching
ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a8e9c(VecFx32 *param1) {
ARM void Actor_Derived1::func_ov000_020a8e9c(VecFx32 *param1) {
fx32 z = param1->x;
fx32 y = param1->y;
fx32 x = param1->z;
@@ -110,7 +110,7 @@ ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a8e9c(VecFx32 *param1) {
this->mUnk_0BC.Reset();
}
ARM void ActorUnk_ov000_020a8bb0::vfunc_b0() {
ARM void Actor_Derived1::vfunc_b0() {
if (data_027e09b8->func_01ffd420() == 0) {
ActorUnk_vfunc_b0 auStack_60;
auStack_60.mpActor = this;
@@ -122,28 +122,28 @@ ARM void ActorUnk_ov000_020a8bb0::vfunc_b0() {
auStack_60.mUnk_21 = 0;
auStack_60.mUnk_32 = 1;
this->vfunc_00(&auStack_60.mUnk_34);
this->GetOffsetPos(&auStack_60.mUnk_34);
this->mUnk_0B4 = data_027e09b8->func_ov000_02073470(&auStack_60, 0);
}
}
ARM unk32 ActorUnk_ov000_020a8bb0::vfunc_88() {
ARM unk32 Actor_Derived1::vfunc_88() {
return 1;
}
ARM unk32 ActorUnk_ov000_020a8bb0::vfunc_8c() {
ARM unk32 Actor_Derived1::vfunc_8c() {
return 1;
}
ARM unk32 ActorUnk_ov000_020a8bb0::vfunc_90() {
ARM unk32 Actor_Derived1::vfunc_90() {
return 0x7B;
}
ARM void ActorUnk_ov000_020a8bb0::vfunc_94() {
ARM void Actor_Derived1::vfunc_94() {
this->mUnk_0A4.mUnk_08 = 0xF6;
}
ARM void ActorUnk_ov000_020a8bb0::vfunc_60() {
ARM void Actor_Derived1::vfunc_60() {
if (data_027e09b8->func_01ffd420() == 0) {
if (this->vfunc_64()) {
this->vfunc_b0();
@@ -153,15 +153,15 @@ ARM void ActorUnk_ov000_020a8bb0::vfunc_60() {
}
}
ARM bool ActorUnk_ov000_020a8bb0::vfunc_64() {
ARM bool Actor_Derived1::vfunc_64() {
return GET_FLAG(this->mFlags, ActorFlag_Interacting);
}
ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a8ff4() {}
ARM void Actor_Derived1::func_ov000_020a8ff4() {}
ARM void ActorUnk_ov000_020a8bb0::vfunc_6c() {}
ARM void Actor_Derived1::vfunc_6c() {}
ARM void ActorUnk_ov000_020a8bb0::vfunc_68() {
ARM void Actor_Derived1::vfunc_68() {
UNSET_FLAG(this->mFlags, ActorFlag_Interacting);
this->func_ov000_020a9200();
this->vfunc_ac();
@@ -169,19 +169,19 @@ ARM void ActorUnk_ov000_020a8bb0::vfunc_68() {
this->mUnk_0B0 &= ~0x10;
}
ARM unk32 ActorUnk_ov000_020a8bb0::vfunc_7c() {
ARM unk32 Actor_Derived1::vfunc_7c() {
return 1;
}
ARM unk32 ActorUnk_ov000_020a8bb0::vfunc_80() {
ARM unk32 Actor_Derived1::vfunc_80() {
return -1;
}
ARM unk32 ActorUnk_ov000_020a8bb0::vfunc_84() {
ARM unk32 Actor_Derived1::vfunc_84() {
return 1;
}
ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a91b8(VecFx32 *param1, unk32 param2) {
ARM void Actor_Derived1::func_ov000_020a91b8(VecFx32 *param1, unk32 param2) {
this->func_ov000_020a8e9c(param1);
if (param2 != 0) {
@@ -193,40 +193,40 @@ ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a91b8(VecFx32 *param1, unk32 par
this->vfunc_58(7);
}
ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a9200() {}
ARM void Actor_Derived1::func_ov000_020a9200() {}
ARM void ActorUnk_ov000_020a8bb0::vfunc_70() {
if (this->mUnk_4C != 5) {
ARM void Actor_Derived1::vfunc_70() {
if (this->mState != 5) {
this->vfunc_58(4);
}
}
ARM void ActorUnk_ov000_020a8bb0::vfunc_74() {}
ARM void ActorUnk_ov000_020a8bb0::vfunc_78() {}
ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a9248() {}
ARM void ActorUnk_ov000_020a8bb0::vfunc_5c() {}
ARM void ActorUnk_ov000_020a8bb0::vfunc_98() {}
ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a94b0() {}
ARM void ActorUnk_ov000_020a8bb0::vfunc_9c() {}
ARM void Actor_Derived1::vfunc_74() {}
ARM void Actor_Derived1::vfunc_78() {}
ARM void Actor_Derived1::func_ov000_020a9248() {}
ARM void Actor_Derived1::vfunc_5c() {}
ARM void Actor_Derived1::vfunc_98(unk32 param1) {}
ARM void Actor_Derived1::func_ov000_020a94b0() {}
ARM void Actor_Derived1::vfunc_9c() {}
ARM unk32 ActorUnk_ov000_020a8bb0::vfunc_a0() {
ARM unk32 Actor_Derived1::vfunc_a0() {
this->GetActorId();
return 1;
}
ARM void ActorUnk_ov000_020a8bb0::vfunc_ac() {}
ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a95d8() {}
ARM void ActorUnk_ov000_020a8bb0::vfunc_a4() {}
ARM void Actor_Derived1::vfunc_ac() {}
ARM void Actor_Derived1::func_ov000_020a95d8() {}
ARM void Actor_Derived1::vfunc_a4() {}
ARM unk32 ActorUnk_ov000_020a8bb0::vfunc_a8() {
ARM unk32 Actor_Derived1::vfunc_a8() {
return 1;
}
ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a9804() {}
ARM void ActorUnk_ov000_020a8bb0::vfunc_20() {}
ARM void Actor_Derived1::func_ov000_020a9804() {}
ARM void Actor_Derived1::vfunc_20() {}
// non-matching
ARM void ActorUnk_ov000_020a8bb0::vfunc_24() {
ARM void Actor_Derived1::vfunc_24() {
if (!data_027e09b8->func_ov000_020732dc(3) || !(this->mUnk_0B0 & 4)) {
this->vfunc_20();
}
@@ -239,7 +239,7 @@ ARM void ActorUnk_ov000_020a8bb0::vfunc_24() {
}
// non-matching
ARM void ActorUnk_ov000_020a8bb0::vfunc_2c(unk32 param1) {
ARM void Actor_Derived1::vfunc_2c(unk32 param1) {
if (this->func_01fff5d0(param1, 0) == 0) {
return;
}
@@ -248,15 +248,15 @@ ARM void ActorUnk_ov000_020a8bb0::vfunc_2c(unk32 param1) {
this->mUnk_0A4.func_01ffc6d4(this->mAngle, &this->mPos);
}
ARM void ActorUnk_ov000_020a8bb0::vfunc_b8() {
ARM void Actor_Derived1::vfunc_b8() {
this->func_ov017_020bf5c4(&this->mPos, 0x666, 0x666, 0x1F, 0);
}
ARM void ActorUnk_ov000_020a8bb0::vfunc_14() {}
ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a9a20() {}
ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a9a34() {}
ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a9a50() {}
ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a9a94() {}
ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a9abc() {}
ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a9ae0() {}
ARM void ActorUnk_ov000_020a8bb0::func_ov000_020a9afc() {}
ARM void Actor_Derived1::vfunc_14() {}
ARM void Actor_Derived1::func_ov000_020a9a20() {}
ARM void Actor_Derived1::func_ov000_020a9a34() {}
ARM void Actor_Derived1::func_ov000_020a9a50() {}
ARM void Actor_Derived1::func_ov000_020a9a94() {}
ARM void Actor_Derived1::func_ov000_020a9abc() {}
ARM void Actor_Derived1::func_ov000_020a9ae0() {}
ARM void Actor_Derived1::func_ov000_020a9afc() {}
+17 -26
View File
@@ -16,8 +16,6 @@ extern "C" u16 func_01ffbbe0(fx32 x, fx32 z);
extern "C" void func_01ffecdc(unk32 param1, Cylinder *param2);
extern "C" bool func_01ffd768(unk32, void *, void *, unk8);
extern "C" void func_ov000_020973f4(void *, void *, u32, void *, int); //! TODO: solve oddity
ARM MapObject::MapObject() {
this->mUnk_10 = NULL;
this->mUnk_16 = -1;
@@ -228,37 +226,30 @@ ARM void MapObject::func_ov000_0209d518(unk32 param1, unk32 param2, unk32 param3
data_027e09b4->func_01fff60c(param1, param2, param3, param4, 0, 0);
}
struct TempStruct {
VecFx32 pos;
u16 param_r2;
s16 extra_s16;
u16 extra_u16;
STRUCT_PAD(0x16, 0x28);
unk32 mUnk_28;
void func_ov000_020975f8();
};
ARM void MapObject::func_ov000_0209d54c(ActorRef *param1, MapObject *thisx, u16 param2, const VecFx32 *pPos, s16 param3,
u16 param4) {
ActorParams params;
// non-matching
ARM void MapObject::func_ov000_0209d54c(void *param1, MapObject *thisx, unk32 param2, VecFx32 *param3, unk32 param4,
unk32 param5) {
TempStruct local_4c;
local_4c.mUnk_28 = 0;
local_4c.func_ov000_020975f8();
local_4c.pos.x = param3->x;
local_4c.pos.y = param3->y;
local_4c.pos.z = param3->z;
local_4c.param_r2 = param4;
local_4c.extra_s16 = param5;
local_4c.extra_u16 = param2;
func_ov000_020973f4(param1, &data_ov000_020b539c_eur, ActorId_EventIcon, &local_4c, 0);
params.mUnk_28 = 0;
params.func_ov000_020975f8();
params.mInitialPos.x = pPos->x;
params.mInitialPos.y = pPos->y;
params.mInitialPos.z = pPos->z;
params.mParams[0] = param2;
params.mParams[1] = param3;
params.mParams[2] = param4;
Actor::func_ov000_020973f4(param1, &data_ov000_020b539c_eur, ActorId_EventIcon, &params, 0);
}
ARM void MapObject::func_ov000_0209d5c8(ActorRef ref) {
if (ref.type_index != 0) {
Actor *pActor = gpActorManager->func_01fff3b4(ref.Get32());
Actor *pActor = gpActorManager->func_01fff3b4(ref);
if (pActor != NULL) {
UNSET_FLAG(pActor->mFlags, ActorFlag_Alive);
pActor->Kill();
}
}
}
+2 -2
View File
@@ -55,8 +55,8 @@ ARM unk32 UnkSystem1_ov000_Base::vfunc_10(u16 *param1) {
return -1;
}
ARM unk32 UnkSystem1_ov000_Base::vfunc_14(void *param1) {
return 1;
ARM bool UnkSystem1_ov000_Base::vfunc_14(FLW1Instr *param1) {
return true;
}
ARM unk32 UnkSystem1_ov000_Base::vfunc_1C(u32 param1, unk32 param2, unk32 param3) {
+1 -1
View File
@@ -12,7 +12,7 @@ THUMB void ItemManager::func_ov001_020bb9f8() {
CourseEntry *pEntry = data_027e09a0->GetCourseEntry(data_027e09a4->mUnk_00.mSceneIndex);
if (pEntry->saveCourseIndex < SaveCourseIndex_Max) {
this->mKeyAmount = gSaveManager.mUnk_000->mUnk_36[pEntry->saveCourseIndex].mKeyAmount;
this->mKeyAmount = gSaveManager.mUnk_000->unk_030[pEntry->saveCourseIndex].keyAmount;
} else {
this->mKeyAmount = 0;
}
@@ -0,0 +1,28 @@
#include "Game/Game.hpp"
#include "Save/SaveManager.hpp"
THUMB_BEGIN
void SaveManager::func_ov001_020ba670() {
this->mUnk_000 = new(HeapIndex_1) SaveManager_00(0);
SaveSlot *pSaveSlot = gGame.mpSaveSlot;
this->mUnk_000->unk_00 = pSaveSlot->mInfoData[0].unk_000;
MI_CpuCopyFast(&pSaveSlot->mInfoData[0].unk_158, &this->mUnk_000->unk_004, sizeof(SaveFile_00000_0000_Data_158));
for (int i = 0; i < ARRAY_LEN(this->mUnk_000->unk_030); i++) {
MI_CpuCopy32(&pSaveSlot->mInfoData[0].unk_184[i], &this->mUnk_000->unk_030[i], sizeof(SaveFile_00000_0000_Data_184));
}
for (int i = 0; i < ARRAY_LEN(this->mUnk_000->unk_330); i++) {
MI_CpuCopy32(&pSaveSlot->mInfoData[0].unk_484[i], &this->mUnk_000->unk_330[i], sizeof(SaveFile_00000_0000_Data_484));
}
MI_CpuCopy32(&pSaveSlot->mInfoData[0].unk_C84, &this->mUnk_000->unk_B30, sizeof(SaveFile_00000_0000_Data_C84));
MI_CpuCopyFast(&pSaveSlot->mInfoData[0].unk_D24, &this->mUnk_000->unk_B40, sizeof(SaveFile_00000_0000_Data_D24));
MI_CpuCopy32(&pSaveSlot->mInfoData[0].unk_D8C, &this->mUnk_000->unk_B68, sizeof(SaveFile_00000_0000_Data_D8C));
MI_CpuCopyFast(&pSaveSlot->mInfoData[0].unk_D4C, &this->mUnk_000->unk_B78, sizeof(SaveFile_00000_0000_Data_D4C));
MI_CpuCopyFast(&pSaveSlot->mInfoData[0].unk_D9C, &this->mUnk_21C, sizeof(SaveFile_00000_0000_Data_D9C));
}
THUMB_END
+1 -1
View File
@@ -47,7 +47,7 @@ ARM Game::Game() :
mpCurrentGameMode(NULL),
createCallback(NULL),
mUnk_08(NULL),
mpSaveFile(NULL),
mpSaveSlot(NULL),
mUnk_14(NULL),
mUnk_18(NULL) {}
+1 -1
View File
@@ -417,7 +417,7 @@ ARM void SaveFile::func_ov019_020d1aac(unk32 param1, const wchar_t *param2) {
awStack_28[8] = L'\0';
wcsncpy(awStack_28, param2, LENGTH_PLAYER_NAME);
MI_CpuCopy16((u16 *) awStack_28, (u16 *) this->mSlots[param1].mInfoData[0].mPlayerName,
MI_CpuCopy16((u16 *) awStack_28, (u16 *) this->mSlots[param1].mInfoData[0].unk_D9C.mPlayerName,
sizeof(wchar_t) * (LENGTH_PLAYER_NAME + 1));
MI_CpuCopy16((u16 *) awStack_28, (u16 *) this->mSlots[param1].mUnk_1D00[0].unk_3C4,
sizeof(wchar_t) * (LENGTH_PLAYER_NAME + 1));
+11 -15
View File
@@ -27,9 +27,9 @@ ARM bool ActorUnkOBPC::vfunc_18(unk32 param1) {
this->mUnk_98 = this->mUnk_5C.mParams[3];
if (!this->func_ov024_020d6f74()) {
this->func_ov024_020d7064(0x00, 0x01);
this->SetState(ActorUnkOBPCState_0, 1);
} else {
this->func_ov024_020d7064(0x01, 0x01);
this->SetState(ActorUnkOBPCState_1, 1);
}
return true;
@@ -44,19 +44,19 @@ ARM bool ActorUnkOBPC::func_ov024_020d6f74(void) {
}
ARM void ActorUnkOBPC::vfunc_20(void) {
switch (this->mUnk_4C) {
switch (this->mState) {
case 0:
if (this->func_ov024_020d7154()) {
if (this->mUnk_5C.mUnk_20 == 0) {
this->func_ov024_020d7064(0x01, 0x00);
this->SetState(ActorUnkOBPCState_1, 0);
} else if (data_ov000_020b504c.func_ov000_0206807c(this->mUnk_5C.mUnk_20, &this->mUnk_9C)) {
this->func_ov024_020d7064(0x01, 0x00);
this->SetState(ActorUnkOBPCState_1, 0);
}
}
break;
case 1:
if (this->mUnk_5C.mParams[2] != 0 && !this->func_ov024_020d7154()) {
this->func_ov024_020d7064(0x00, 0x00);
this->SetState(ActorUnkOBPCState_0, 0);
}
break;
default:
@@ -72,11 +72,11 @@ ARM void ActorUnkOBPC::vfunc_24(void) {
this->vfunc_20();
}
ARM void ActorUnkOBPC::func_ov024_020d7064(s16 param1, unk32 param2) {
this->mUnk_4C = param1;
ARM void ActorUnkOBPC::SetState(ActorState state, int param2) {
this->mState = state;
switch (this->mUnk_4C) {
case 0:
switch (this->mState) {
case ActorUnkOBPCState_0:
if (this->mUnk_5C.mParams[2] == 0 || this->mUnk_5C.mParams[2] == 2) {
break;
}
@@ -93,7 +93,7 @@ ARM void ActorUnkOBPC::func_ov024_020d7064(s16 param1, unk32 param2) {
break;
}
break;
case 1:
case ActorUnkOBPCState_1:
switch (this->mUnk_98) {
case 1:
this->func_ov000_02098a88(0, 0);
@@ -173,7 +173,3 @@ ARM bool ActorUnkOBPC::func_ov024_020d7154(void) {
sp10.y = 0;
return temp_r5->func_ov000_020802ec(temp_r4, &sp10);
}
ARM ActorUnkOBPC::~ActorUnkOBPC() {}
ARM ActorProfileUnkOBPC::~ActorProfileUnkOBPC() {}
@@ -1,4 +1,4 @@
#include "Actor/ActorUnk_ov000_020a8bb0.hpp"
#include "Actor/Actor_Derived1.hpp"
#include "Unknown/UnkStruct_027e0960.hpp"
struct UnkFuncStruct1 {
@@ -16,7 +16,7 @@ bool data_ov024_020d86b4 = false;
THUMB_BEGIN
ActorUnk_ov000_020a8bb0_EC::ActorUnk_ov000_020a8bb0_EC() {
Actor_Derived1_EC::Actor_Derived1_EC() {
this->mUnk_00 = 0;
this->mUnk_04 = 0;
this->mUnk_05 = 0;
@@ -30,17 +30,17 @@ ActorUnk_ov000_020a8bb0_EC::ActorUnk_ov000_020a8bb0_EC() {
THUMB_END
void ActorUnk_ov000_020a8bb0_EC::func_ov024_020d6680(const VecFx32 *param1, u8 *param2) {
void Actor_Derived1_EC::func_ov024_020d6680(const VecFx32 *param1, u8 *param2) {
this->mUnk_00 = data_027e0960->func_ov000_0205a390(*param2);
VecFx32_Copy(param1, &this->mUnk_0C);
}
void ActorUnk_ov000_020a8bb0_EC::func_ov024_020d66c0(const VecFx32 *param1, unk32 param2) {
void Actor_Derived1_EC::func_ov024_020d66c0(const VecFx32 *param1, unk32 param2) {
this->mUnk_00 = data_027e0960->func_ov000_0205a3fc(*param1, param2);
VecFx32_Copy(param1, &this->mUnk_0C);
}
bool ActorUnk_ov000_020a8bb0_EC::func_ov024_020d6704() {
bool Actor_Derived1_EC::func_ov024_020d6704() {
if (this->mUnk_08 & 0x10 || this->mUnk_08 & 0x08 || this->mUnk_08 & 0x04) {
return true;
}
@@ -48,7 +48,7 @@ bool ActorUnk_ov000_020a8bb0_EC::func_ov024_020d6704() {
return false;
}
void ActorUnk_ov000_020a8bb0_EC::func_ov024_020d6730() {
void Actor_Derived1_EC::func_ov024_020d6730() {
BOOL var_r0;
this->mUnk_08 |= 0x02;
@@ -166,8 +166,8 @@ void ActorUnk_ov000_020a8bb0_EC::func_ov024_020d6730() {
}
}
u16 *ActorUnk_ov000_020a8bb0_EC::func_ov024_020d69d8(VecFx32 *pPos, s16 *pAngle, VecFx32 *pVel, unk32 param4, s16 param5,
unk32 param6) {
u16 *Actor_Derived1_EC::func_ov024_020d69d8(VecFx32 *pPos, s16 *pAngle, VecFx32 *pVel, unk32 param4, s16 param5,
unk32 param6) {
VecFx32 sp1C;
VecFx32 sp10;
VecFx32 sp4;
@@ -215,8 +215,8 @@ u16 *ActorUnk_ov000_020a8bb0_EC::func_ov024_020d69d8(VecFx32 *pPos, s16 *pAngle,
return &this->mUnk_08;
}
u16 *ActorUnk_ov000_020a8bb0_EC::func_ov024_020d6b7c(VecFx32 *pPos, s16 *pAngle, VecFx32 *pVel, unk32 param4, s16 param5,
unk32 param6) {
u16 *Actor_Derived1_EC::func_ov024_020d6b7c(VecFx32 *pPos, s16 *pAngle, VecFx32 *pVel, unk32 param4, s16 param5,
unk32 param6) {
VecFx32 sp28;
VecFx32 sp1C;
VecFx32 sp10;
@@ -270,7 +270,7 @@ u16 *ActorUnk_ov000_020a8bb0_EC::func_ov024_020d6b7c(VecFx32 *pPos, s16 *pAngle,
return &this->mUnk_08;
}
u16 *ActorUnk_ov000_020a8bb0_EC::func_ov024_020d6d80(VecFx32 *pPos, VecFx32 *pVel) {
u16 *Actor_Derived1_EC::func_ov024_020d6d80(VecFx32 *pPos, VecFx32 *pVel) {
VecFx32 sp18;
VecFx32 spC;
VecFx32 sp0;
@@ -561,7 +561,7 @@ void AdventureModeManager_1B8::func_ov024_020d1364() {
}
gSaveManager.func_ov017_020c3040(this->mUnk_28, this->mUnk_24);
SET_FLAG(gSaveManager.mUnk_000->mUnk_B30, this->mUnk_24);
SET_FLAG(gSaveManager.mUnk_000->unk_B30.unk_00, this->mUnk_24);
}
void AdventureModeManager_1B8::func_ov024_020d13cc(s32 param1) {
@@ -576,7 +576,7 @@ void AdventureModeManager_1B8::func_ov024_020d13cc(s32 param1) {
return;
}
if (GET_FLAG(gSaveManager.mUnk_000->mUnk_B30, this->mUnk_24)) {
if (GET_FLAG(gSaveManager.mUnk_000->unk_B30.unk_00, this->mUnk_24)) {
UnkDataStruct2 sp4(0x2290);
void *unk_00 = sp4.unk_00;
+1 -1
View File
@@ -431,7 +431,7 @@ void UICounter_Health::func_ov024_020cdaac() {
//! TODO: regalloc fix
Vec2s *ptr2 = &sp4;
UnkSubStruct19 *ptr3 = &this->mUnk_3E4[1];
CellAnimObject *ptr3 = &this->mUnk_3E4[1];
switch (this->GetIterValue(var_r8)) {
case 0:
+45 -4
View File
@@ -1,8 +1,11 @@
//! TODO: This file was generated automatically and might contain errors
#include "Actor/ActorUnkRB1T.hpp"
#include "Save/SaveManager.hpp"
#include "System/SysNew.hpp"
extern UnkActorDataStruct1 data_ov026_02137edc;
ARM DECL_PROFILE(ActorProfileUnkRB1T);
ARM Actor *ActorProfileUnkRB1T::Create() {
@@ -12,13 +15,45 @@ ARM Actor *ActorProfileUnkRB1T::Create() {
ARM ActorProfileUnkRB1T::ActorProfileUnkRB1T() :
ActorProfile_Derived1(ActorId_RB1T) {}
ARM ActorUnkRB1T::ActorUnkRB1T() {}
ARM ActorUnkRB1T::ActorUnkRB1T() :
Actor_Derived1(&this->mUnk_20C, this->mUnk_120),
mUnk_20C(0) {}
ARM void ActorUnkRB1T::func_ov026_0211e3cc(void) {}
ARM void ActorUnkRB1T::func_ov026_0211e3e0(void) {}
bool ActorUnkRB1T::func_ov026_0211e3e0(int param1) {
if (GET_FLAG(gSaveManager.GetUnk000()->unk_B78.rabbitFlags, this->mUnk_5C.mParams[1])) {
this->Kill();
return true;
}
this->Actor_Derived1::vfunc_18(param1);
this->mUnk_0E4 = ActorUnkRB1T::func_ov026_021208a0;
int result = this->func_ov026_0211e6cc();
func_ov000_02099ddc(&this->mUnk_300, data_ov026_02137edc, 0x1000, result << 12);
this->func_ov026_0211e554();
this->mUnk_36C = 0;
this->mUnk_36D = 0;
this->mUnk_36E = 0;
this->mUnk_36F = 0;
this->mUnk_370 = 0;
this->mUnk_371 = 0;
this->mUnk_372 = 0;
this->mUnk_373 = 0;
this->mUnk_374 = 0;
this->mUnk_375 = 0;
this->mUnk_376 = 0;
this->mUnk_377 = 0;
return true;
}
ARM void ActorUnkRB1T::func_ov026_0211e4c8(void) {}
ARM void ActorUnkRB1T::func_ov026_0211e554(void) {}
ARM void ActorUnkRB1T::func_ov026_0211e6cc(void) {}
ARM unk32 ActorUnkRB1T::func_ov026_0211e6cc(void) {}
ARM void ActorUnkRB1T::func_ov026_0211e6e4(void) {}
ARM void ActorUnkRB1T::func_ov026_0211e6f0(void) {}
ARM void ActorUnkRB1T::func_ov026_0211e748(void) {}
@@ -39,7 +74,13 @@ ARM void ActorUnkRB1T::func_ov026_0211f1a0(void) {}
ARM void ActorUnkRB1T::func_ov026_0211f20c(void) {}
ARM void ActorUnkRB1T::func_ov026_0211f28c(void) {}
ARM void ActorUnkRB1T::func_ov026_0211f2f0(void) {}
ARM void ActorUnkRB1T::func_ov026_0211f394(void) {}
ARM void ActorUnkRB1T::func_ov026_0211f394(void) {
SET_FLAG(gSaveManager.GetUnk000()->unk_B78.rabbitFlags, this->mUnk_5C.mParams[1]);
this->vfunc_98(4);
this->mUnk_280 = 0;
}
ARM void ActorUnkRB1T::func_ov026_0211f3e8(void) {}
ARM void ActorUnkRB1T::func_ov026_0211f430(void) {}
ARM void ActorUnkRB1T::func_ov026_0211f470(void) {}
+100
View File
@@ -0,0 +1,100 @@
#include "Unknown/Common.hpp"
#include "math.hpp"
#include "types.h"
static TrainSpeedPreset data_ov026_02135fec[TrainPresetType_Max] = {
// TrainPresetType_Default
{
.reverse = {.speed = -143, .unk_04 = 50},
.stop = {.speed = 0, .unk_04 = 0},
.slow = {.speed = 115, .unk_04 = 50},
.fast = {.speed = 193, .unk_04 = 20},
.unk_20 = 0,
.unk_24 = 12,
.unk_28 = 0,
.unk_2C = 50,
.unk_30 = 143,
.unk_34 = 5,
.unk_38 = 30,
.unk_3C = FLOAT_TO_FX32(225.0f),
},
// TrainPresetType_DarkRealmNormal
{
.reverse = {.speed = -340, .unk_04 = 120},
.stop = {.speed = 0, .unk_04 = 0},
.slow = {.speed = 266, .unk_04 = 120},
.fast = {.speed = 496, .unk_04 = 40},
.unk_20 = 0,
.unk_24 = 50,
.unk_28 = 0,
.unk_2C = 120,
.unk_30 = 377,
.unk_34 = 5,
.unk_38 = 30,
.unk_3C = FLOAT_TO_FX32(225.0f),
},
// TrainPresetType_DarkRealmLightTear
{
.reverse = {.speed = -340, .unk_04 = 250},
.stop = {.speed = 193, .unk_04 = 250},
.slow = {.speed = 266, .unk_04 = 250},
.fast = {.speed = 496, .unk_04 = 80},
.unk_20 = 193,
.unk_24 = 600,
.unk_28 = 0,
.unk_2C = 800,
.unk_30 = 0,
.unk_34 = 0,
.unk_38 = 0,
.unk_3C = FLOAT_TO_FX32(225.0f),
},
// TrainPresetType_DarkRealmLightTearRope
{
.reverse = {.speed = -1229, .unk_04 = 3000},
.stop = {.speed = 1229, .unk_04 = 3000},
.slow = {.speed = 1229, .unk_04 = 3000},
.fast = {.speed = 1229, .unk_04 = 3000},
.unk_20 = 1229,
.unk_24 = 600,
.unk_28 = 0,
.unk_2C = 0,
.unk_30 = 0,
.unk_34 = 0,
.unk_38 = 0,
.unk_3C = FLOAT_TO_FX32(225.0f),
},
// TrainPresetType_DarkRealmFight
{
.reverse = {.speed = 152, .unk_04 = 61},
.stop = {.speed = 152, .unk_04 = 61},
.slow = {.speed = 172, .unk_04 = 61},
.fast = {.speed = 193, .unk_04 = 16},
.unk_20 = 152,
.unk_24 = 16,
.unk_28 = 152,
.unk_2C = 61,
.unk_30 = 0,
.unk_34 = 0,
.unk_38 = 30,
.unk_3C = FLOAT_TO_FX32(81.0f),
},
// TrainPresetType_5
{
.reverse = {.speed = -143, .unk_04 = 50},
.stop = {.speed = 0, .unk_04 = 0},
.slow = {.speed = 115, .unk_04 = 50},
.fast = {.speed = 193, .unk_04 = 20},
.unk_20 = 0,
.unk_24 = 12,
.unk_28 = 0,
.unk_2C = 50,
.unk_30 = 143,
.unk_34 = 5,
.unk_38 = 30,
.unk_3C = FLOAT_TO_FX32(81.0f),
},
};
const TrainSpeedPreset *func_ov026_02102924(int index) {
return &data_ov026_02135fec[index];
}
+44 -55
View File
@@ -4,20 +4,6 @@
#include "Unknown/UnkStruct_027e0cd8.hpp"
#include "Unknown/UnkStruct_027e0ce0.hpp"
class UnkStruct_ov031_02113d64 {
public:
/* 00 */ unk32 mUnk_00;
/* 04 */ VecFx32 mUnk_04;
UnkStruct_ov031_02113d64(unk32 param1, fx32 x, fx32 y, fx32 z) {
mUnk_00 = param1;
mUnk_04.x = x;
mUnk_04.y = y;
mUnk_04.z = z;
}
};
const UnkStruct_ov031_02113d64 data_ov031_02113d64(0, 0x800, 0, 0x800);
typedef struct {
unk16 mUnk_00;
unk16 mUnk_02;
@@ -49,6 +35,8 @@ extern "C" void func_ov000_02098838();
extern "C" void func_ov017_020bf99c(void);
extern "C" void func_ov017_02097bec(Actor_9c *);
const Cylinder data_ov031_02113d64(0x800);
ARM DECL_PROFILE(ActorProfileHeart);
ARM Actor *ActorProfileHeart::Create() {
@@ -107,9 +95,13 @@ ARM bool ActorHeart::vfunc_18(unk32 param1) {
return true;
}
static PTMF<ActorHeart> data_ov031_02113d74[] = {
ActorHeart::func_ov031_020ef2f8, ActorHeart::func_ov031_020ef334, ActorHeart::func_ov031_020ef3a0,
ActorHeart::func_ov031_020ef3d0, ActorHeart::func_ov031_020ef444, ActorHeart::func_ov031_020ef458,
static PTMF<ActorHeart> data_ov031_02113d74[ActorHeartState_Max] = {
ActorHeart::func_ov031_020ef2f8, // ActorHeartState_0
ActorHeart::func_ov031_020ef334, // ActorHeartState_1
ActorHeart::func_ov031_020ef3a0, // ActorHeartState_2
ActorHeart::func_ov031_020ef3d0, // ActorHeartState_3
ActorHeart::func_ov031_020ef444, // ActorHeartState_4
ActorHeart::func_ov031_020ef458, // ActorHeartState_5
};
// non-matching
@@ -136,7 +128,7 @@ void ActorHeart::vfunc_20() {
this->mUnk_C8.mUnk_12 = stack.mUnk_06; // da
this->mUnk_3C = &this->mUnk_98;
CALL_PTMF(PTMF<ActorHeart>, data_ov031_02113d74[this->mUnk_4C]);
CALL_PTMF(PTMF<ActorHeart>, data_ov031_02113d74[this->mState]);
bool t = true;
if (this->mUnk_94 < this->mUnk_96) {
@@ -149,7 +141,7 @@ void ActorHeart::vfunc_20() {
if (t) {
this->func_ov000_020989e0();
if (this->mUnk_4C == 1) {
if (this->mState == ActorHeartState_1) {
func_ov000_0208bc00(data_027e0ce0, 0, &stack.mUnk_08);
func_01ffce1c(&stack.mUnk_18, &stack.mUnk_08);
@@ -195,7 +187,7 @@ void ActorHeart::vfunc_20() {
this->mPrevPos.z = this->mPos.z;
VecFx32_Add(&this->mPos, &this->mVel, &this->mPos);
if (this->mUnk_4C != 0x3) {
if (this->mState != ActorHeartState_3) {
this->func_ov000_02098910(0, 0x10);
}
if (this->mUnk_46 & 0x3) {
@@ -210,26 +202,30 @@ void ActorHeart::vfunc_20() {
extern unk32 data_ov000_020aecf8;
static PTMF<ActorHeart> data_ov031_02113da4[] = {
ActorHeart::func_ov031_020ef2ec, ActorHeart::func_ov031_020ef320, ActorHeart::func_ov031_020ef35c,
ActorHeart::func_ov031_020ef3b8, ActorHeart::func_ov031_020ef430, ActorHeart::func_ov031_020ef448,
static PTMF<ActorHeart> data_ov031_02113da4[ActorHeartState_Max] = {
ActorHeart::func_ov031_020ef2ec, // ActorHeartState_0
ActorHeart::func_ov031_020ef320, // ActorHeartState_1
ActorHeart::func_ov031_020ef35c, // ActorHeartState_2
ActorHeart::func_ov031_020ef3b8, // ActorHeartState_3
ActorHeart::func_ov031_020ef430, // ActorHeartState_4
ActorHeart::func_ov031_020ef448, // ActorHeartState_5
};
ARM void ActorHeart::func_ov031_020ef1b4(unk16 param_2) {
this->mUnk_4C = param_2;
ARM void ActorHeart::SetState(ActorState state) {
this->mState = state;
this->mUnk_2C = data_ov000_020aecf8;
this->mUnk_44 = 0x9C;
CALL_PTMF(PTMF<ActorHeart>, data_ov031_02113da4[this->mUnk_4C]);
CALL_PTMF(PTMF<ActorHeart>, data_ov031_02113da4[this->mState]);
}
ARM void ActorHeart::func_ov031_020ef208() {
bool var2 = true;
bool var1 = true;
if (this->mUnk_4C != 0x3 && this->mUnk_4C != 0x4) {
if (this->mState != ActorHeartState_3 && this->mState != ActorHeartState_4) {
var1 = false;
}
if (!var1) {
if (this->mUnk_4C != 0x5) {
if (this->mState != ActorHeartState_5) {
var2 = false;
}
}
@@ -269,7 +265,7 @@ ARM void ActorHeart::func_ov031_020ef2f8() {
if (this->mVel.y > 0) {
return;
}
this->func_ov031_020ef1b4(0x01);
this->SetState(ActorHeartState_1);
}
ARM void ActorHeart::func_ov031_020ef320() {
@@ -282,7 +278,7 @@ ARM void ActorHeart::func_ov031_020ef334() {
if ((this->mUnk_46 & 0x3) == 0) {
return;
}
this->func_ov031_020ef1b4(0x02);
this->SetState(ActorHeartState_2);
}
ARM void ActorHeart::func_ov031_020ef35c() {
@@ -318,7 +314,7 @@ ARM void ActorHeart::func_ov031_020ef3d0() {
this->mVel.z = FLOAT_TO_FX32(0.0);
this->mUnk_9C |= 0x1000;
this->func_ov031_020ef1b4(0x01);
this->SetState(ActorHeartState_1);
}
ARM void ActorHeart::func_ov031_020ef430() {
@@ -327,9 +323,7 @@ ARM void ActorHeart::func_ov031_020ef430() {
this->mVel.z = FLOAT_TO_FX32(0.0);
}
ARM void ActorHeart::func_ov031_020ef444() {
return;
}
ARM void ActorHeart::func_ov031_020ef444() {}
ARM void ActorHeart::func_ov031_020ef448() {
this->mVel.x = FLOAT_TO_FX32(0.0);
@@ -345,7 +339,7 @@ ARM void ActorHeart::func_ov031_020ef458() {
// which actor is this ?
UnkActor_02ef458 *actor = (UnkActor_02ef458 *) gpActorManager->func_01fff3b4(this->mUnk_C4);
if (actor == nullptr) {
this->func_ov031_020ef1b4(0x01);
this->SetState(ActorHeartState_1);
return;
}
VecFx32_Copy(&actor->mUnk_E8, &this->mPos);
@@ -353,7 +347,7 @@ ARM void ActorHeart::func_ov031_020ef458() {
ARM void ActorHeart::func_ov031_020ef4a8() {
if (this->mUnk_5C.mUnk_24 >= 0) {
this->func_ov031_020ef1b4(2);
this->SetState(ActorHeartState_2);
return;
}
@@ -361,19 +355,19 @@ ARM void ActorHeart::func_ov031_020ef4a8() {
case 0:
this->mUnk_52 = 0xB4;
this->mUnk_50 = 0x00;
this->func_ov031_020ef1b4(2);
this->SetState(ActorHeartState_2);
break;
case 1:
this->mUnk_52 = 0x1E0;
this->mUnk_50 = 0x00;
this->func_ov031_020ef1b4(0);
this->SetState(ActorHeartState_0);
return;
default:
this->mUnk_52 = 0x1E0;
this->mUnk_50 = 0x00;
this->func_ov031_020ef1b4(0);
this->SetState(ActorHeartState_0);
break;
}
}
@@ -384,19 +378,16 @@ ARM void ActorHeart::func_ov031_020ef528() {
this->func_ov000_020984d0();
}
// non-matching
ARM void ActorHeart::func_ov031_020ef570() {
func_ov000_02098838();
this->func_ov000_02098838();
this->mUnk_B8 += 0x666;
this->mVel.x = MUL_FX32(SIN((u16) this->mUnk_B8), 0x40);
this->mVel.z = FLOAT_TO_FX32(0.0);
s16 sin_value = SIN((u16) this->mUnk_B8);
s32 value = ((sin_value >> 0x1F) << 6 | sin_value >> 0x1A) + (sin_value * 0x40 > ~0x800);
this->mVel.x = ROUND_FX32(sin_value * 0x40) + value;
if (this->mVel.y <= FLOAT_TO_FX32(-0.005)) {
this->mVel.y = FLOAT_TO_FX32(-0.005);
if (this->mVel.y <= FLOAT_TO_FX32(-0.005) - 1) {
this->mVel.y = FLOAT_TO_FX32(-0.005) - 1;
}
}
@@ -440,8 +431,6 @@ ARM void ActorHeart::func_ov031_020ef698() {
}
}
#define GET_ACTORHEART(this) reinterpret_cast<ActorHeart *>((this)->mUnk_20)
ARM ActorHeart_c4::ActorHeart_c4(Actor *param1) :
Actor_c4(param1) {
this->mUnk_20 = param1;
@@ -450,25 +439,25 @@ ARM ActorHeart_c4::ActorHeart_c4(Actor *param1) :
ARM bool ActorHeart_c4::vfunc_00(ActorRef ref, unk32 param_3) {
if (param_3 != 0) {
ActorHeart *pHeart = GET_ACTORHEART(this);
ActorHeart *pHeart = this->GetActorPtr<ActorHeart>();
pHeart->mUnk_C4 = ref;
pHeart->func_ov031_020ef1b4(0x04);
pHeart->SetState(ActorHeartState_4);
}
return this->Actor_c4::vfunc_00(ref, param_3);
}
ARM void ActorHeart_c4::vfunc_04() {
GET_ACTORHEART(this)->func_ov031_020ef1b4(0x05);
this->GetActorPtr<ActorHeart>()->SetState(ActorHeartState_5);
this->Actor_c4::vfunc_04();
}
ARM void ActorHeart_c4::vfunc_0c(unk32 param1) {
GET_ACTORHEART(this)->func_ov031_020ef1b4(0x01);
this->GetActorPtr<ActorHeart>()->SetState(ActorHeartState_1);
this->Actor_c4::vfunc_0c(param1);
}
ARM void ActorHeart_c4::vfunc_08() {
GET_ACTORHEART(this)->func_ov031_020ef528();
this->GetActorPtr<ActorHeart>()->func_ov031_020ef528();
this->Actor_c4::vfunc_08();
}
+52 -54
View File
@@ -180,7 +180,7 @@ ARM bool ActorItemDrop::vfunc_18(unk32 param1) {
this->mUnk_52 = FLOAT_TO_FX32(0.1173f);
this->mUnk_50 = FLOAT_TO_FX32(0.0f);
this->func_ov031_020fa424(ActorDroppedItemState_0);
this->SetState(ActorItemDropState_0);
return true;
}
@@ -189,25 +189,25 @@ ARM void ActorItemDrop::vfunc_20() {
}
ARM void ActorItemDrop::vfunc_24() {
if (this->mUnk_4C == ActorDroppedItemState_6) {
if (this->mState == ActorItemDropState_6) {
this->func_ov031_020fa260();
}
}
static PTMF<ActorItemDrop> data_ov031_02114bb0[ActorDroppedItemState_Max] = {
ActorItemDrop::func_ov031_020fa46c, // ActorDroppedItemState_0
ActorItemDrop::func_ov031_020fa4a0, // ActorDroppedItemState_1
ActorItemDrop::func_ov031_020fa568, // ActorDroppedItemState_2
ActorItemDrop::func_ov031_020fa5f0, // ActorDroppedItemState_3
ActorItemDrop::func_ov031_020fa664, // ActorDroppedItemState_4
ActorItemDrop::func_ov031_020fa678, // ActorDroppedItemState_5
ActorItemDrop::func_ov031_020fa72c, // ActorDroppedItemState_6
static PTMF<ActorItemDrop> data_ov031_02114bb0[ActorItemDropState_Max] = {
ActorItemDrop::func_ov031_020fa46c, // ActorItemDropState_0
ActorItemDrop::func_ov031_020fa4a0, // ActorItemDropState_1
ActorItemDrop::func_ov031_020fa568, // ActorItemDropState_2
ActorItemDrop::func_ov031_020fa5f0, // ActorItemDropState_3
ActorItemDrop::func_ov031_020fa664, // ActorItemDropState_4
ActorItemDrop::func_ov031_020fa678, // ActorItemDropState_5
ActorItemDrop::func_ov031_020fa72c, // ActorItemDropState_6
};
ARM void ActorItemDrop::func_ov031_020fa260() {
this->mUnk_3C = &this->mUnk_B4;
CALL_PTMF(PTMF<ActorItemDrop>, data_ov031_02114bb0[this->mUnk_4C]);
CALL_PTMF(PTMF<ActorItemDrop>, data_ov031_02114bb0[this->mState]);
if (this->IsTimerOut()) {
this->func_ov000_020989e0();
@@ -225,16 +225,16 @@ ARM void ActorItemDrop::func_ov031_020fa260() {
if (var_r1_3 || (this->mUnk_C0.type_index == 0x100 && this->mUnk_C0.unk_id == 1 &&
data_027e0ce0->func_01fff1e0())) {
this->func_ov031_020fa424(ActorDroppedItemState_6);
this->SetState(ActorItemDropState_6);
}
} else if (this->mUnk_C0.type_index & 0x100) {
this->func_ov031_020fa424(ActorDroppedItemState_6);
this->SetState(ActorItemDropState_6);
}
break;
case 12:
this->mUnk_DC = this->mUnk_C0;
this->mUnk_B8 &= ~0x1000;
this->func_ov031_020fa424(ActorDroppedItemState_3);
this->SetState(ActorItemDropState_3);
break;
default:
break;
@@ -242,14 +242,14 @@ ARM void ActorItemDrop::func_ov031_020fa260() {
}
}
if (this->mUnk_5C.mUnk_24 < 0 && this->mUnk_4C != ActorDroppedItemState_6) {
if (this->mUnk_5C.mUnk_24 < 0 && this->mState != ActorItemDropState_6) {
this->func_ov031_020fa900();
}
VecFx32_Copy(&this->mPos, &this->mPrevPos);
VecFx32_Add(&this->mPos, &this->mVel, &this->mPos);
if (this->mUnk_4C != ActorDroppedItemState_3) {
if (this->mState != ActorItemDropState_3) {
this->func_ov000_02098b8c(0x0, 0x0);
}
@@ -263,26 +263,26 @@ ARM void ActorItemDrop::func_ov031_020fa260() {
this->mUnk_10C.z = FLOAT_TO_FX32(0.0f);
}
static PTMF<ActorItemDrop> data_ov031_02114be8[ActorDroppedItemState_Max] = {
ActorItemDrop::func_ov031_020fa468, // ActorDroppedItemState_0
ActorItemDrop::func_ov031_020fa494, // ActorDroppedItemState_1
ActorItemDrop::func_ov031_020fa524, // ActorDroppedItemState_2
ActorItemDrop::func_ov031_020fa5d8, // ActorDroppedItemState_3
ActorItemDrop::func_ov031_020fa650, // ActorDroppedItemState_4
ActorItemDrop::func_ov031_020fa668, // ActorDroppedItemState_5
ActorItemDrop::func_ov031_020fa6c8, // ActorDroppedItemState_6
static PTMF<ActorItemDrop> data_ov031_02114be8[ActorItemDropState_Max] = {
ActorItemDrop::func_ov031_020fa468, // ActorItemDropState_0
ActorItemDrop::func_ov031_020fa494, // ActorItemDropState_1
ActorItemDrop::func_ov031_020fa524, // ActorItemDropState_2
ActorItemDrop::func_ov031_020fa5d8, // ActorItemDropState_3
ActorItemDrop::func_ov031_020fa650, // ActorItemDropState_4
ActorItemDrop::func_ov031_020fa668, // ActorItemDropState_5
ActorItemDrop::func_ov031_020fa6c8, // ActorItemDropState_6
};
ARM void ActorItemDrop::func_ov031_020fa424(ActorState state) {
ARM void ActorItemDrop::SetState(ActorState state) {
#if IS_JP
if (this->mUnk_4C == ActorDroppedItemState_6 && state == ActorDroppedItemState_6) {
if (this->mState == ActorItemDropState_6 && state == ActorItemDropState_6) {
return;
}
#endif
this->mUnk_4C = state;
this->mState = state;
this->mUnk_44 = 0x9C;
CALL_PTMF(PTMF<ActorItemDrop>, data_ov031_02114be8[this->mUnk_4C]);
CALL_PTMF(PTMF<ActorItemDrop>, data_ov031_02114be8[this->mState]);
}
ARM void ActorItemDrop::func_ov031_020fa468() {}
@@ -294,7 +294,7 @@ ARM void ActorItemDrop::func_ov031_020fa46c() {
return;
}
this->func_ov031_020fa424(ActorDroppedItemState_1);
this->SetState(ActorItemDropState_1);
}
ARM void ActorItemDrop::func_ov031_020fa494() {
@@ -317,7 +317,7 @@ ARM void ActorItemDrop::func_ov031_020fa4a0() {
return;
}
this->func_ov031_020fa424(ActorDroppedItemState_2);
this->SetState(ActorItemDropState_2);
}
ARM void ActorItemDrop::func_ov031_020fa524() {
@@ -374,7 +374,7 @@ ARM void ActorItemDrop::func_ov031_020fa5f0() {
this->mVel.y = FLOAT_TO_FX32(0.0f);
this->mVel.z = FLOAT_TO_FX32(0.0f);
this->mUnk_B8 |= 0x1000;
this->func_ov031_020fa424(ActorDroppedItemState_1);
this->SetState(ActorItemDropState_1);
}
}
@@ -402,7 +402,7 @@ ARM void ActorItemDrop::func_ov031_020fa678() {
UnkActor_ov031_020fa678 *actor = (UnkActor_ov031_020fa678 *) gpActorManager->func_01fff3b4(this->mUnk_E0);
if (actor == NULL) {
this->func_ov031_020fa424(ActorDroppedItemState_1);
this->SetState(ActorItemDropState_1);
return;
}
@@ -410,13 +410,13 @@ ARM void ActorItemDrop::func_ov031_020fa678() {
}
ARM void ActorItemDrop::func_ov031_020fa6c8() {
this->mUnk_52 = FLOAT_TO_FX32(15.9998f);
this->mUnk_50 = FLOAT_TO_FX32(0.0f);
this->mVel.x = FLOAT_TO_FX32(0.0f);
this->mVel.y = FLOAT_TO_FX32(0.0f);
this->mVel.z = FLOAT_TO_FX32(0.0f);
this->mUnk_4A = 0x0;
this->mUnk_44 = 0x0;
this->mUnk_52 = FLOAT_TO_FX32(15.9998f);
this->mUnk_50 = FLOAT_TO_FX32(0.0f);
this->mVel.x = FLOAT_TO_FX32(0.0f);
this->mVel.y = FLOAT_TO_FX32(0.0f);
this->mVel.z = FLOAT_TO_FX32(0.0f);
this->mUnk_4A[0] = 0x0;
this->mUnk_44 = 0x0;
this->mUnk_B4.func_ov000_02097bec();
UNSET_FLAG(this->mFlags, ActorFlag_Visible);
@@ -493,15 +493,15 @@ ARM void ActorItemDrop::func_ov031_020fa900() {
bool var_r3 = true;
bool var_ip = true;
if (this->mUnk_4C != ActorDroppedItemState_3 && this->mUnk_4C != ActorDroppedItemState_4) {
if (this->mState != ActorItemDropState_3 && this->mState != ActorItemDropState_4) {
var_ip = false;
}
if (!var_ip && this->mUnk_4C != ActorDroppedItemState_5) {
if (!var_ip && this->mState != ActorItemDropState_5) {
var_r3 = false;
}
if (!var_r3 && this->mUnk_4C != ActorDroppedItemState_6) {
if (!var_r3 && this->mState != ActorItemDropState_6) {
var_r2 = false;
}
@@ -526,36 +526,34 @@ ARM void ActorItemDrop::func_ov031_020fa900() {
}
}
ARM ActorDroppedItem_c4::ActorDroppedItem_c4(Actor *param_1) :
ARM ActorItemDrop_c4::ActorItemDrop_c4(Actor *param_1) :
Actor_c4(param_1) {
this->mUnk_20 = param_1;
this->mUnk_04 = 0x1;
}
#define GET_ACTOR_DROPPED_ITEM(pActor) ((ActorItemDrop *) (pActor))
ARM bool ActorDroppedItem_c4::vfunc_00(ActorRef ref, unk32 param_2) {
ARM bool ActorItemDrop_c4::vfunc_00(ActorRef ref, unk32 param_2) {
if (param_2 != 0) {
ActorItemDrop *actorDroppedItem = GET_ACTOR_DROPPED_ITEM(this->mUnk_20);
ActorItemDrop *actorDroppedItem = this->GetActorPtr<ActorItemDrop>();
actorDroppedItem->mUnk_E0 = ref;
actorDroppedItem->func_ov031_020fa424(ActorDroppedItemState_4);
actorDroppedItem->SetState(ActorItemDropState_4);
}
return Actor_c4::vfunc_00(ref, param_2);
}
ARM void ActorDroppedItem_c4::vfunc_04() {
GET_ACTOR_DROPPED_ITEM(this->mUnk_20)->func_ov031_020fa424(ActorDroppedItemState_5);
ARM void ActorItemDrop_c4::vfunc_04() {
this->GetActorPtr<ActorItemDrop>()->SetState(ActorItemDropState_5);
Actor_c4::vfunc_04();
}
ARM void ActorDroppedItem_c4::vfunc_0c(unk32 param_1) {
GET_ACTOR_DROPPED_ITEM(this->mUnk_20)->func_ov031_020fa424(ActorDroppedItemState_1);
ARM void ActorItemDrop_c4::vfunc_0c(unk32 param_1) {
this->GetActorPtr<ActorItemDrop>()->SetState(ActorItemDropState_1);
Actor_c4::vfunc_0c(param_1);
}
ARM void ActorDroppedItem_c4::vfunc_08() {
GET_ACTOR_DROPPED_ITEM(this->mUnk_20)->func_ov031_020fa424(ActorDroppedItemState_6);
ARM void ActorItemDrop_c4::vfunc_08() {
this->GetActorPtr<ActorItemDrop>()->SetState(ActorItemDropState_6);
Actor_c4::vfunc_08();
}
+57 -94
View File
@@ -78,9 +78,9 @@ ARM bool ActorRupee::vfunc_18(unk32 param1) {
}
if (this->mUnk_5C.mParams[1] == 0) {
this->func_ov031_020e9904(3);
this->SetState(ActorRupeeState_3);
} else {
this->func_ov031_020e9904(10);
this->SetState(ActorRupeeState_10);
}
return true;
@@ -97,7 +97,7 @@ ARM bool ActorRupee::vfunc_18(unk32 param1) {
vel.z = 0;
VecFx32_Copy(&vel, &this->mVel);
}
this->func_ov031_020e9904(0);
this->SetState(ActorRupeeState_0);
break;
case 1:
@@ -117,7 +117,7 @@ ARM bool ActorRupee::vfunc_18(unk32 param1) {
VecFx32_Copy(&vel, &this->mVel);
}
this->func_ov031_020e9904(0);
this->SetState(ActorRupeeState_0);
break;
case 2:
@@ -132,14 +132,14 @@ ARM bool ActorRupee::vfunc_18(unk32 param1) {
this->mVel.y = vel.y;
this->mVel.z = vel.z;
}
this->func_ov031_020e9904(0);
this->SetState(ActorRupeeState_0);
break;
case 3:
break;
case 4:
this->func_ov031_020e9904(10);
this->SetState(ActorRupeeState_10);
break;
default:
@@ -173,7 +173,7 @@ ARM void ActorRupee::func_ov031_020e9068() {
case RupeeId_BigGreen:
case RupeeId_BigRed:
case RupeeId_Gold:
this->func_ov031_020e9904(5);
this->SetState(ActorRupeeState_5);
break;
default: {
ItemManager *pItemManager = data_027e0ce0->mUnk_2C;
@@ -229,7 +229,7 @@ ARM void ActorRupee::func_ov031_020e91a8() {
return;
}
this->func_ov031_020e9904(2);
this->SetState(ActorRupeeState_2);
}
ARM void ActorRupee::func_ov031_020e9234() {
@@ -259,7 +259,7 @@ ARM void ActorRupee::func_ov031_020e9254() {
return;
}
this->func_ov031_020e9904(2);
this->SetState(ActorRupeeState_2);
}
ARM void ActorRupee::func_ov031_020e92e0() {
@@ -314,7 +314,7 @@ ARM void ActorRupee::func_ov031_020e9310() {
return;
}
this->func_ov031_020e9904(1);
this->SetState(ActorRupeeState_1);
}
ARM void ActorRupee::func_ov031_020e9428() {}
@@ -343,17 +343,17 @@ ARM void ActorRupee::func_ov031_020e9450() {
this->mVel.y = 0;
this->mVel.z = 0;
this->mUnk_A0 |= 0x1000;
this->func_ov031_020e9904(0);
this->SetState(ActorRupeeState_0);
}
ARM void ActorRupee::func_ov031_020e94d4() {
this->mUnk_52 = -1;
this->mUnk_50 = 0;
this->mVel.x = 0;
this->mVel.y = 0;
this->mVel.z = 0;
this->mUnk_4A = 0;
this->mUnk_44 = 0;
this->mUnk_52 = -1;
this->mUnk_50 = 0;
this->mVel.x = 0;
this->mVel.y = 0;
this->mVel.z = 0;
this->mUnk_4A[0] = 0;
this->mUnk_44 = 0;
this->mUnk_9C.func_ov000_02097bec();
UNSET_FLAG(this->mFlags, ActorFlag_Visible);
}
@@ -407,7 +407,7 @@ ARM void ActorRupee::func_ov031_020e95c0() {
pActor = gpActorManager->func_01fff3b4(this->mUnk_C0);
if (pActor == NULL) {
this->func_ov031_020e9904(0);
this->SetState(ActorRupeeState_0);
return;
}
@@ -435,10 +435,10 @@ ARM void ActorRupee::func_ov031_020e9638() {
this->mUnk_C4.mUnk_04 = 0;
if (this->mUnk_5C.mParams[1] == 2) {
this->mUnk_4A = 1;
this->mUnk_4A[0] = 1;
data_027e0cec->func_ov000_0209ff8c(&this->mUnk_F0, 0xD00C, &this->mPos, 2);
} else {
this->mUnk_4A = 0;
this->mUnk_4A[0] = 0;
}
this->mPos.y -= FLOAT_TO_FX32(1.2);
@@ -454,7 +454,7 @@ ARM void ActorRupee::func_ov031_020e96bc() {
return;
}
this->func_ov031_020e9904(0xB);
this->SetState(ActorRupeeState_11);
}
ARM void ActorRupee::func_ov031_020e970c() {
@@ -462,9 +462,9 @@ ARM void ActorRupee::func_ov031_020e970c() {
this->mVel.y = 0;
this->mVel.z = 0;
SET_FLAG(this->mFlags, ActorFlag_Visible);
this->mUnk_4A = 1;
this->mUnk_52 = -1;
this->mUnk_50 = 0;
this->mUnk_4A[0] = 1;
this->mUnk_52 = -1;
this->mUnk_50 = 0;
}
// non-matching
@@ -487,12 +487,12 @@ ARM void ActorRupee::func_ov031_020e9740() {
this->mUnk_52 = -1;
this->mUnk_50 = 0;
} else if (this->mUnk_50 == 8) {
this->func_ov031_020e9904(0xC);
this->SetState(ActorRupeeState_12);
}
} else {
temp_r0 = data_027e0cd8->mUnk_0C;
this->mPos.y = temp_r0->vfunc_28(&this->mUnk_5C.mInitialPos, 0, 0);
this->func_ov031_020e9904(0xC);
this->SetState(ActorRupeeState_12);
}
if (this->mUnk_50 < this->mUnk_52) {
@@ -518,45 +518,22 @@ ARM void ActorRupee::func_ov031_020e98c4() {
func_01ffedac(&sp0, &this->mPos);
func_ov031_0210b0e4(sp0, 1);
this->func_ov031_020e9904(1);
this->SetState(ActorRupeeState_1);
}
typedef void (*UnkCallback_ov031_02113520)(void *);
struct UnkStruct_ov031_02113520 {
/* 00 */ UnkCallback_ov031_02113520 mUnk_00;
/* 04 */ unk32 mUnk_04;
/* 08 */
};
extern UnkStruct_ov031_02113520 data_ov031_02113520[13];
extern PTMF<ActorRupee> data_ov031_02113520[13];
// non-matching
ARM void ActorRupee::func_ov031_020e9904(unk32 param1) {
this->mUnk_4C = param1;
ARM void ActorRupee::SetState(ActorState state) {
this->mState = state;
this->mUnk_52 = -1;
this->mUnk_50 = 0;
this->mUnk_EC = 0;
u32 uVar1 = data_ov031_02113520[this->mUnk_4C].mUnk_04;
UnkCallback_ov031_02113520 pcVar2;
if (!(uVar1 & 1)) {
pcVar2 = data_ov031_02113520[this->mUnk_4C].mUnk_00;
} else {
pcVar2 = (UnkCallback_ov031_02113520) (((u32) this + uVar1 >> 1) + &data_ov031_02113520[this->mUnk_4C]);
}
pcVar2(this);
CALL_PTMF(PTMF<ActorRupee>, data_ov031_02113520[this->mState]);
}
extern "C" void func_01fff17c(unk16 *, UnkStruct_027e0ce0 *, unk32);
extern "C" void func_02018114(unk16 *, unk32);
typedef void (*UnkCallback_vfunc_20)(VecFx32 *);
struct UnkStruct_ov031_02113588 {
/* 00 */ UnkCallback_vfunc_20 callback;
/* 04 */ unk32 mUnk_04;
/* 08 */
};
extern UnkStruct_ov031_02113588 data_ov031_02113588[13];
extern PTMF<ActorRupee> data_ov031_02113588[13];
// non-matching
ARM void ActorRupee::vfunc_20() {
@@ -565,7 +542,6 @@ ARM void ActorRupee::vfunc_20() {
unk16 uVar3;
int iVar4;
u32 uVar5;
UnkCallback_vfunc_20 pcVar6;
int iVar7;
int iVar8;
unk16 uStack_16;
@@ -592,12 +568,12 @@ ARM void ActorRupee::vfunc_20() {
uStack_16 = 0;
this->mUnk_C4.mUnk_0E = 0;
this->mUnk_C4.mUnk_10 = 0x666;
sVar1 = this->mUnk_4C;
sVar1 = this->mState;
test = this->mPos;
if (sVar1 != 5) {
iVar4 = (int) (short) this->mUnk_4C;
if (sVar1 != ActorRupeeState_5) {
iVar4 = (int) (short) this->mState;
}
this->mUnk_C4.mUnk_12 = 0;
@@ -606,8 +582,8 @@ ARM void ActorRupee::vfunc_20() {
uVar3 = uVar2;
if ((sVar1 != 5 && iVar4 != 10) && iVar4 != 0xb) {
if ((sVar1 != 6) && ((u16) this->mUnk_98 < (u16) this->mUnk_9A)) {
if ((sVar1 != ActorRupeeState_5 && iVar4 != ActorRupeeState_10) && iVar4 != ActorRupeeState_11) {
if ((sVar1 != ActorRupeeState_6) && ((u16) this->mUnk_98 < (u16) this->mUnk_9A)) {
this->mUnk_98++;
}
@@ -633,7 +609,7 @@ ARM void ActorRupee::vfunc_20() {
case 0x0C:
this->mUnk_BC = this->mUnk_A8;
this->mUnk_A0 &= 0xffffefff;
this->func_ov031_020e9904(6);
this->SetState(ActorRupeeState_6);
uVar3 = uStack_18;
break;
default:
@@ -643,27 +619,16 @@ ARM void ActorRupee::vfunc_20() {
}
}
uStack_18 = uVar3;
iVar4 = (int) (short) this->mUnk_4C;
// uVar5 = *(u32 *) (data_ov031_0211358c[iVar4 * 8]);
CALL_PTMF(PTMF<ActorRupee>, data_ov031_02113588[this->mState]);
if (!(uVar5 & 1)) {
data_ov031_02113588[iVar4 * 2].callback(NULL);
} else {
this->vfunc_00(NULL);
// pcVar6 = *(code **) (*(int *) ((int) &this->vtable + ((int) uVar5 >> 1)) + (&data_ov031_02113588)[iVar4 * 2]);
}
// (*pcVar6)();
if ((this->mUnk_5C.mUnk_24 < 0) && (this->mUnk_4C != 5)) {
if (this->mUnk_5C.mUnk_24 < 0 && this->mState != ActorRupeeState_5) {
this->func_ov031_020e9d94();
}
if (this->mUnk_5C.mParams[1] != 0) {
sVar1 = this->mUnk_4C;
sVar1 = this->mState;
if (!(sVar1 != 10 && sVar1 != 0xb && sVar1 != 0xc)) {
if (!(sVar1 != ActorRupeeState_10 && sVar1 != ActorRupeeState_11 && sVar1 != ActorRupeeState_12)) {
func_01ffedac(&uStack_1e, &this->mPos);
func_ov031_0210b0e4(uStack_1e, 0);
} else {
@@ -728,7 +693,7 @@ ARM void ActorRupee::vfunc_2c(unk32 param1) {
uVar2 = 0x4CD;
}
if (this->mUnk_4C != 9) {
if (this->mState != ActorRupeeState_9) {
iStack_28.x = this->mPos.x;
iStack_28.y = this->mPos.y + 0x80;
iStack_28.z = this->mPos.z;
@@ -816,7 +781,7 @@ ARM bool ActorRupee::func_ov031_020e9e5c() {
bool bVar6;
bool bVar7;
sVar1 = this->mUnk_4C;
sVar1 = this->mState;
bVar6 = true;
bVar5 = true;
bVar4 = true;
@@ -824,33 +789,31 @@ ARM bool ActorRupee::func_ov031_020e9e5c() {
bVar2 = true;
bVar7 = true;
bVar8 = true;
if ((sVar1 != 6 && sVar1 != 7)) {
if ((sVar1 != ActorRupeeState_6 && sVar1 != ActorRupeeState_7)) {
bVar2 = false;
}
if ((!bVar2) && (sVar1 != 3)) {
if ((!bVar2) && (sVar1 != ActorRupeeState_3)) {
bVar8 = false;
}
if ((!bVar8) && (sVar1 != 8)) {
if ((!bVar8) && (sVar1 != ActorRupeeState_8)) {
bVar3 = false;
}
if ((!bVar3) && (sVar1 != 9)) {
if ((!bVar3) && (sVar1 != ActorRupeeState_9)) {
bVar4 = false;
}
if ((!bVar4) && (sVar1 != 10)) {
if ((!bVar4) && (sVar1 != ActorRupeeState_10)) {
bVar5 = false;
}
if ((!bVar5) && (sVar1 != 0xb)) {
if ((!bVar5) && (sVar1 != ActorRupeeState_11)) {
bVar6 = false;
}
if (!(bVar6) && (sVar1 != 0xc)) {
if (!(bVar6) && (sVar1 != ActorRupeeState_12)) {
bVar7 = false;
}
return bVar7;
}
#define GET_ACTOR_RUPEE(pActor) ((ActorRupee *) (pActor))
ARM ActorRupee_c4::ActorRupee_c4(Actor *param1) :
Actor_c4(param1) {
this->mUnk_20 = param1;
@@ -859,26 +822,26 @@ ARM ActorRupee_c4::ActorRupee_c4(Actor *param1) :
ARM bool ActorRupee_c4::vfunc_00(ActorRef ref, unk32 param2) {
if (param2 != 0) {
ActorRupee *pRupee = GET_ACTOR_RUPEE(this->mUnk_20);
ActorRupee *pRupee = this->GetActorPtr<ActorRupee>();
pRupee->mUnk_C0 = ref.Get32();
pRupee->func_ov031_020e9904(7);
pRupee->SetState(ActorRupeeState_7);
}
return this->Actor_c4::vfunc_00(ref, param2);
}
ARM void ActorRupee_c4::vfunc_04() {
GET_ACTOR_RUPEE(this->mUnk_20)->func_ov031_020e9904(8);
this->GetActorPtr<ActorRupee>()->SetState(ActorRupeeState_8);
this->Actor_c4::vfunc_04();
}
ARM void ActorRupee_c4::vfunc_0c(unk32 param1) {
GET_ACTOR_RUPEE(this->mUnk_20)->func_ov031_020e9904(1);
this->GetActorPtr<ActorRupee>()->SetState(ActorRupeeState_1);
this->Actor_c4::vfunc_0c(param1);
}
ARM void ActorRupee_c4::vfunc_08() {
GET_ACTOR_RUPEE(this->mUnk_20)->func_ov031_020e9068();
this->GetActorPtr<ActorRupee>()->func_ov031_020e9068();
this->Actor_c4::vfunc_08();
}
@@ -21,7 +21,7 @@ struct UnkStruct_ov031_02117c84 {
static const Vec2pCpp data_ov031_02115830(0x800, 0x800);
static const UnkStruct_ov031_02117c84 data_ov031_02117c84(0x3C);
static const UnkSubStruct19 data_ov031_02115c84;
static const CellAnimObject data_ov031_02115c84;
ARM MapObjectTreasureSpawned_74::MapObjectTreasureSpawned_74(G3d_Model *param1) :
ModelRender(param1),
+3 -3
View File
@@ -486,8 +486,8 @@ ARM void MapObjectDoorBase::vfunc_5C(unk32 param1, unk32 param2) {
this->vfunc_7C();
if (this->mUnk_8A && this->mUnk_86 && param2 == 0) {
unk32 var_r5 = 1;
unk32 var_r1_2 = 2;
u16 var_r5 = 1;
s16 var_r1_2 = 2;
if (this->IsOrientedVertically()) {
var_r1_2 = -1;
@@ -498,7 +498,7 @@ ARM void MapObjectDoorBase::vfunc_5C(unk32 param1, unk32 param2) {
}
if (this->mUnk_87) {
unk32 sp8;
ActorRef sp8;
MapObject::func_ov000_0209d54c(&sp8, this, 1, &this->mPos, var_r1_2, var_r5);
}
}
+1 -1
View File
@@ -18,7 +18,7 @@ ARM void ActorUnkKEYT::func_ov041_02123c7c(void) {}
ARM void ActorUnkKEYT::func_ov041_02123cf8(void) {}
ARM void ActorUnkKEYT::func_ov041_02123d40(void) {}
ARM void ActorUnkKEYT::func_ov041_02123d88(void) {}
ARM void ActorUnkKEYT::func_ov041_02123eb8(void) {}
ARM bool ActorUnkKEYT::Grab(ActorGrabParams grabParams) {}
ARM void ActorUnkKEYT::func_ov041_02123ff8(void) {}
ARM void ActorUnkKEYT::func_ov041_02124094(void) {}
ARM void ActorUnkKEYT::func_ov041_021240c0(void) {}
+22 -23
View File
@@ -500,21 +500,21 @@ ARM bool PlayerGet::func_ov110_02186b8c() {
ARM void PlayerGet::vfunc_0c(UnkStruct_PlayerGet_vfunc_0c_param1 *param1) {
ItemId itemId;
ItemManager *pItemManager;
Actor *iVar10;
Actor *pActor;
VecFx32 *pUnk_38;
VecFx32 *pUnk_3c;
switch (param1->mUnk_04) {
case 0x39:
VecFx32 temp;
itemId = param1->mUnk_1C;
temp.x = param1->mUnk_10.x;
temp.y = param1->mUnk_10.y;
temp.z = param1->mUnk_10.z;
this->mUnk_54.mUnk_08 = temp.z;
this->mUnk_54.mUnk_00_s32 = temp.x;
this->mUnk_54.mUnk_04_s32 = temp.y;
pItemManager = this->mUnk_28->pItemManager;
itemId = param1->mUnk_1C;
temp.x = param1->mUnk_10.x;
temp.y = param1->mUnk_10.y;
temp.z = param1->mUnk_10.z;
this->mUnk_54.mUnk_08 = temp.z;
this->mUnk_54.mUnk_00.data = temp.x;
this->mUnk_54.mUnk_04.data = temp.y;
pItemManager = this->mUnk_28->pItemManager;
switch (itemId) {
case ItemId_BombBag:
@@ -560,19 +560,19 @@ ARM void PlayerGet::vfunc_0c(UnkStruct_PlayerGet_vfunc_0c_param1 *param1) {
pUnk_3c->y = 0;
pUnk_3c->z = 0;
if (((u32) (u16) this->mUnk_54.mUnk_00_s16 << 16) >> 30 != 1) {
if (this->mUnk_54.mUnk_04.type != ActorRefType_1) {
return;
}
iVar10 = gpActorManager->func_01fff3b4(*(u32 *) this->mUnk_54.mUnk_00);
pActor = gpActorManager->func_01fff3b4(this->mUnk_54.mUnk_00);
if (iVar10 == NULL) {
if (pActor == NULL) {
return;
}
if (iVar10->GetActorId() == ActorId_NormalShield) {
UNSET_FLAG(iVar10->mFlags, ActorFlag_Visible);
iVar10->mUnk_4A = 0;
if (pActor->GetActorId() == ActorId_NormalShield) {
UNSET_FLAG(pActor->mFlags, ActorFlag_Visible);
pActor->mUnk_4A[0] = 0;
}
break;
case 0x3A:
@@ -857,8 +857,8 @@ ARM void PlayerGet::vfunc_10(unk32 param1, unk32 param2) {
case ItemId_AncientShield:
this->mUnk_30->func_ov000_020936ec();
if (((*(u16 *) this->mUnk_54.mUnk_00 << 0x10) >> 0x1E) == 1) {
temp_r0_3 = (ActorUnkNSHD *) gpActorManager->func_01fff3b4(*(u32 *) this->mUnk_54.mUnk_00);
if (this->mUnk_54.mUnk_04.type == ActorRefType_1) {
temp_r0_3 = (ActorUnkNSHD *) gpActorManager->func_01fff3b4(this->mUnk_54.mUnk_00);
if ((temp_r0_3 != NULL) && (temp_r0_3->GetActorId() == ActorId_NormalShield)) {
if (this->func_ov110_02186b8c()) {
@@ -896,10 +896,10 @@ ARM void PlayerGet::vfunc_10(unk32 param1, unk32 param2) {
break;
}
if (*(u16 *) this->mUnk_54.mUnk_00 == 0x1000) {
if (this->mUnk_54.mUnk_00.type_index == REF_TYPE_INDEX(ActorRefType_0, 0x1000)) {
Vec2b stack;
stack.x = this->mUnk_54.mUnk_00[0];
stack.y = this->mUnk_54.mUnk_00[1];
stack.x = this->mUnk_54.mUnk_00.type_index;
stack.y = this->mUnk_54.mUnk_00.unk_id;
MapObject *pMapObj = gpMapObjManager->func_01fff498(stack);
@@ -954,9 +954,8 @@ ARM void PlayerGet::vfunc_10(unk32 param1, unk32 param2) {
break;
}
if ((((u32) (*(u16 *) this->mUnk_54.mUnk_04 << 0x10) >> 0x1E) == 1) &&
(data_027e09b8->func_ov000_020732dc(2) != 0)) {
*(u32 *) this->mUnk_04.mUnk_00 = *(u32 *) this->mUnk_54.mUnk_04;
if (this->mUnk_54.mUnk_04.type == ActorRefType_1 && data_027e09b8->func_ov000_020732dc(2) != 0) {
this->mUnk_04.mUnk_00 = this->mUnk_54.mUnk_04;
this->mUnk_30->func_ov000_020921e4(0x57);
break;
}
@@ -1,6 +1,6 @@
#include "Player/PlayerSceneChange.hpp"
#include "Actor/ActorManager.hpp"
#include "Actor/ActorUnk_ov000_020a8bb0.hpp"
#include "Actor/Actor_Derived1.hpp"
#include "MapObject/MapObjectManager.hpp"
#include "MapObject/MapObjectUnkDRTY.hpp"
#include "Unknown/UnkStruct_027e09b8.hpp"
@@ -145,8 +145,8 @@ ARM void PlayerSceneChange::vfunc_0c(UnkStruct_PlayerGet_vfunc_0c_param1 *param1
this->mUnk_70.z = temp_r8->z + MUL_FX32(data_0203f964[1], FLOAT_TO_FX32(2.0f));
break;
default:
if (this->mUnk_2C->mUnk_150 == 0x1000) {
stack2.y = this->mUnk_2C->mUnk_150 >> 0x10;
if (this->mUnk_2C->mUnk_150.type_index == 0x1000) {
stack2.y = this->mUnk_2C->mUnk_150.type_index;
stack2.x = 0;
MapObjectUnkDRTY *pDRTY = (MapObjectUnkDRTY *) gpMapObjManager->func_01fff498(stack2);
@@ -174,9 +174,9 @@ ARM void PlayerSceneChange::vfunc_0c(UnkStruct_PlayerGet_vfunc_0c_param1 *param1
}
}
} else {
if (((u32) ((u16) this->mUnk_2C->mUnk_150 << 0x10) >> 0x1E) == 1) {
ActorUnk_ov000_020a8bb0 *temp_r0_6 =
(ActorUnk_ov000_020a8bb0 *) gpActorManager->func_01fff3b4(this->mUnk_2C->mUnk_150);
if (this->mUnk_2C->mUnk_150.type == ActorRefType_1) {
Actor_Derived1 *temp_r0_6 =
(Actor_Derived1 *) gpActorManager->func_01fff3b4(this->mUnk_2C->mUnk_150);
if (temp_r0_6 != NULL) {
this->mUnk_70.x = temp_r0_6->mPos.x;
@@ -184,9 +184,9 @@ ARM void PlayerSceneChange::vfunc_0c(UnkStruct_PlayerGet_vfunc_0c_param1 *param1
this->mUnk_70.z = temp_r0_6->mPos.z;
if (temp_r0_6->GetActorId() == ActorId_GTTG) {
this->mUnk_90 = temp_r0_6->mRef.index;
this->mUnk_AA = temp_r0_6->mAngle;
this->mUnk_A8 = temp_r0_6->mAngle;
this->mUnk_90.type_index = temp_r0_6->mRef.type_index;
this->mUnk_AA = temp_r0_6->mAngle;
this->mUnk_A8 = temp_r0_6->mAngle;
}
}
}
+16
View File
@@ -0,0 +1,16 @@
#include "Actor/ActorManager.hpp"
Actor *ActorManager::func_01fff3b4(ActorRef ref) {
if (ref.type == 1) {
int size = this->mActorTableEnd - this->mActorTable;
Actor *pActor;
// Affectation directement dans la condition
if (size != 0 && (pActor = this->mActorTable[ref.index]) != NULL) {
if (pActor->IsAlive() && pActor->mRef == ref) {
return pActor;
}
}
}
return NULL;
}
+2 -2
View File
@@ -36,7 +36,7 @@ ARM void Game::Run() {
{
UnkDataStruct2 local_28(0x1300);
this->mpSaveFile = (SaveFile *) local_28.unk_00;
this->mpSaveSlot = (SaveSlot *) local_28.unk_00;
if (this->mpCurrentGameMode != NULL) {
delete this->mpCurrentGameMode;
@@ -49,7 +49,7 @@ ARM void Game::Run() {
this->mpCurrentGameMode = this->createCallback();
this->createCallback = NULL;
this->mpCurrentGameMode->vfunc_08();
this->mpSaveFile = NULL;
this->mpSaveSlot = NULL;
}
data_0204999c.func_02013070();
+6 -3
View File
@@ -135,6 +135,7 @@ config.libs = [
GameLib(
"ITCM",
[
Object("ITCM/ITCM_ActorManager.cpp"),
Object("ITCM/ITCM_MapObjectManager.cpp"),
]
),
@@ -179,7 +180,7 @@ config.libs = [
Object("000_Second/MapObject/MapObjectMiniBlocks.cpp"),
Object("000_Second/Cutscene/Cutscene.cpp"),
Object("000_Second/Item/ItemManager.cpp"),
Object("000_Second/Actor/ActorUnk_ov000_020a8bb0.cpp"),
Object("000_Second/Actor/Actor_Derived1.cpp"),
Object("000_Second/Item/TreasureManager.cpp"),
]
),
@@ -193,6 +194,7 @@ config.libs = [
Object("001_SceneInit/UnkStruct_027e0cf8_08_00_001.cpp"),
Object("001_SceneInit/Game/AdventureModeManager_001.cpp"),
Object("001_SceneInit/Game/GameModeAdventure_001.cpp"),
Object("001_SceneInit/Save/SaveManager_001.cpp"),
]
),
GameLib(
@@ -290,8 +292,8 @@ config.libs = [
Object("024_MainGame/Train/UnkTrainSystem2_024.cpp"),
Object("024_MainGame/Unknown/UnkStruct_027e0d08_024.cpp"),
Object("024_MainGame/MiscAdvManager.cpp"),
Object("024_MainGame/Actor/ActorUnk_ov000_020a8bb0_EC_024.cpp"),
Object("024_MainGame/Train/data_ov024_020d8550.cpp", extra_cflags=["-ipa file", "-enc shift-jis"]),
Object("024_MainGame/Actor/Actor_Derived1_EC_024.cpp"),
Object("024_MainGame/Train/data_ov024_020d8550.cpp"),
Object("024_MainGame/Actor/ActorUnkOBPC.cpp"),
]
),
@@ -306,6 +308,7 @@ config.libs = [
GameLib(
"Overlay 26",
[
Object("026_Train/code_02102924.cpp"),
Object("026_Train/Actor/ActorUnkBDEM.cpp"),
Object("026_Train/Actor/ActorUnkCNBL.cpp"),
Object("026_Train/Actor/ActorUnkDKCL.cpp"),