diff --git a/config/eur/arm9/overlays/ov063/relocs.txt b/config/eur/arm9/overlays/ov063/relocs.txt index 335e16f65..c3ba25339 100644 --- a/config/eur/arm9/overlays/ov063/relocs.txt +++ b/config/eur/arm9/overlays/ov063/relocs.txt @@ -1064,7 +1064,7 @@ from:0x0215fdd8 kind:arm_call to:0x0209c9a8 module:overlay(0) from:0x0215fde8 kind:arm_call to:0x0207c018 module:overlay(0) from:0x0215fe60 kind:load to:0x02163820 module:overlay(63) add:0x8 from:0x0215fe64 kind:load to:0x02163858 module:overlay(63) add:0x8 -from:0x0215fe68 kind:load to:0x02163928 module:overlay(63) +from:0x0215fe68 kind:load to:0x02163920 module:overlay(63) add:0x8 from:0x0215fe84 kind:load to:0x02163910 module:overlay(63) from:0x0215fea8 kind:load to:0x0204a088 module:main from:0x0215feac kind:load to:0x020611dc module:overlay(0) @@ -1079,8 +1079,8 @@ from:0x0215ffb0 kind:arm_call to:0x0206082c module:overlay(0) from:0x0215ffb8 kind:arm_call to:0x02060bac module:overlay(0) from:0x0215ffcc kind:arm_call to:0x0206082c module:overlay(0) from:0x0215ffd4 kind:arm_call to:0x02060bac module:overlay(0) -from:0x0215ffe0 kind:load to:0x02163944 module:overlay(63) -from:0x0215ffe4 kind:load to:0x02163980 add:0x8 module:overlay(63) +from:0x0215ffe0 kind:load to:0x0216393c module:overlay(63) add:0x8 +from:0x0215ffe4 kind:load to:0x0216393c add:0x4c module:overlay(63) from:0x0215ffe8 kind:load to:0x02164604 module:overlay(63) from:0x0215ffec kind:load to:0x021646d8 module:overlay(63) from:0x0215fff0 kind:load to:0x02164514 module:overlay(63) diff --git a/config/eur/arm9/overlays/ov063/symbols.txt b/config/eur/arm9/overlays/ov063/symbols.txt index bd3c973be..fa5f34741 100644 --- a/config/eur/arm9/overlays/ov063/symbols.txt +++ b/config/eur/arm9/overlays/ov063/symbols.txt @@ -481,9 +481,8 @@ data_ov063_021638fc kind:data(any) addr:0x021638fc data_ov063_02163900 kind:data(any) addr:0x02163900 data_ov063_02163904 kind:data(any) addr:0x02163904 data_ov063_02163910 kind:data(any) addr:0x02163910 -data_ov063_02163928 kind:data(any) addr:0x02163928 -data_ov063_02163944 kind:data(any) addr:0x02163944 -_ZTV19data_ov063_02163980 kind:data(any) addr:0x02163980 +_ZTV23MapObjectProfileUnkWLMS kind:data(any) addr:0x02163920 +_ZTV16MapObjectUnkWLMS kind:data(any) addr:0x0216393c data_ov063_021639c4 kind:data(any) addr:0x021639c4 local _ZTV24UnkStruct_ov063_021639e4 kind:data(any) addr:0x021639dc _ZTV28MapObjectProfileUnkLTRW_Base kind:data(any) addr:0x021639f4 diff --git a/config/eur/arm9/overlays/ov094/symbols.txt b/config/eur/arm9/overlays/ov094/symbols.txt index d2980f475..9b0515c48 100644 --- a/config/eur/arm9/overlays/ov094/symbols.txt +++ b/config/eur/arm9/overlays/ov094/symbols.txt @@ -349,7 +349,7 @@ _ZN16MapObjectUnkFNCE19func_ov094_02170db4Ev kind:function(arm,size=0x5c) addr:0 _ZN16MapObjectUnkFNCED1Ev kind:function(arm,size=0x20) addr:0x02170e10 _ZN16MapObjectUnkFNCED0Ev kind:function(arm,size=0x28) addr:0x02170e30 _ZN23MapObjectProfileUnkFNCED1Ev kind:function(arm,size=0x14) addr:0x02170e58 -func_ov094_02170e6c kind:function(arm,size=0xcc) addr:0x02170e6c +_ZN24UnkStruct_ov094_02177ff8C2Ev kind:function(arm,size=0xcc) addr:0x02170e6c func_ov094_02170f38 kind:function(arm,size=0x40) addr:0x02170f38 func_ov094_02170f78 kind:function(arm,size=0x4) addr:0x02170f78 func_ov094_02170f7c kind:function(arm,size=0x24) addr:0x02170f7c diff --git a/include/MapObject/MapObjectUnkWLMS.hpp b/include/MapObject/MapObjectUnkWLMS.hpp index a83392e61..6dbe9387f 100644 --- a/include/MapObject/MapObjectUnkWLMS.hpp +++ b/include/MapObject/MapObjectUnkWLMS.hpp @@ -1,20 +1,19 @@ -//! TODO: This file was generated automatically and might contain errors - #pragma once #include "MapObject/MapObject.hpp" #include "MapObject/MapObjectProfile.hpp" +#include "MapObject/MapObjectUnkSTAT.hpp" +#include "Unknown/UnkStruct_ov094_02177ff8.hpp" #include "global.h" -#include "types.h" -class MapObjectUnkWLMS : public MapObject { +class MapObjectUnkWLMS : public UnkStruct_ov094_02177ff8 { public: /* 00 (base) */ /* 40 */ MapObjectUnkWLMS(); - /* 30 */ virtual ~MapObjectUnkWLMS() override; + /* 38 */ virtual void vfunc_38(void) override; void func_ov063_0215fe74(void); void func_ov063_0215fe88(void); @@ -34,12 +33,11 @@ class MapObjectUnkWLMS : public MapObject { void func_ov063_0216095c(void); }; -class MapObjectProfileUnkWLMS : public MapObjectProfile { +class MapObjectProfileUnkWLMS : public MapObjectProfileUnkSTAT_Base { public: /* 00 (base) */ MapObjectProfileUnkWLMS(); - ~MapObjectProfileUnkWLMS(); /* 0C */ virtual MapObject *Create(); diff --git a/include/Unknown/UnkStruct_ov094_02177ff8.hpp b/include/Unknown/UnkStruct_ov094_02177ff8.hpp new file mode 100644 index 000000000..48f527bf6 --- /dev/null +++ b/include/Unknown/UnkStruct_ov094_02177ff8.hpp @@ -0,0 +1,13 @@ +#include "FileSelect/FileSelectUnkDraw.hpp" +#include "MapObject/MapObject.hpp" + +struct UnkStruct_ov094_02177ff8 : public MapObject, public FileSelectManager_UnkDrawBase { +public: + /* 00 (vtable) */ + + UnkStruct_ov094_02177ff8(); + + /* 0C */ virtual void vfunc_0C(void) override; + /* 30 */ virtual ~UnkStruct_ov094_02177ff8() override; + /* 38 */ virtual void vfunc_38(void); +}; diff --git a/src/063_Shrine/MapObject/MapObjectUnkWLMS.cpp b/src/063_Shrine/MapObject/MapObjectUnkWLMS.cpp index 5e7b13ed9..e5e971ba6 100644 --- a/src/063_Shrine/MapObject/MapObjectUnkWLMS.cpp +++ b/src/063_Shrine/MapObject/MapObjectUnkWLMS.cpp @@ -2,18 +2,32 @@ #include "MapObject/MapObjectUnkWLMS.hpp" #include "System/SysNew.hpp" +#include "flags.h" +#include "nitro/math.h" DECL_PROFILE(MapObjectProfileUnkWLMS); MapObject *MapObjectProfileUnkWLMS::Create() { - return new(HeapIndex_2) MapObjectUnkWLMS(); + return new(HeapIndex_ITCM) MapObjectUnkWLMS(); } MapObjectProfileUnkWLMS::MapObjectProfileUnkWLMS() : - MapObjectProfile(MapObjectId_WLMS) {} + MapObjectProfileUnkSTAT_Base(MapObjectId_WLMS, MapObjectId_WLMS) { + mUnk_D4.mUnk_08 = 0x2bc07006; + VecFx32_Init(0, 0, 0, &mUnk_D4.mUnk_0C); + mUnk_D4.mUnk_18.x = 0x800; + mUnk_D4.mUnk_18.y = 0x1000; + UNSET_FLAG2(mUnk_D4.mUnk_04, 1); + mUnk_14 = 0x574c4d50; + mUnk_0C = 0x1B33; + mUnk_06 = -1; + SET_FLAG2(mUnk_1E, 0); +} MapObjectUnkWLMS::MapObjectUnkWLMS() {} +void MapObjectUnkWLMS::vfunc_38(void) {} + void MapObjectUnkWLMS::func_ov063_0215fe74(void) {} void MapObjectUnkWLMS::func_ov063_0215fe88(void) {} void MapObjectUnkWLMS::func_ov063_0215feb0(void) {} @@ -30,6 +44,3 @@ void MapObjectUnkWLMS::func_ov063_021608a8(void) {} void MapObjectUnkWLMS::func_ov063_02160918(void) {} void MapObjectUnkWLMS::func_ov063_02160938(void) {} void MapObjectUnkWLMS::func_ov063_0216095c(void) {} - -MapObjectUnkWLMS::~MapObjectUnkWLMS() {} -MapObjectProfileUnkWLMS::~MapObjectProfileUnkWLMS() {}