Decompile MapManager::func_ov00_020836bc

Decompile MapManager::GetTriggerBoundingBoxes

Decompile MapManager::func_ov00_020836dc (60%)

Decompile MapManager::IsTriggerTypeOverlapped

Decompile MapManager::GetOverlappingTrigger

Decompile MapManager::func_ov00_02083560

gPlayerPos type Vec3p* from Vec3p
This commit is contained in:
SammygoodTunes
2025-01-12 19:50:41 +01:00
parent acc72371ed
commit a4a9bb5dfd
7 changed files with 72 additions and 35 deletions
+7 -7
View File
@@ -566,23 +566,23 @@ _ZN10MapManager12GetMapCenterEP5Vec3p kind:function(arm,size=0x20) addr:0x208344
_ZN10MapManager18func_ov00_0208346cEP4AABB kind:function(arm,size=0x50) addr:0x208346c
_ZN10MapManager18func_ov00_020834bcEP5Vec3pii kind:function(arm,size=0x68) addr:0x20834bc
_ZN10MapManager18func_ov00_02083524EP5Vec3pii kind:function(arm,size=0x3c) addr:0x2083524
_ZN10MapManager18func_ov00_02083560EiPS_j kind:function(arm,size=0x10) addr:0x2083560
_ZN10MapManager18func_ov00_02083560EP5Vec2bPS_j kind:function(arm,size=0x10) addr:0x2083560
_ZN10MapManager18func_ov00_02083570Eii kind:function(arm,size=0x18) addr:0x2083570
_ZN10MapManager18func_ov00_02083588Ev kind:function(arm,size=0x1c) addr:0x2083588
_ZN10MapManager18func_ov00_020835a4Ev kind:function(arm,size=0x10) addr:0x20835a4
_ZN10MapManager18func_ov00_020835b4Ev kind:function(arm,size=0x10) addr:0x20835b4
_ZN10MapManager18func_ov00_020835c4Eii kind:function(arm,size=0x20) addr:0x20835c4
_ZN10MapManager18func_ov00_020835e4EiPiS0_ kind:function(arm,size=0x10) addr:0x20835e4
_ZN10MapManager18func_ov00_020835e4EiPiPc kind:function(arm,size=0x10) addr:0x20835e4
_ZN10MapManager18func_ov00_020835f4Ei kind:function(arm,size=0x10) addr:0x20835f4
_ZN10MapManager18func_ov00_02083604Ei kind:function(arm,size=0x10) addr:0x2083604
_ZN10MapManager18func_ov00_02083614Ei kind:function(arm,size=0x10) addr:0x2083614
_ZN10MapManager14GetEntrancePosEP5Vec3pi kind:function(arm,size=0x40) addr:0x2083624
_ZN10MapManager18func_ov00_02083664EP5Vec3pi kind:function(arm,size=0x58) addr:0x2083664
_ZN10MapManager18func_ov00_020836bcEjPi kind:function(arm,size=0x10) addr:0x20836bc
_ZN10MapManager23GetTriggerBoundingBoxesEjP4AABBj kind:function(arm,size=0x10) addr:0x20836cc
_ZN10MapManager18func_ov00_020836dcEii kind:function(arm,size=0x94) addr:0x20836dc
_ZN10MapManager18func_ov00_02083770Eji kind:function(arm,size=0x10) addr:0x2083770
_ZN10MapManager18func_ov00_02083780Ei kind:function(arm,size=0x10) addr:0x2083780
_ZN10MapManager18func_ov00_020836bcEiP4AABB kind:function(arm,size=0x10) addr:0x20836bc
_ZN10MapManager23GetTriggerBoundingBoxesEiP4AABBi kind:function(arm,size=0x10) addr:0x20836cc
_ZN10MapManager18func_ov00_020836dcEjj kind:function(arm,size=0x94) addr:0x20836dc
_ZN10MapManager23IsTriggerTypeOverlappedEjP5Vec3p kind:function(arm,size=0x10) addr:0x2083770
_ZN10MapManager21GetOverlappingTriggerEP5Vec3p kind:function(arm,size=0x10) addr:0x2083780
_ZN10MapManager18func_ov00_02083790Ei kind:function(arm,size=0xb0) addr:0x2083790
_ZN10MapManager18func_ov00_02083840Ei kind:function(arm,size=0x88) addr:0x2083840
_ZN10MapManager18func_ov00_020838c8Ei kind:function(arm,size=0x10) addr:0x20838c8
+7 -7
View File
@@ -566,23 +566,23 @@ _ZN10MapManager12GetMapCenterEP5Vec3p kind:function(arm,size=0x20) addr:0x20833e
_ZN10MapManager18func_ov00_0208346cEP4AABB kind:function(arm,size=0x50) addr:0x208340c
_ZN10MapManager18func_ov00_020834bcEP5Vec3pii kind:function(arm,size=0x68) addr:0x208345c
_ZN10MapManager18func_ov00_02083524EP5Vec3pii kind:function(arm,size=0x3c) addr:0x20834c4
_ZN10MapManager18func_ov00_02083560EiPS_j kind:function(arm,size=0x10) addr:0x2083500
_ZN10MapManager18func_ov00_02083560EP5Vec2bPS_j kind:function(arm,size=0x10) addr:0x2083500
_ZN10MapManager18func_ov00_02083570Eii kind:function(arm,size=0x18) addr:0x2083510
_ZN10MapManager18func_ov00_02083588Ev kind:function(arm,size=0x1c) addr:0x2083528
_ZN10MapManager18func_ov00_020835a4Ev kind:function(arm,size=0x10) addr:0x2083544
_ZN10MapManager18func_ov00_020835b4Ev kind:function(arm,size=0x10) addr:0x2083554
_ZN10MapManager18func_ov00_020835c4Eii kind:function(arm,size=0x20) addr:0x2083564
_ZN10MapManager18func_ov00_020835e4EiPiS0_ kind:function(arm,size=0x10) addr:0x2083584
_ZN10MapManager18func_ov00_020835e4EiPiPc kind:function(arm,size=0x10) addr:0x2083584
_ZN10MapManager18func_ov00_020835f4Ei kind:function(arm,size=0x10) addr:0x2083594
_ZN10MapManager18func_ov00_02083604Ei kind:function(arm,size=0x10) addr:0x20835a4
_ZN10MapManager18func_ov00_02083614Ei kind:function(arm,size=0x10) addr:0x20835b4
_ZN10MapManager14GetEntrancePosEP5Vec3pi kind:function(arm,size=0x40) addr:0x20835c4
_ZN10MapManager18func_ov00_02083664EP5Vec3pi kind:function(arm,size=0x58) addr:0x2083604
_ZN10MapManager18func_ov00_020836bcEjPi kind:function(arm,size=0x10) addr:0x208365c
_ZN10MapManager23GetTriggerBoundingBoxesEjP4AABBj kind:function(arm,size=0x10) addr:0x208366c
_ZN10MapManager18func_ov00_020836dcEii kind:function(arm,size=0x94) addr:0x208367c
_ZN10MapManager18func_ov00_02083770Eji kind:function(arm,size=0x10) addr:0x2083710
_ZN10MapManager18func_ov00_02083780Ei kind:function(arm,size=0x10) addr:0x2083720
_ZN10MapManager18func_ov00_020836bcEiP4AABB kind:function(arm,size=0x10) addr:0x208365c
_ZN10MapManager23GetTriggerBoundingBoxesEiP4AABBi kind:function(arm,size=0x10) addr:0x208366c
_ZN10MapManager18func_ov00_020836dcEjj kind:function(arm,size=0x94) addr:0x208367c
_ZN10MapManager23IsTriggerTypeOverlappedEjP5Vec3p kind:function(arm,size=0x10) addr:0x2083710
_ZN10MapManager21GetOverlappingTriggerEP5Vec3p kind:function(arm,size=0x10) addr:0x2083720
_ZN10MapManager18func_ov00_02083790Ei kind:function(arm,size=0xb0) addr:0x2083730
_ZN10MapManager18func_ov00_02083840Ei kind:function(arm,size=0x88) addr:0x20837e0
_ZN10MapManager18func_ov00_020838c8Ei kind:function(arm,size=0x10) addr:0x2083868
+3 -3
View File
@@ -201,9 +201,9 @@ public:
unk8 func_ov00_0207f934();
unk8 func_ov00_0207f948(unk32 param_2);
void AddTrigger(TriggerParams *param_2);
s32 GetTriggerBoundingBox(unk32 param_2, AABB *param_3);
unk8 GetTriggerBoundingBoxes(unk32 param_2, AABB *param_3, unk32 param_4);
unk32 GetOverlappingTrigger(Vec3p *param_2);
s32 GetTriggerBoundingBox(s32 param_2, AABB *param_3);
s32 GetTriggerBoundingBoxes(s32 param_2, AABB *param_3, s32 param_4);
bool GetOverlappingTrigger(Vec3p *param_2);
unk8 FindTrigger(unk32 type);
unk8 GetOverlappingTriggers(Vec3p *param_2, TriggerBase **triggers, unk32 capacity);
bool IsTriggerTypeOverlapped(unk32 type, Vec3p *param_3);
+6 -6
View File
@@ -118,7 +118,7 @@ public:
void func_ov00_0208346c(AABB *param_2);
void func_ov00_020834bc(Vec3p *param_2, unk32 param_3, unk32 param_4);
void func_ov00_02083524(Vec3p *param_2, unk32 param_3, unk32 param_4);
static void func_ov00_02083560(unk32 param_1, MapManager *param_2, u32 param_3);
static void func_ov00_02083560(Vec2b *param_1, MapManager *param_2, u32 param_3);
u8 func_ov00_02083570(unk32 param_2, unk32 param_3);
unk32 func_ov00_02083588();
unk32 func_ov00_020835a4();
@@ -130,11 +130,11 @@ public:
unk8 func_ov00_02083614(s32 param_2);
bool GetEntrancePos(Vec3p *param_2, unk32 entranceId);
bool func_ov00_02083664(Vec3p *param_2, unk32 entranceId);
s32 func_ov00_020836bc(u32 param_2, unk32 *param_3);
s32 GetTriggerBoundingBoxes(u32 param_2, AABB *param_3, u32 param_4);
unk8 func_ov00_020836dc(unk32 param_2, unk32 param_3);
bool func_ov00_02083770(u32 param_2, unk32 param_3);
bool func_ov00_02083780(unk32 param_2);
s32 func_ov00_020836bc(s32 param_2, AABB *param_3);
s32 GetTriggerBoundingBoxes(s32 param_2, AABB *param_3, s32 param_4);
bool func_ov00_020836dc(u32 param_2, u32 actorId);
bool IsTriggerTypeOverlapped(u32 param_2, Vec3p *param_3);
bool GetOverlappingTrigger(Vec3p *param_2);
bool func_ov00_02083790(unk32 param_2);
unk8 func_ov00_02083840(unk32 param_2);
bool func_ov00_020838c8(s32 param_2);
+1 -1
View File
@@ -60,6 +60,6 @@ public:
};
extern PlayerBase *gPlayer;
extern Vec3p gPlayerPos;
extern Vec3p *gPlayerPos;
extern Vec3p gPlayerVel;
extern s16 gPlayerAngle;
+3 -3
View File
@@ -68,10 +68,10 @@ unk8 MapBase::func_ov00_0207f934() {}
unk8 MapBase::func_ov00_0207f948(unk32 param_2) {}
void MapBase::AddTrigger(TriggerParams *param_2) {}
void TriggerBase::vfunc_08() {}
s32 MapBase::GetTriggerBoundingBox(unk32 param_2, AABB *param_3) {}
s32 MapBase::GetTriggerBoundingBox(s32 param_2, AABB *param_3) {}
bool TriggerBase::GetBoundingBox() {}
unk8 MapBase::GetTriggerBoundingBoxes(unk32 param_2, AABB *param_3, unk32 param_4) {}
unk32 MapBase::GetOverlappingTrigger(Vec3p *param_2) {}
s32 MapBase::GetTriggerBoundingBoxes(s32 param_2, AABB *param_3, s32 param_4) {}
bool MapBase::GetOverlappingTrigger(Vec3p *param_2) {}
bool TriggerBase::Overlaps() {}
unk8 MapBase::FindTrigger(unk32 type) {}
unk8 MapBase::GetOverlappingTriggers(Vec3p *param_2, TriggerBase **triggers, unk32 capacity) {}
+45 -8
View File
@@ -1,4 +1,7 @@
#include "Map/MapManager.hpp"
#include "Actor/Actor.hpp"
#include "Actor/ActorManager.hpp"
#include "Player/PlayerBase.hpp"
void MapManager::func_ov00_020820ec(unk32 *param_2) {}
void MapManager::func_ov00_020820fc(s32 param_2, unk32 param_3, unk32 param_4) {}
@@ -183,7 +186,9 @@ ARM void MapManager::func_ov00_02083524(Vec3p *param_2, unk32 param_3, unk32 par
param_2->z = mapCenter->z;
}
void MapManager::func_ov00_02083560(unk32 param_1, MapManager *param_2, u32 param_3) {}
void MapManager::func_ov00_02083560(Vec2b *param_1, MapManager *param_2, u32 param_3) {
param_2->mCourse->FindMapGridPos(param_1, param_2->mCourse, param_3);
}
ARM u8 MapManager::func_ov00_02083570(unk32 param_2, unk32 param_3) {
return this->mCourse->mMapGrid[param_2][param_3];
@@ -223,8 +228,8 @@ ARM unk8 MapManager::func_ov00_02083614(s32 param_2) {
ARM bool MapManager::GetEntrancePos(Vec3p *pos, unk32 entranceId) {
Vec3p *entrancePos = (Vec3p *) this->mMap->FindEntrance(entranceId);
int y = entrancePos->y;
int z = entrancePos->z;
s32 y = entrancePos->y;
s32 z = entrancePos->z;
pos->x = entrancePos->x;
pos->y = y;
pos->z = z;
@@ -245,11 +250,43 @@ ARM bool MapManager::func_ov00_02083664(Vec3p *param_2, unk32 entranceId) {
return false;
}
s32 MapManager::func_ov00_020836bc(u32 param_2, unk32 *param_3) {}
s32 MapManager::GetTriggerBoundingBoxes(u32 param_2, AABB *param_3, u32 param_4) {}
unk8 MapManager::func_ov00_020836dc(unk32 param_2, unk32 param_3) {}
bool MapManager::func_ov00_02083770(u32 param_2, unk32 param_3) {}
bool MapManager::func_ov00_02083780(unk32 param_2) {}
ARM s32 MapManager::func_ov00_020836bc(s32 param_2, AABB *param_3) {
return this->mMap->GetTriggerBoundingBox(param_2, param_3);
}
ARM s32 MapManager::GetTriggerBoundingBoxes(s32 param_2, AABB *param_3, s32 param_4) {
return this->mMap->GetTriggerBoundingBoxes(param_2, param_3, param_4);
}
ARM bool MapManager::func_ov00_020836dc(u32 type, u32 actorId) {
bool state;
Actor *actor;
Vec3p playerPos;
if (actorId < 2) {
playerPos.x = gPlayerPos->x;
playerPos.y = gPlayerPos->y;
playerPos.z = gPlayerPos->z;
} else {
actor = gActorManager->FindActorById(actorId);
if (actor == NULL) {
return false;
}
playerPos.x = *(s32 *) (actor + 0x48);
playerPos.y = *(s32 *) (actor + 0x4c);
playerPos.z = *(s32 *) (actor + 0x50);
}
return this->IsTriggerTypeOverlapped(type, &playerPos);
}
ARM bool MapManager::IsTriggerTypeOverlapped(u32 type, Vec3p *pos) {
return this->mMap->IsTriggerTypeOverlapped(type, pos);
}
ARM bool MapManager::GetOverlappingTrigger(Vec3p *param_2) {
return this->mMap->GetOverlappingTrigger(param_2);
}
bool MapManager::func_ov00_02083790(unk32 param_2) {}
unk8 MapManager::func_ov00_02083840(unk32 param_2) {}
bool MapManager::func_ov00_020838c8(s32 param_2) {}