From 3c223d570c19e1b244705bfb5893d51f30a17f80 Mon Sep 17 00:00:00 2001 From: Aetias Date: Thu, 6 Mar 2025 00:14:06 +0100 Subject: [PATCH] Delink `ActorNavi` --- config/eur/arm9/overlays/ov000/delinks.txt | 7 +++ config/eur/arm9/overlays/ov000/symbols.txt | 66 +++++++++++----------- config/usa/arm9/overlays/ov000/delinks.txt | 7 +++ config/usa/arm9/overlays/ov000/symbols.txt | 66 +++++++++++----------- include/Actor/Navi/ActorNavi.hpp | 64 ++++++++++++++++++++- include/Actor/Navi/ActorNaviBase.hpp | 18 +----- src/00_Core/Actor/Navi/ActorNavi.cpp | 32 +++++++++++ src/04_Load/Actor/Navi/ActorNavi.cpp | 3 + 8 files changed, 180 insertions(+), 83 deletions(-) create mode 100644 src/00_Core/Actor/Navi/ActorNavi.cpp create mode 100644 src/04_Load/Actor/Navi/ActorNavi.cpp diff --git a/config/eur/arm9/overlays/ov000/delinks.txt b/config/eur/arm9/overlays/ov000/delinks.txt index 46f9a7dc..612ebc21 100644 --- a/config/eur/arm9/overlays/ov000/delinks.txt +++ b/config/eur/arm9/overlays/ov000/delinks.txt @@ -30,6 +30,13 @@ src/00_Core/Actor/Dungeon/ActorEventIcon.cpp: .data start:0x020e2aa0 end:0x020e2b5c .sbss start:0x020ecda4 end:0x020ecdc4 +src/00_Core/Actor/Navi/ActorNavi.cpp: + .text start:0x020b80e0 end:0x020b85d8 + .init start:0x020e12d8 end:0x020e133c + .ctor start:0x020e1f08 end:0x020e1f0c + .data start:0x020e6514 end:0x020e6674 + .sbss start:0x020ee1a0 end:0x020ee1d8 + src/00_Core/Actor/Navi/ActorNaviBase.cpp: .text start:0x020b885c end:0x020bb118 .rodata start:0x020dc81c end:0x020dc858 diff --git a/config/eur/arm9/overlays/ov000/symbols.txt b/config/eur/arm9/overlays/ov000/symbols.txt index 56f493dd..ad3278f9 100644 --- a/config/eur/arm9/overlays/ov000/symbols.txt +++ b/config/eur/arm9/overlays/ov000/symbols.txt @@ -2397,33 +2397,33 @@ func_ov000_020b7fe8 kind:function(arm,size=0x14) addr:0x20b7fe8 _ZN13PlayerManager4SaveEP15SaveItemManager kind:function(thumb,size=0x50) addr:0x20b7ffc _ZN13PlayerManager17IncreaseMaxHealthEs kind:function(thumb,size=0x14) addr:0x20b804c _ZN13PlayerManager19UpdateShipMaxHealthEv kind:function(thumb,size=0x80) addr:0x20b8060 -func_ov000_020b80e0 kind:function(arm,size=0x30) addr:0x20b80e0 -func_ov000_020b8110 kind:function(arm,size=0x24) addr:0x20b8110 -func_ov000_020b8134 kind:function(arm,size=0x14) addr:0x20b8134 -func_ov000_020b8148 kind:function(arm,size=0x1c) addr:0x20b8148 -func_ov000_020b8164 kind:function(arm,size=0x50) addr:0x20b8164 -func_ov000_020b81b4 kind:function(arm,size=0x40) addr:0x20b81b4 -func_ov000_020b81f4 kind:function(arm,size=0xc) addr:0x20b81f4 -func_ov000_020b8200 kind:function(arm,size=0x10) addr:0x20b8200 -func_ov000_020b8210 kind:function(arm,size=0x38) addr:0x20b8210 -func_ov000_020b8248 kind:function(arm,size=0x38) addr:0x20b8248 -func_ov000_020b8280 kind:function(arm,size=0x8) addr:0x20b8280 -func_ov000_020b8288 kind:function(arm,size=0x8) addr:0x20b8288 -func_ov000_020b8290 kind:function(arm,size=0x2c) addr:0x20b8290 -func_ov000_020b82bc kind:function(arm,size=0x2c) addr:0x20b82bc -func_ov000_020b82e8 kind:function(arm,size=0x58) addr:0x20b82e8 -func_ov000_020b8340 kind:function(arm,size=0xb8) addr:0x20b8340 -func_ov000_020b83f8 kind:function(arm,size=0x20) addr:0x20b83f8 -func_ov000_020b8418 kind:function(arm,size=0x3c) addr:0x20b8418 -func_ov000_020b8454 kind:function(arm,size=0x24) addr:0x20b8454 -func_ov000_020b8478 kind:function(arm,size=0x24) addr:0x20b8478 -func_ov000_020b849c kind:function(arm,size=0x34) addr:0x20b849c -func_ov000_020b84d0 kind:function(arm,size=0x8) addr:0x20b84d0 -func_ov000_020b84d8 kind:function(arm,size=0x54) addr:0x20b84d8 -func_ov000_020b852c kind:function(arm,size=0x10) addr:0x20b852c -func_ov000_020b853c kind:function(arm,size=0x14) addr:0x20b853c -func_ov000_020b8550 kind:function(arm,size=0x48) addr:0x20b8550 -func_ov000_020b8598 kind:function(arm,size=0x40) addr:0x20b8598 +_ZN9ActorNavi6CreateEv kind:function(arm,size=0x30) addr:0x20b80e0 +_ZN24UnkStruct_ov000_020b8110C2Ev kind:function(arm,size=0x24) addr:0x20b8110 +_ZN24UnkStruct_ov000_020b8110D1Ev kind:function(arm,size=0x14) addr:0x20b8134 +_ZN24UnkStruct_ov000_020b8110D0Ev kind:function(arm,size=0x1c) addr:0x20b8148 +_ZN24UnkStruct_ov000_020b81108vfunc_08EPs kind:function(arm,size=0x50) addr:0x20b8164 +_ZN24UnkStruct_ov000_020b81108vfunc_18EPi kind:function(arm,size=0x40) addr:0x20b81b4 +_ZN24UnkStruct_ov000_020b81108vfunc_14EPt kind:function(arm,size=0xc) addr:0x20b81f4 +_ZN9ActorNavi19func_ov000_020b8200Ev kind:function(arm,size=0x10) addr:0x20b8200 +_ZN9ActorNavi8vfunc_c4Ev kind:function(arm,size=0x38) addr:0x20b8210 +_ZN9ActorNavi8vfunc_c8Ev kind:function(arm,size=0x38) addr:0x20b8248 +_ZN9ActorNavi8vfunc_b4Ev kind:function(arm,size=0x8) addr:0x20b8280 +_ZN9ActorNavi8vfunc_b8Ev kind:function(arm,size=0x8) addr:0x20b8288 +_ZN9ActorNavi8vfunc_d4Ev kind:function(arm,size=0x2c) addr:0x20b8290 +_ZN9ActorNavi8vfunc_d0Ev kind:function(arm,size=0x2c) addr:0x20b82bc +_ZN9ActorNavi9SetActiveEb kind:function(arm,size=0x58) addr:0x20b82e8 +_ZN9ActorNavi8vfunc_e0Ev kind:function(arm,size=0xb8) addr:0x20b8340 +_ZN9ActorNavi8vfunc_d8Ev kind:function(arm,size=0x20) addr:0x20b83f8 +_ZN9ActorNavi8vfunc_20Eb kind:function(arm,size=0x3c) addr:0x20b8418 +_ZN9ActorNavi8vfunc_ccEPi kind:function(arm,size=0x24) addr:0x20b8454 +_ZN9ActorNavi8vfunc_c0EP5Vec3p kind:function(arm,size=0x24) addr:0x20b8478 +_ZN9ActorNavi8vfunc_e8Ev kind:function(arm,size=0x34) addr:0x20b849c +_ZN9ActorNavi8vfunc_8cEv kind:function(arm,size=0x8) addr:0x20b84d0 +_ZN9ActorNavi8vfunc_ecEv kind:function(arm,size=0x54) addr:0x20b84d8 +_Z14GetEquipHammerv kind:function(arm,size=0x10) addr:0x20b852c local +_ZN9ActorNavi19func_ov000_020b853cEv kind:function(arm,size=0x14) addr:0x20b853c +_ZN9ActorNaviD1Ev kind:function(arm,size=0x48) addr:0x20b8550 +_ZN9ActorNaviD0Ev kind:function(arm,size=0x40) addr:0x20b8598 func_ov000_020b85d8 kind:function(thumb,size=0x28) addr:0x20b85d8 func_ov000_020b8600 kind:function(arm,size=0x10) addr:0x20b8600 func_ov000_020b8610 kind:function(arm,size=0x1c) addr:0x20b8610 @@ -3955,7 +3955,7 @@ __sinit_ov000_020e11d8 kind:function(arm,size=0x34) addr:0x20e11d8 __sinit_ov000_020e120c kind:function(arm,size=0x44) addr:0x20e120c __sinit_ov000_020e1250 kind:function(arm,size=0x40) addr:0x20e1250 __sinit_ov000_020e1290 kind:function(arm,size=0x48) addr:0x20e1290 -__sinit_ov000_020e12d8 kind:function(arm,size=0x64) addr:0x20e12d8 +__sinit_ActorNavi.cpp kind:function(arm,size=0x64) addr:0x20e12d8 __sinit_ov000_020e133c kind:function(arm,size=0x40) addr:0x20e133c __sinit_ov000_020e137c kind:function(arm,size=0x798) addr:0x20e137c __sinit_ov000_020e1b14 kind:function(arm,size=0x40) addr:0x20e1b14 @@ -4956,8 +4956,8 @@ data_ov000_020e6528 kind:data(any) addr:0x20e6528 data_ov000_020e652c kind:data(any) addr:0x20e652c data_ov000_020e6530 kind:data(any) addr:0x20e6530 data_ov000_020e6534 kind:data(any) addr:0x20e6534 -data_ov000_020e6560 kind:data(any) addr:0x20e6560 -data_ov000_020e6658 kind:data(any) addr:0x20e6658 +_ZTV9ActorNavi kind:data(any) addr:0x20e6560 +_ZTV24UnkStruct_ov000_020b8110 kind:data(any) addr:0x20e6658 data_ov000_020e667c kind:data(any) addr:0x20e667c data_ov000_020e676c kind:data(any) addr:0x20e676c data_ov000_020e6770 kind:data(any) addr:0x20e6770 @@ -5875,9 +5875,9 @@ data_ov000_020ee16c kind:bss addr:0x20ee16c data_ov000_020ee178 kind:bss addr:0x20ee178 data_ov000_020ee184 kind:bss addr:0x20ee184 data_ov000_020ee198 kind:bss addr:0x20ee198 -data_ov000_020ee1a0 kind:bss addr:0x20ee1a0 -data_ov000_020ee1ac kind:bss addr:0x20ee1ac -data_ov000_020ee1c0 kind:bss addr:0x20ee1c0 +@418 kind:bss addr:0x20ee1a0 +_ZN9ActorNavi5gTypeE kind:bss addr:0x20ee1ac +@419 kind:bss addr:0x20ee1c0 data_ov000_020ee1cc kind:bss addr:0x20ee1cc data_ov000_020ee1d8 kind:bss addr:0x20ee1d8 data_ov000_020ee1e4 kind:bss addr:0x20ee1e4 diff --git a/config/usa/arm9/overlays/ov000/delinks.txt b/config/usa/arm9/overlays/ov000/delinks.txt index ddb30117..bf023a36 100644 --- a/config/usa/arm9/overlays/ov000/delinks.txt +++ b/config/usa/arm9/overlays/ov000/delinks.txt @@ -30,6 +30,13 @@ src/00_Core/Actor/Dungeon/ActorEventIcon.cpp: .data start:0x020e2a40 end:0x020e2afc .sbss start:0x020ecd44 end:0x020ecd64 +src/00_Core/Actor/Navi/ActorNavi.cpp: + .text start:0x020b8080 end:0x020b8578 + .init start:0x020e1278 end:0x020e12dc + .ctor start:0x020e1ea8 end:0x020e1eac + .data start:0x020e64b4 end:0x020e6614 + .sbss start:0x020ee140 end:0x020ee178 + src/00_Core/Actor/Navi/ActorNaviBase.cpp: .text start:0x020b87fc end:0x020bb0b8 .rodata start:0x020dc7bc end:0x020dc7f8 diff --git a/config/usa/arm9/overlays/ov000/symbols.txt b/config/usa/arm9/overlays/ov000/symbols.txt index 1b9d2f65..4b641f48 100644 --- a/config/usa/arm9/overlays/ov000/symbols.txt +++ b/config/usa/arm9/overlays/ov000/symbols.txt @@ -2397,33 +2397,33 @@ func_ov000_020b7fe8 kind:function(arm,size=0x14) addr:0x20b7f88 _ZN13PlayerManager4SaveEP15SaveItemManager kind:function(thumb,size=0x50) addr:0x20b7f9c _ZN13PlayerManager17IncreaseMaxHealthEs kind:function(thumb,size=0x14) addr:0x20b7fec _ZN13PlayerManager19UpdateShipMaxHealthEv kind:function(thumb,size=0x80) addr:0x20b8000 -func_ov000_020b80e0 kind:function(arm,size=0x30) addr:0x20b8080 -func_ov000_020b8110 kind:function(arm,size=0x24) addr:0x20b80b0 -func_ov000_020b8134 kind:function(arm,size=0x14) addr:0x20b80d4 -func_ov000_020b8148 kind:function(arm,size=0x1c) addr:0x20b80e8 -func_ov000_020b8164 kind:function(arm,size=0x50) addr:0x20b8104 -func_ov000_020b81b4 kind:function(arm,size=0x40) addr:0x20b8154 -func_ov000_020b81f4 kind:function(arm,size=0xc) addr:0x20b8194 -func_ov000_020b8200 kind:function(arm,size=0x10) addr:0x20b81a0 -func_ov000_020b8210 kind:function(arm,size=0x38) addr:0x20b81b0 -func_ov000_020b8248 kind:function(arm,size=0x38) addr:0x20b81e8 -func_ov000_020b8280 kind:function(arm,size=0x8) addr:0x20b8220 -func_ov000_020b8288 kind:function(arm,size=0x8) addr:0x20b8228 -func_ov000_020b8290 kind:function(arm,size=0x2c) addr:0x20b8230 -func_ov000_020b82bc kind:function(arm,size=0x2c) addr:0x20b825c -func_ov000_020b82e8 kind:function(arm,size=0x58) addr:0x20b8288 -func_ov000_020b8340 kind:function(arm,size=0xb8) addr:0x20b82e0 -func_ov000_020b83f8 kind:function(arm,size=0x20) addr:0x20b8398 -func_ov000_020b8418 kind:function(arm,size=0x3c) addr:0x20b83b8 -func_ov000_020b8454 kind:function(arm,size=0x24) addr:0x20b83f4 -func_ov000_020b8478 kind:function(arm,size=0x24) addr:0x20b8418 -func_ov000_020b849c kind:function(arm,size=0x34) addr:0x20b843c -func_ov000_020b84d0 kind:function(arm,size=0x8) addr:0x20b8470 -func_ov000_020b84d8 kind:function(arm,size=0x54) addr:0x20b8478 -func_ov000_020b852c kind:function(arm,size=0x10) addr:0x20b84cc -func_ov000_020b853c kind:function(arm,size=0x14) addr:0x20b84dc -func_ov000_020b8550 kind:function(arm,size=0x48) addr:0x20b84f0 -func_ov000_020b8598 kind:function(arm,size=0x40) addr:0x20b8538 +_ZN9ActorNavi6CreateEv kind:function(arm,size=0x30) addr:0x20b8080 +_ZN24UnkStruct_ov000_020b8110C2Ev kind:function(arm,size=0x24) addr:0x20b80b0 +_ZN24UnkStruct_ov000_020b8110D1Ev kind:function(arm,size=0x14) addr:0x20b80d4 +_ZN24UnkStruct_ov000_020b8110D0Ev kind:function(arm,size=0x1c) addr:0x20b80e8 +_ZN24UnkStruct_ov000_020b81108vfunc_08EPs kind:function(arm,size=0x50) addr:0x20b8104 +_ZN24UnkStruct_ov000_020b81108vfunc_18EPi kind:function(arm,size=0x40) addr:0x20b8154 +_ZN24UnkStruct_ov000_020b81108vfunc_14EPt kind:function(arm,size=0xc) addr:0x20b8194 +_ZN9ActorNavi19func_ov000_020b8200Ev kind:function(arm,size=0x10) addr:0x20b81a0 +_ZN9ActorNavi8vfunc_c4Ev kind:function(arm,size=0x38) addr:0x20b81b0 +_ZN9ActorNavi8vfunc_c8Ev kind:function(arm,size=0x38) addr:0x20b81e8 +_ZN9ActorNavi8vfunc_b4Ev kind:function(arm,size=0x8) addr:0x20b8220 +_ZN9ActorNavi8vfunc_b8Ev kind:function(arm,size=0x8) addr:0x20b8228 +_ZN9ActorNavi8vfunc_d4Ev kind:function(arm,size=0x2c) addr:0x20b8230 +_ZN9ActorNavi8vfunc_d0Ev kind:function(arm,size=0x2c) addr:0x20b825c +_ZN9ActorNavi9SetActiveEb kind:function(arm,size=0x58) addr:0x20b8288 +_ZN9ActorNavi8vfunc_e0Ev kind:function(arm,size=0xb8) addr:0x20b82e0 +_ZN9ActorNavi8vfunc_d8Ev kind:function(arm,size=0x20) addr:0x20b8398 +_ZN9ActorNavi8vfunc_20Eb kind:function(arm,size=0x3c) addr:0x20b83b8 +_ZN9ActorNavi8vfunc_ccEPi kind:function(arm,size=0x24) addr:0x20b83f4 +_ZN9ActorNavi8vfunc_c0EP5Vec3p kind:function(arm,size=0x24) addr:0x20b8418 +_ZN9ActorNavi8vfunc_e8Ev kind:function(arm,size=0x34) addr:0x20b843c +_ZN9ActorNavi8vfunc_8cEv kind:function(arm,size=0x8) addr:0x20b8470 +_ZN9ActorNavi8vfunc_ecEv kind:function(arm,size=0x54) addr:0x20b8478 +_Z14GetEquipHammerv kind:function(arm,size=0x10) addr:0x20b84cc local +_ZN9ActorNavi19func_ov000_020b853cEv kind:function(arm,size=0x14) addr:0x20b84dc +_ZN9ActorNaviD1Ev kind:function(arm,size=0x48) addr:0x20b84f0 +_ZN9ActorNaviD0Ev kind:function(arm,size=0x40) addr:0x20b8538 func_ov000_020b85d8 kind:function(thumb,size=0x28) addr:0x20b8578 func_ov000_020b8600 kind:function(arm,size=0x10) addr:0x20b85a0 func_ov000_020b8610 kind:function(arm,size=0x1c) addr:0x20b85b0 @@ -3955,7 +3955,7 @@ __sinit_ov000_020e11d8 kind:function(arm,size=0x34) addr:0x20e1178 __sinit_ov000_020e120c kind:function(arm,size=0x44) addr:0x20e11ac __sinit_ov000_020e1250 kind:function(arm,size=0x40) addr:0x20e11f0 __sinit_ov000_020e1290 kind:function(arm,size=0x48) addr:0x20e1230 -__sinit_ov000_020e12d8 kind:function(arm,size=0x64) addr:0x20e1278 +__sinit_ActorNavi.cpp kind:function(arm,size=0x64) addr:0x20e1278 __sinit_ov000_020e133c kind:function(arm,size=0x40) addr:0x20e12dc __sinit_ov000_020e137c kind:function(arm,size=0x798) addr:0x20e131c __sinit_ov000_020e1b14 kind:function(arm,size=0x40) addr:0x20e1ab4 @@ -4956,8 +4956,8 @@ data_ov000_020e6528 kind:data(any) addr:0x20e64c8 data_ov000_020e652c kind:data(any) addr:0x20e64cc data_ov000_020e6530 kind:data(any) addr:0x20e64d0 data_ov000_020e6534 kind:data(any) addr:0x20e64d4 -data_ov000_020e6560 kind:data(any) addr:0x20e6500 -data_ov000_020e6658 kind:data(any) addr:0x20e65f8 +_ZTV9ActorNavi kind:data(any) addr:0x20e6500 +_ZTV24UnkStruct_ov000_020b8110 kind:data(any) addr:0x20e65f8 data_ov000_020e667c kind:data(any) addr:0x20e661c data_ov000_020e676c kind:data(any) addr:0x20e670c data_ov000_020e6770 kind:data(any) addr:0x20e6710 @@ -5875,9 +5875,9 @@ data_ov000_020ee16c kind:bss addr:0x20ee10c data_ov000_020ee178 kind:bss addr:0x20ee118 data_ov000_020ee184 kind:bss addr:0x20ee124 data_ov000_020ee198 kind:bss addr:0x20ee138 -data_ov000_020ee1a0 kind:bss addr:0x20ee140 -data_ov000_020ee1ac kind:bss addr:0x20ee14c -data_ov000_020ee1c0 kind:bss addr:0x20ee160 +@418 kind:bss addr:0x20ee140 +_ZN9ActorNavi5gTypeE kind:bss addr:0x20ee14c +@419 kind:bss addr:0x20ee160 data_ov000_020ee1cc kind:bss addr:0x20ee16c data_ov000_020ee1d8 kind:bss addr:0x20ee178 data_ov000_020ee1e4 kind:bss addr:0x20ee184 diff --git a/include/Actor/Navi/ActorNavi.hpp b/include/Actor/Navi/ActorNavi.hpp index 98ebcf51..0d0b2fb5 100644 --- a/include/Actor/Navi/ActorNavi.hpp +++ b/include/Actor/Navi/ActorNavi.hpp @@ -1,3 +1,65 @@ #pragma once -class ActorNavi; +#include "Actor/Navi/ActorNaviBase.hpp" +#include "Unknown/UnkStruct_ov000_020beba8.hpp" + +class UnkStruct_ov000_020b8110 : public UnkStruct_ov000_020beba8 { +public: + /* 0 (base) */ + /* c */ + + /* 00 */ virtual ~UnkStruct_ov000_020b8110() override; + /* 08 */ virtual void vfunc_08(unk16 *param1) override; + /* 14 */ virtual void vfunc_14(u16 *param1) override; + /* 18 */ virtual void vfunc_18(s32 *param1) override; + /* 1c */ + + UnkStruct_ov000_020b8110(); +}; + +class ActorNavi : public ActorNaviBase { +public: + static ActorType gType; + + /* 000 (base) */ + /* 294 */ ModelRender mUnk_294; + /* 2f0 */ void *mUnk_2f0; + /* 2f4 */ unk8 mUnk_2f4[0x40]; + /* 334 */ unk32 mUnk_334; + /* 338 */ unk32 mUnk_338; + /* 33c */ unk32 mUnk_33c; + /* 340 */ unk16 mUnk_340; + /* 342 */ unk8 mUnk_342[0x2]; + /* 344 */ unk32 mUnk_344; + /* 348 */ unk32 mUnk_348; + /* 34c */ unk8 mUnk_34c[0x68]; + /* 3b4 */ EquipHammer *mHammer; + /* 3b8 */ unk32 mUnk_3b8; + /* 3bc */ unk32 mUnk_3bc; + /* 3c0 */ unk8 mUnk_3c0[0x8]; + /* 3c8 */ + + /* 00 */ virtual ~ActorNavi() override; + /* 08 */ virtual bool vfunc_08() override; + /* 20 */ virtual void vfunc_20(bool param1) override; + /* 8c */ virtual bool vfunc_8c() override; + /* b4 */ virtual void vfunc_b4() override; + /* b8 */ virtual s32 vfunc_b8() override; + /* c0 */ virtual bool vfunc_c0(Vec3p *param1) override; + /* c4 */ virtual void vfunc_c4() override; + /* c8 */ virtual void vfunc_c8() override; + /* cc */ virtual bool vfunc_cc(unk32 *param1) override; + /* d0 */ virtual void vfunc_d0() override; + /* d4 */ virtual void vfunc_d4() override; + /* d8 */ virtual void vfunc_d8() override; + /* dc */ virtual void SetActive(bool active) override; + /* e0 */ virtual void vfunc_e0() override; + /* e8 */ virtual void vfunc_e8() override; + /* ec */ virtual void vfunc_ec() override; + + static ActorNavi *Create(); + void func_ov000_020b8200(); + void func_ov000_020b853c(); + + ActorNavi(); +}; diff --git a/include/Actor/Navi/ActorNaviBase.hpp b/include/Actor/Navi/ActorNaviBase.hpp index f3a45e8a..2af8acdf 100644 --- a/include/Actor/Navi/ActorNaviBase.hpp +++ b/include/Actor/Navi/ActorNaviBase.hpp @@ -10,6 +10,7 @@ class ActorNaviBase_Unk1 {}; class ActorNaviBase : public Actor { +public: /* 000 (base) */ /* 158 */ Vec3p mUnk_158; /* 164 */ unk32 mUnk_164; @@ -33,22 +34,7 @@ class ActorNaviBase : public Actor { /* 288 */ unk8 mUnk_288[0x2]; /* 28a */ unk16 mUnk_28a; /* 28c */ unk8 mUnk_28c[0x8]; - /* 294 */ ModelRender mUnk_294; - /* 2f0 */ void *mUnk_2f0; - /* 2f4 */ unk8 mUnk_2f4[0x40]; - /* 334 */ unk32 mUnk_334; - /* 338 */ unk32 mUnk_338; - /* 33c */ unk32 mUnk_33c; - /* 340 */ unk16 mUnk_340; - /* 342 */ unk8 mUnk_342[0x2]; - /* 344 */ unk32 mUnk_344; - /* 348 */ unk32 mUnk_348; - /* 34c */ unk8 mUnk_34c[0x68]; - /* 3b4 */ EquipHammer *mHammer; - /* 3b8 */ unk32 mUnk_3b8; - /* 3bc */ unk32 mUnk_3bc; - /* 3c0 */ unk8 mUnk_3c0[0x8]; - /* 3c8 */ + /* 294 */ /* 00 */ virtual ~ActorNaviBase() override; /* 08 */ virtual bool vfunc_08() override; diff --git a/src/00_Core/Actor/Navi/ActorNavi.cpp b/src/00_Core/Actor/Navi/ActorNavi.cpp new file mode 100644 index 00000000..5c4c18f4 --- /dev/null +++ b/src/00_Core/Actor/Navi/ActorNavi.cpp @@ -0,0 +1,32 @@ +#include "Actor/Navi/ActorNavi.hpp" +#include "Player/EquipHammer.hpp" + +ActorType ActorNavi::gType = ActorType(ActorTypeId_Navi, (ActorCreateFunc) ActorNavi::Create, NULL); +UnkStruct_ov000_020b8110 data_ov000_020ee1cc; + +ActorNavi *ActorNavi::Create() {} +UnkStruct_ov000_020b8110::UnkStruct_ov000_020b8110() : + UnkStruct_ov000_020beba8(7) {} +UnkStruct_ov000_020b8110::~UnkStruct_ov000_020b8110() {} +void UnkStruct_ov000_020b8110::vfunc_08(unk16 *param1) {} +void UnkStruct_ov000_020b8110::vfunc_18(s32 *param1) {} +void UnkStruct_ov000_020b8110::vfunc_14(u16 *param1) {} +void ActorNavi::func_ov000_020b8200() {} +void ActorNavi::vfunc_c4() {} +void ActorNavi::vfunc_c8() {} +void ActorNavi::vfunc_b4() {} +s32 ActorNavi::vfunc_b8() {} +void ActorNavi::vfunc_d4() {} +void ActorNavi::vfunc_d0() {} +void ActorNavi::SetActive(bool active) {} +void ActorNavi::vfunc_e0() {} +void ActorNavi::vfunc_d8() {} +void ActorNavi::vfunc_20(bool param1) {} +bool ActorNavi::vfunc_cc(unk32 *param1) {} +bool ActorNavi::vfunc_c0(Vec3p *param1) {} +void ActorNavi::vfunc_e8() {} +bool ActorNavi::vfunc_8c() {} +void ActorNavi::vfunc_ec() {} +EquipHammer *GetEquipHammer() {} +void ActorNavi::func_ov000_020b853c() {} +ActorNavi::~ActorNavi() {} diff --git a/src/04_Load/Actor/Navi/ActorNavi.cpp b/src/04_Load/Actor/Navi/ActorNavi.cpp new file mode 100644 index 00000000..12939c04 --- /dev/null +++ b/src/04_Load/Actor/Navi/ActorNavi.cpp @@ -0,0 +1,3 @@ +#include "Actor/Navi/ActorNavi.hpp" + +ActorNavi::ActorNavi() {}