summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorYanis002 <35189056+Yanis002@users.noreply.github.com>2025-02-08 12:40:01 +0100
committerYanis002 <35189056+Yanis002@users.noreply.github.com>2025-02-08 12:40:01 +0100
commitbd747975ff0197043a4e2c655cd3bd9d4874d2e8 (patch)
tree51cc38b1dc8e09ef4478f9c49038b7621188663e /src
parentcf757250b0b5b2f340a73ad83bbbbf7c2994d27d (diff)
cleanup actornavibase and match `ActorNavi::func_ov059_0219b020`
Diffstat (limited to 'src')
-rw-r--r--src/00_Core/Actor/Navi/ActorNaviBase.cpp2
-rw-r--r--src/59_Hammer/Actor/Navi/ActorNaviBase.cpp34
2 files changed, 28 insertions, 8 deletions
diff --git a/src/00_Core/Actor/Navi/ActorNaviBase.cpp b/src/00_Core/Actor/Navi/ActorNaviBase.cpp
index 677d677b..0c681c70 100644
--- a/src/00_Core/Actor/Navi/ActorNaviBase.cpp
+++ b/src/00_Core/Actor/Navi/ActorNaviBase.cpp
@@ -12,7 +12,7 @@ void ActorNaviBase::func_ov000_020b8c50() {}
void ActorNaviBase::func_ov000_020b8c98(unk32 param1, unk32 param2, unk32 param3) {}
void ActorNaviBase::vfunc_d4() {}
void ActorNaviBase::vfunc_d8() {}
-void ActorNaviBase::SetActive(bool active) {}
+void ActorNaviBase::SetActive(unk32 active) {}
void ActorNaviBase::TeleportAboveLink() {}
void ActorNaviBase::vfunc_e0() {}
void ActorNaviBase::vfunc_e4() {}
diff --git a/src/59_Hammer/Actor/Navi/ActorNaviBase.cpp b/src/59_Hammer/Actor/Navi/ActorNaviBase.cpp
index 109a14b4..f272c4e0 100644
--- a/src/59_Hammer/Actor/Navi/ActorNaviBase.cpp
+++ b/src/59_Hammer/Actor/Navi/ActorNaviBase.cpp
@@ -1,9 +1,29 @@
#include "Actor/Navi/ActorNaviBase.hpp"
+#include "Actor/Navi/ActorNavi.hpp"
+#include "Player/PlayerControl.hpp"
+#include "Item/ItemManager.hpp"
-bool ActorNaviBase::func_ov059_0219933c(u32 param1) {}
-void ActorNaviBase::func_ov059_0219a0ac() {}
-void ActorNaviBase::func_ov059_0219aa08() {}
-void ActorNaviBase::func_ov059_0219aba8(u32 param1) {}
-bool ActorNaviBase::func_ov059_0219af14() {}
-bool ActorNaviBase::func_ov059_0219afc4() {}
-void ActorNaviBase::func_ov059_0219b020() {}
+ARM bool ActorNavi::func_ov059_0219933c(u32 param1) {}
+ARM void ActorNavi::func_ov059_0219a0ac() {}
+ARM void ActorNavi::func_ov059_0219aa08() {}
+ARM void ActorNavi::func_ov059_0219aba8(u32 param1) {}
+ARM bool ActorNavi::func_ov059_0219af14() {}
+ARM bool ActorNavi::func_ov059_0219afc4() {}
+
+ARM void ActorNavi::func_ov059_0219b020() {
+
+ if (gItemManager->GetEquippedFairy() != FairyId_Courage) {
+ ItemManager* itemMgr = gItemManager;
+
+ this->mPrevPos = this->mUnk_158 = this->mPos = itemMgr->GetFairy(itemMgr->GetEquippedFairy())->mPos;
+ } else {
+ this->mUnk_158 = this->mPos;
+ }
+
+ gPlayerControl->mAimWorld = this->mUnk_158;
+
+ this->mHammer = GetEquipHammer();
+ this->mUnk_3c0[0] = 0x0;
+ this->mUnk_3c0[2] = 0x0;
+ this->SetActive(3);
+}