summaryrefslogtreecommitdiff
path: root/src/00_Core/Map/MapManager.cpp
diff options
context:
space:
mode:
authorSammygoodTunes <sygamerz@gmail.com>2025-01-19 00:02:20 +0100
committerSammygoodTunes <sygamerz@gmail.com>2025-01-19 00:02:20 +0100
commit2450e474eae8aaf4d814b49a380c0cb8c8d2fdf1 (patch)
tree40ec39a66d378c476236347a34d3c51376fc028c /src/00_Core/Map/MapManager.cpp
parent11fcd1e4ea30212728c5646bec060c57fb0e0678 (diff)
Uncomment MapManager::func_ov00_0208210c
Uncomment most of MapManager::func_ov00_02082b3c Improve MapManager::func_ov00_02083840 Improve MapManager::func_ov00_02083fb0 Uncomment most of MapManager::func_ov00_02086a84 Add Vec3p_Scale
Diffstat (limited to 'src/00_Core/Map/MapManager.cpp')
-rw-r--r--src/00_Core/Map/MapManager.cpp321
1 files changed, 173 insertions, 148 deletions
diff --git a/src/00_Core/Map/MapManager.cpp b/src/00_Core/Map/MapManager.cpp
index 1993c556..f934cbfe 100644
--- a/src/00_Core/Map/MapManager.cpp
+++ b/src/00_Core/Map/MapManager.cpp
@@ -2,17 +2,41 @@
#include "Actor/Actor.hpp"
#include "Actor/ActorManager.hpp"
#include "Player/PlayerBase.hpp"
+#include "Save/AdventureFlags.hpp"
extern u32 func_ov000_02078bc4(unk32 param_1);
-extern void func_ov00_02078bf0(s32 *param_1, unk32 param_2);
+extern void func_ov000_02078bf0(s32 *param_1, unk32 param_2);
+extern s32 func_ov000_02078fe8(s32 *param_1);
+extern void func_ov000_020798bc(s32 *param_1, s32 param_2);
+extern void func_ov000_0208b13c(s32 *param_1);
extern void func_ov000_0208cc88(s32 *param1);
extern void func_ov000_0208d620(s32 *param_1);
extern void func_ov000_0208d680(s32 *param_1);
+extern void func_ov000_0208e6b0(s32 *param_1, Vec3p *param_2);
+extern void func_ov000_02093a1c(u32 *param_1, s32 *param_2);
+extern void func_ov000_02096324(s32 *param_1, s32 param_2);
extern s32 *func_ov000_02096418(s32 *param_1);
+extern void func_ov000_0209d6e8(s32 param_1, s32 param_2);
+extern unk32 func_ov000_020a5e9c(unk32 *param_1);
+extern void func_ov004_021024c4(MapManager *param_1, s32 param_2, bool param_3, s32 param_4);
+extern void func_ov004_02102770(s32 *param_1);
+extern void func_ov004_02102b28(s32 *param_1);
+extern void func_ov004_02102e3c(s32 *param_1);
+extern void func_ov004_02105578(ActorManager *param_1, u32 param_2);
+extern void func_ov004_02105608(ActorManager *param_1, unk32 param_2, unk32 param_3, unk32 param_4);
+extern s32 func_ov015_02129c14();
extern bool func_ov015_02129c44(s32 param_1);
+extern s32 *data_027e0c68;
+extern s32 *data_027e0d38;
+extern s32 *data_027e0d3c;
+extern s32 *data_027e0f64;
extern s32 *data_027e0f68;
+extern s32 *data_027e0f6c;
extern s32 *data_027e0f70;
+extern s32 *data_027e0f78;
+extern s32 *data_027e0f7c;
+extern s32 *data_027e103c;
ARM void MapManager::GetCourseDungeonProgress(CourseProgress *param_2) {
this->mCourse->GetDungeonProgress(param_2);
@@ -22,29 +46,29 @@ ARM void MapManager::func_ov00_020820fc(s32 param_2, unk32 param_3, unk32 param_
this->mCourse->func_ov00_0207ca28(param_2, param_3, param_4);
}
-unk8 MapManager::func_ov00_0208210c(unk32 param_2, unk32 param_3) {
- /* undefined *puVar1;
- undefined uVar2;
- undefined4 uVar3;
- int iVar4;
- undefined4 local_40;
- undefined4 local_3c;
- undefined4 local_38;
- undefined4 local_34;
- undefined2 local_30;
- undefined local_2e;
- undefined local_2d;
- undefined local_2c;
- undefined local_2b;
- undefined4 local_28;
- undefined4 local_24;
- undefined4 local_20;
- undefined4 local_1c;
- undefined2 local_18;
- undefined local_16;
- undefined local_15;
- undefined local_14;
- undefined local_13;
+unk8 MapManager::func_ov00_0208210c(unk32 param_2, unk32 *param_3) {
+ unk32 *puVar1;
+ unk8 uVar2;
+ unk32 uVar3;
+ s32 iVar4;
+ unk32 local_40;
+ unk32 local_3c;
+ unk32 local_38;
+ unk32 local_34;
+ unk16 local_30;
+ unk8 local_2e;
+ unk8 local_2d;
+ unk8 local_2c;
+ unk8 local_2b;
+ unk32 local_28;
+ unk32 local_24;
+ unk32 local_20;
+ unk32 local_1c;
+ unk16 local_18;
+ unk8 local_16;
+ unk8 local_15;
+ unk8 local_14;
+ unk8 local_13;
local_28 = 0x47;
local_24 = 0;
@@ -56,58 +80,58 @@ unk8 MapManager::func_ov00_0208210c(unk32 param_2, unk32 param_3) {
local_14 = 0;
local_13 = 0;
if (param_2 == 0) {
- FUN_overlay_d_0__02082348(param_1, &local_28);
- uVar3 = FUN_overlay_d_0__020a5e9c(&local_28);
- *param_3 = uVar3;
- *(undefined *) (param_3 + 1) = local_16;
- uVar2 = local_15;
+ this->func_ov00_02082348(&local_28);
+ uVar3 = func_ov000_020a5e9c(&local_28);
+ *param_3 = uVar3;
+ *(unk8 *) (param_3 + 1) = local_16;
+ uVar2 = local_15;
} else {
- *param_3 = 0xb;
- *(undefined *) (param_3 + 1) = 2;
- uVar2 = 4;
- }
- *(undefined *) ((int) param_3 + 5) = uVar2;
- uVar3 = FUN_overlay_d_0__020a5e9c(*(int *) (*(int *) PTR_PTR_overlay_d_0__02082300 + 0x28) + 0x1c);
- puVar1 = PTR_PTR_overlay_d_0__02082300;
- param_3[2] = uVar3;
- *(undefined *) (param_3 + 4) = *(undefined *) (*(int *) (*(int *) puVar1 + 0x28) + 0x2e);
- *(undefined2 *) (param_3 + 5) = *(undefined2 *) (*(int *) (*(int *) puVar1 + 0x28) + 0x36);
- iVar4 = *(int *) (*(int *) puVar1 + 0x28);
- param_3[6] = *(undefined4 *) (iVar4 + 0x38);
- param_3[7] = *(undefined4 *) (iVar4 + 0x3c);
- param_3[8] = *(undefined4 *) (iVar4 + 0x40);
- uVar3 = FUN_overlay_d_0__020a5e9c(*(int *) (*(int *) puVar1 + 0x28) + 0x44);
- param_3[3] = uVar3;
- puVar1 = PTR_PTR_overlay_d_0__02082300;
- *(undefined *) ((int) param_3 + 0x11) = *(undefined *) (*(int *) (*(int *) PTR_PTR_overlay_d_0__02082300 + 0x28) + 0x56);
- iVar4 = *(int *) (*(int *) puVar1 + 0x28);
- param_3[9] = *(undefined4 *) (iVar4 + 0x5c);
- param_3[10] = *(undefined4 *) (iVar4 + 0x60);
- param_3[0xb] = *(undefined4 *) (iVar4 + 100);
- *(undefined2 *) ((int) param_3 + 0x16) = *(undefined2 *) (*(int *) (*(int *) puVar1 + 0x28) + 0x68);
- iVar4 = *(int *) (*(int *) puVar1 + 0x28);
- local_40 = *(undefined4 *) (iVar4 + 0x70);
- local_3c = *(undefined4 *) (iVar4 + 0x74);
- local_38 = *(undefined4 *) (iVar4 + 0x78);
- local_34 = *(undefined4 *) (iVar4 + 0x7c);
- local_30 = *(undefined2 *) (iVar4 + 0x80);
- local_2e = *(undefined *) (iVar4 + 0x82);
- local_2d = *(undefined *) (iVar4 + 0x83);
- local_2c = *(undefined *) (iVar4 + 0x84);
- local_2b = *(undefined *) (iVar4 + 0x85);
- uVar3 = FUN_overlay_d_0__020a5e9c(&local_40);
- param_3[0x70] = uVar3;
- puVar1 = PTR_DWORD_overlay_d_0__02082304;
- *(undefined *) ((int) param_3 + 0x1be) = local_2e;
- *(undefined *) ((int) param_3 + 0x1bf) = local_2d;
- FUN_overlay_d_0__02096324(*(undefined4 *) puVar1, param_3);
- FUN_overlay_d_0__0209d6e8(*(undefined4 *) PTR_DWORD_overlay_d_0__02082308, param_3);
- if (param_1->mCourse->mType != 3) {
- *(undefined1 *) ((int) param_3 + 7) = param_1->field2_0x8;
- *(undefined1 *) (param_3 + 0x6f) = param_1->field3_0x9;
+ *param_3 = 0xb;
+ *(unk8 *) (param_3 + 1) = 2;
+ uVar2 = 4;
+ }
+ *(unk8 *) ((int) param_3 + 5) = uVar2;
+ uVar3 = func_ov000_020a5e9c(data_027e0d38 + 0x28) + 0x1c;
+ puVar1 = data_027e0d38;
+ param_3[2] = uVar3;
+ *(unk8 *) (param_3 + 4) = *(unk8 *) (*(s32 *) (*(s32 *) puVar1 + 0x28) + 0x2e);
+ *(unk16 *) (param_3 + 5) = *(unk16 *) (*(s32 *) (*(s32 *) puVar1 + 0x28) + 0x36);
+ iVar4 = *(s32 *) (*(int *) puVar1 + 0x28);
+ param_3[6] = *(unk32 *) (iVar4 + 0x38);
+ param_3[7] = *(unk32 *) (iVar4 + 0x3c);
+ param_3[8] = *(unk32 *) (iVar4 + 0x40);
+ uVar3 = func_ov000_020a5e9c(puVar1 + 0x28) + 0x44;
+ param_3[3] = uVar3;
+ puVar1 = data_027e0d38;
+ *(unk8 *) ((int) param_3 + 0x11) = *(unk8 *) (*(s32 *) (*(s32 *) data_027e0d38 + 0x28) + 0x56);
+ iVar4 = *(s32 *) (*(s32 *) puVar1 + 0x28);
+ param_3[9] = *(unk32 *) (iVar4 + 0x5c);
+ param_3[10] = *(unk32 *) (iVar4 + 0x60);
+ param_3[0xb] = *(unk32 *) (iVar4 + 100);
+ *(unk16 *) ((int) param_3 + 0x16) = *(unk16 *) (*(s32 *) (*(s32 *) puVar1 + 0x28) + 0x68);
+ iVar4 = *(s32 *) (*(s32 *) puVar1 + 0x28);
+ local_40 = *(unk32 *) (iVar4 + 0x70);
+ local_3c = *(unk32 *) (iVar4 + 0x74);
+ local_38 = *(unk32 *) (iVar4 + 0x78);
+ local_34 = *(unk32 *) (iVar4 + 0x7c);
+ local_30 = *(unk16 *) (iVar4 + 0x80);
+ local_2e = *(unk8 *) (iVar4 + 0x82);
+ local_2d = *(unk8 *) (iVar4 + 0x83);
+ local_2c = *(unk8 *) (iVar4 + 0x84);
+ local_2b = *(unk8 *) (iVar4 + 0x85);
+ uVar3 = func_ov000_020a5e9c(&local_40);
+ param_3[0x70] = uVar3;
+ puVar1 = data_027e0f70;
+ *(unk8 *) ((int) param_3 + 0x1be) = local_2e;
+ *(unk8 *) ((int) param_3 + 0x1bf) = local_2d;
+ func_ov000_02096324(puVar1, *param_3); // unsure if (s32 *param_1, s32 param_2) or (s32 param_1, s32 *param_2)
+ func_ov000_0209d6e8(*data_027e0f7c, *param_3);
+ if (this->mCourse->mType != CourseType_TempleOfTheOceanKing) {
+ *(unk8 *) ((int) param_3 + 7) = this->mUnk_08;
+ *(unk8 *) (param_3 + 0x6f) = this->mUnk_09;
return;
}
- return; */
+ return;
}
ARM void MapManager::func_ov00_0208230c(s32 *param_2) {
@@ -117,14 +141,14 @@ ARM void MapManager::func_ov00_0208230c(s32 *param_2) {
*(unk8 *) ((u32) param_2 + 0x13) = this->mUnk_0c;
}
-ARM void MapManager::func_ov00_02082348(unk32 param_2) {
+ARM void MapManager::func_ov00_02082348(unk32 *param_2) {
s32 var[4];
var[0] = 0x47;
var[1] = 0;
var[2] = 0;
var[3] = 0xfffffffe;
this->func_ov00_0208230c(var);
- func_ov00_02078bf0(var, param_2);
+ func_ov000_02078bf0(var, *param_2);
}
ARM void MapManager::func_ov00_020823a4(unk32 param_2) {
@@ -158,7 +182,7 @@ ARM void MapManager::MapData_vfunc_9c() {
ARM s32 MapManager::func_ov00_02082424() {
s32 var = this->mMap->vfunc_4c();
if (var == 2) {
- // var = this->mMap->func_ov015_02129c14(); // Does not exist.
+ var = func_ov015_02129c14(); // MapBase::GetUnk_19c_Unk_28 according to Ghidra
return var;
}
return 0;
@@ -444,48 +468,48 @@ ARM void MapManager::func_ov00_02082af4() {
}
bool MapManager::func_ov00_02082b3c(s32 param_2) {
- /* byte bVar1;
- undefined *puVar2;
- ushort uVar3;
- uint uVar4;
- undefined4 uVar5;
- uint in_r3;
+ u8 bVar1;
+ PlayerBase *puVar2;
+ u16 uVar3;
+ u32 uVar4;
+ unk32 uVar5;
+ u32 in_r3;
ActorManager *pAVar6;
- undefined4 local_18;
+ unk32 local_18;
- local_18 = in_r3;
- Course::FindMapGridPos((Vec2b *) &local_18, param_1->mCourse, (uint) * (byte *) (param_2 + 0x12));
- uVar4 = GetCourseData_Unk_1c(param_1);
- if (((((local_18 & 0xff) == uVar4) && (uVar4 = GetCourseData_Unk_1d(param_1), (local_18 >> 8 & 0xff) == uVar4)) &&
- ((*(int *) (param_2 + 8) != 1 || (*(int *) (*(int *) PTR_PTR_overlay_d_0__02082ce0 + 0x14) != 1)))) &&
+ local_18 = in_r3; // what's the point of that?
+ this->mCourse->FindMapGridPos((Vec2b *) &local_18, this->mCourse, (u32) * (u8 *) (param_2 + 0x12));
+ uVar4 = this->GetCurrentMapPosX();
+ if (((((local_18 & 0xff) == uVar4) && (uVar4 = this->GetCurrentMapPosY(), (local_18 >> 8 & 0xff) == uVar4)) &&
+ ((*(s32 *) (param_2 + 8) != 1 || (*(s32 *) (*(s32 *) data_027e0d38 + 0x14) != 1)))) &&
(*(char *) (param_2 + 0x15) == '\0'))
{
- AdventureFlags::FUN_overlay_d_0__020976c8(*(AdventureFlags **) PTR_gAdventureFlags_overlay_d_0__02082ce4);
- puVar2 = PTR_gPlayer_overlay_d_0__02082d00;
- param_1->field6_0xc = *(undefined *) (param_2 + 0x13);
- (**(code **) (**(int **) puVar2 + 0x38))(*(int **) puVar2, *(undefined *) (param_2 + 0x13), 0);
- UnkStruct_027e0c68::FUN_overlay_d_4__02106db8((UnkStruct_027e0c68 *) PTR_DWORD_overlay_d_0__02082d04);
- (**(code **) (param_1->mMap->vtable + 0x18))();
+ gAdventureFlags->func_ov00_020976c8();
+ puVar2 = gPlayer;
+ this->mUnk_0c = *(unk32 *) (param_2 + 0x13);
+ // (**(code **) (**(int **) puVar2 + 0x38))(*(int **) puVar2, *(unk32 *) (param_2 + 0x13), 0);
+ // UnkStruct_027e0c68::FUN_overlay_d_4__02106db8((UnkStruct_027e0c68 *) PTR_DWORD_overlay_d_0__02082d04);
+ this->mMap->vfunc_18();
} else {
- AdventureFlags::FUN_overlay_d_0__020976c8(*(AdventureFlags **) PTR_gAdventureFlags_overlay_d_0__02082ce4);
- FUN_overlay_d_0__0208b13c(*(undefined4 *) PTR_DWORD_overlay_d_0__02082ce8);
- pAVar6 = *PTR_gActorManager_overlay_d_0__02082cec;
- uVar5 = FUN_overlay_d_0__02082d08(param_1);
- FUN_overlay_d_4__02105608(pAVar6, local_18 & 0xff, local_18 >> 8 & 0xff, uVar5);
- (**(code **) (param_1->mMap->vtable + 0x2c))();
- FUN_overlay_d_4__02102b28(*(undefined4 *) PTR_DWORD_overlay_d_0__02082cf0);
- FUN_overlay_d_4__02102770(*(undefined4 *) PTR_DWORD_overlay_d_0__02082cf4);
- FUN_overlay_d_4__02102e3c(*(undefined4 *) PTR_DWORD_overlay_d_0__02082cf8);
- bVar1 = *(byte *) (param_2 + 0x12);
- uVar3 = Course::FindCurrentMapData_Unk_04(param_1->mCourse);
- uVar4 = Course::FindMapData_Unk_04(param_1->mCourse, (uint) bVar1);
- (param_1->mCourse->mCurrMapPos).x = (byte) local_18;
- (param_1->mCourse->mCurrMapPos).y = local_18._1_1_;
- FUN_overlay_d_4__021024c4(param_1, param_2, uVar3 != uVar4, 0);
- FUN_overlay_d_4__02105578(*PTR_gActorManager_overlay_d_0__02082cec, (uint) * (byte *) (param_2 + 0x12));
- UnkStruct_027e0103c::thunk_FUN_overlay_d_0__020cf7e8(*PTR_PTR_overlay_d_0__02082cfc);
- }
- return true; */
+ gAdventureFlags->func_ov00_020976c8();
+ func_ov000_0208b13c(data_027e0f64);
+ pAVar6 = gActorManager;
+ uVar5 = this->func_ov00_02082d08();
+ func_ov004_02105608(pAVar6, local_18 & 0xff, local_18 >> 8 & 0xff, uVar5);
+ this->mMap->vfunc_2c();
+ func_ov004_02102b28(data_027e0f68);
+ func_ov004_02102770(data_027e0f6c);
+ func_ov004_02102e3c(data_027e0f78);
+ bVar1 = *(u8 *) (param_2 + 0x12);
+ uVar3 = this->mCourse->FindCurrentMapData_Unk_04();
+ uVar4 = this->mCourse->FindMapData_Unk_04((u32) bVar1);
+ (this->mCourse->mCurrMapPos).x = (u8) local_18;
+ (this->mCourse->mCurrMapPos).y = (u8) * (&local_18 + 0x4); // I assume this is what Ghidra means by "local_18._1_1_"
+ func_ov004_021024c4(this, param_2, uVar3 != uVar4, 0);
+ func_ov004_02105578(gActorManager, (u32) * (u8 *) (param_2 + 0x12));
+ // UnkStruct_027e0103c::thunk_FUN_overlay_d_0__020cf7e8(*PTR_PTR_overlay_d_0__02082cfc);
+ }
+ return true;
}
ARM u8 MapManager::func_ov00_02082d08() {
@@ -949,19 +973,19 @@ ARM bool MapManager::func_ov00_02083790(s32 param_2) {
}
ARM bool MapManager::func_ov00_02083840(s32 param_2) {
- unk8 *puVar1;
- unk8 *puVar2;
+ s32 *puVar1;
+ s32 *puVar2;
bool bVar3;
s32 iVar4;
- // puVar2 = PTR_DWORD_overlay_d_0__020838c0;
- // puVar1 = PTR_DWORD_overlay_d_0__020838bc;
+ puVar2 = data_027e0d3c;
+ puVar1 = data_027e0f64;
if (param_2 != 0) {
- // *(unk32 *) (*(int *) (*(int *) PTR_DWORD_overlay_d_0__020838bc + 8) + 0x1b4) = 0xffffffff;
- // *(unk32 *) (*(int *) (*(int *) puVar1 + 4) + 0x1b4) = 0xffffffff;
- // iVar4 = FUN_overlay_d_0__02078fe8(*(unk32 *) puVar2);
+ *(unk32 *) (*(int *) (*(int *) data_027e0f64 + 8) + 0x1b4) = 0xffffffff;
+ *(unk32 *) (*(int *) (*(int *) puVar1 + 4) + 0x1b4) = 0xffffffff;
+ iVar4 = func_ov000_02078fe8(puVar2);
if (-1 < iVar4) {
- // FUN_overlay_d_0__020798bc(*(unk32 *) PTR_DWORD_overlay_d_0__020838c0, 0x10);
+ func_ov000_020798bc(data_027e0d3c, 0x10);
gActorManager->func_ov00_020c3ce8(param_2, false);
}
bVar3 = this->mMap->TriggerOfType_vfunc_10(param_2);
@@ -1243,7 +1267,7 @@ unk8 MapManager::func_ov00_02083fb0(u32 *param_1, MapManager *param_2, Vec3p *pa
}
dVar2 = param_2->MapData_vfunc_70(param_3);
if (dVar2 != 0xffff) {
- // FUN_overlay_d_0__02093a1c(param_1, *(unk32 *) PTR_DWORD_overlay_d_0__02084020);
+ func_ov000_02093a1c(param_1, data_027e0f6c);
return;
}
*param_1 = 0;
@@ -3094,10 +3118,10 @@ bool MapManager::func_ov00_02086284(s32 *param_2, Vec3p *param_3, Vec3p *param_4
bool MapManager::func_ov00_02086a84(s32 *param_2, Vec3p *param_3, Vec3p *param_4, s32 param_5, s32 param_6, unk32 param_7,
Vec3p *param_8, Vec3p *param_9) {
- /* bool bVar1;
+ bool bVar1;
int iVar2;
Vec3p VStack_a0;
- undefined auStack_94[24];
+ unk32 auStack_94[24];
Vec3p local_7c;
int local_70[5];
Vec3p local_5c;
@@ -3107,33 +3131,34 @@ bool MapManager::func_ov00_02086a84(s32 *param_2, Vec3p *param_3, Vec3p *param_4
int local_2c;
Vec3p VStack_28;
- Vec3p::Sub(param_3, param_4, &VStack_28);
- iVar2 = (**(code **) (*param_2 + 8))();
+ Vec3p_Sub(param_3, param_4, &VStack_28);
+ // iVar2 = (**(code **) (*param_2 + 8))();
if (iVar2 == 0) {
- (**(code **) (*param_2 + 0x24))(param_2, &local_38);
+ //(**(code **) (*param_2 + 0x24))(param_2, &local_38);
if (param_6 == 0) {
local_44.x = local_38.x;
local_44.y = local_38.y;
local_44.z = local_38.z;
- iVar2 = Vec3p::Distance(param_3, &local_44);
- Vec3p::Sub(param_3, &local_38, &local_44);
- bVar1 = Vec3p::Normalize(&local_44);
+ iVar2 = Vec3p_Distance(param_3, &local_44);
+ Vec3p_Sub(param_3, &local_38, &local_44);
+ // bVar1 = Vec3p_Normalize(&local_44); // This function needs to be declared and defined separately to the other
+ // Vec3p_Normalize with the return type as bool.
if (!bVar1) {
local_44.x = 0;
local_44.y = 0;
local_44.z = 0x1000;
}
- Vec3p::Scale(&local_44, (local_2c + param_5) - iVar2);
- Vec3p::Add(param_3, &local_44, param_8);
+ Vec3p_Scale(&local_44, (local_2c + param_5) - iVar2);
+ Vec3p_Add(param_3, &local_44, param_8);
} else {
- Vec3p::Scale(&VStack_28, param_6);
- Vec3p::Add(param_4, &VStack_28, param_8);
+ Vec3p_Scale(&VStack_28, param_6);
+ Vec3p_Add(param_4, &VStack_28, param_8);
}
local_5c.x = local_38.x;
local_5c.y = local_38.y;
local_5c.z = local_38.z;
- Vec3p::Sub(param_4, &local_5c, &local_50);
- Vec3p::Normalize(&local_50);
+ Vec3p_Sub(param_4, &local_5c, &local_50);
+ // Vec3p_Normalize(&local_50);
param_9->x = local_50.x;
param_9->y = local_50.y;
param_9->z = local_50.z;
@@ -3143,25 +3168,25 @@ bool MapManager::func_ov00_02086a84(s32 *param_2, Vec3p *param_3, Vec3p *param_4
if (iVar2 != 2) {
return false;
}
- (**(code **) (*param_2 + 0x2c))(param_2, auStack_94);
- FUN_overlay_d_0__0208e6b0(auStack_94, &VStack_a0);
- Vec3p::Scale(&VStack_28, param_6);
- Vec3p::Add(param_4, &VStack_28, param_8);
- Vec3p::Sub(param_4, &VStack_a0, param_9);
- Vec3p::Normalize(param_9);
+ //(**(code **) (*param_2 + 0x2c))(param_2, auStack_94);
+ func_ov000_0208e6b0(auStack_94, &VStack_a0);
+ Vec3p_Scale(&VStack_28, param_6); // Doesn't exist.
+ Vec3p_Add(param_4, &VStack_28, param_8);
+ Vec3p_Sub(param_4, &VStack_a0, param_9);
+ // Vec3p_Normalize(param_9);
return false;
}
local_70[3] = 0;
local_70[0] = 0;
local_70[1] = 0;
local_70[2] = 0;
- (**(code **) (*param_2 + 0x28))(param_2, local_70);
- Vec3p::Scale(&VStack_28, param_6);
- Vec3p::Add(param_4, &VStack_28, param_8);
+ // (**(code **) (*param_2 + 0x28))(param_2, local_70);
+ // Vec3p_Scale(&VStack_28, param_6); // Doesn't exist.
+ Vec3p_Add(param_4, &VStack_28, param_8);
local_7c.x = local_70[0];
local_7c.z = local_70[2];
local_7c.y = param_4->y;
- Vec3p::Sub(param_4, &local_7c, param_9);
- Vec3p::Normalize(param_9);
- return false; */
+ Vec3p_Sub(param_4, &local_7c, param_9);
+ // Vec3p_Normalize(param_9);
+ return false;
}