summaryrefslogtreecommitdiff
path: root/src/00_Core/Player
diff options
context:
space:
mode:
authorAetias <144526980+AetiasHax@users.noreply.github.com>2025-02-03 23:53:59 +0100
committerGitHub <noreply@github.com>2025-02-03 23:53:59 +0100
commit66fa3f0623820bc4fb099289a398453cd28e4ed9 (patch)
tree49de846e0516c9490ea31fd14a867cc14253f7e4 /src/00_Core/Player
parent48bbd8bb7f008ac913cabb6f7faf4a47ad86878b (diff)
parent2bd1bbd10b1ba5a595372a3313e80e4274a4e912 (diff)
Merge pull request #59 from AetiasHax/ghidra-symbols
Import documentation from Ghidra server
Diffstat (limited to 'src/00_Core/Player')
-rw-r--r--src/00_Core/Player/EquipItem.cpp19
-rw-r--r--src/00_Core/Player/EquipShield.cpp12
-rw-r--r--src/00_Core/Player/EquipSword.cpp26
-rw-r--r--src/00_Core/Player/LinkStateCutscene.cpp37
-rw-r--r--src/00_Core/Player/LinkStateItem.cpp21
-rw-r--r--src/00_Core/Player/PlayerControlData.cpp37
-rw-r--r--src/00_Core/Player/PlayerControl_2.cpp7
-rw-r--r--src/00_Core/Player/PlayerLinkBase.cpp101
-rw-r--r--src/00_Core/Player/PlayerManager.cpp5
9 files changed, 254 insertions, 11 deletions
diff --git a/src/00_Core/Player/EquipItem.cpp b/src/00_Core/Player/EquipItem.cpp
new file mode 100644
index 00000000..9256b13a
--- /dev/null
+++ b/src/00_Core/Player/EquipItem.cpp
@@ -0,0 +1,19 @@
+#include "Player/EquipItem.hpp"
+
+void EquipItem::vfunc_00() {}
+void EquipItem::vfunc_1c() {}
+bool EquipItem::IsUsable(unk32 param1) const {}
+bool EquipItem::IsInUse() const {}
+bool EquipItem::UpdateInUse(unk32 param1) {}
+u32 EquipItem::vfunc_2c() {}
+void EquipItem::vfunc_34(unk16 *param1) {}
+unk32 EquipItem::vfunc_40() const {}
+unk32 EquipItem::vfunc_44(unk32 param1) const {}
+unk32 EquipItem::vfunc_48(unk32 param1) const {}
+s32 EquipItem::vfunc_4c() const {}
+Vec3p *EquipItem::GetPlayerPos() {}
+void EquipItem::func_ov000_020be99c(Vec3p *param1) {}
+void EquipItem::func_ov000_020be9e4(s32 param1, s32 param2, s32 param3, s16 param4) {}
+u16 EquipItem::GetAmmo() {}
+void EquipItem::GiveAmmo(u32 amount) {}
+bool EquipItem::GetHitbox(Cylinder *hitbox) const {}
diff --git a/src/00_Core/Player/EquipShield.cpp b/src/00_Core/Player/EquipShield.cpp
new file mode 100644
index 00000000..b7b30105
--- /dev/null
+++ b/src/00_Core/Player/EquipShield.cpp
@@ -0,0 +1,12 @@
+#include "Player/EquipShield.hpp"
+
+void EquipShield::vfunc_00() {}
+ItemFlag EquipShield::GetId() const {}
+bool EquipShield::IsUsable(unk32 param1) const {}
+void EquipShield::func_ov000_020c070c(u32 param1, Vec3p *param2, unk32 param3) {}
+void EquipShield::vfunc_10() {}
+void EquipShield::vfunc_18() {}
+void EquipShield::vfunc_1c() {}
+void EquipShield::vfunc_30() {}
+void EquipShield::vfunc_38(unk32 param1) {}
+bool EquipShield::GetHitbox(Cylinder *hitbox) const {}
diff --git a/src/00_Core/Player/EquipSword.cpp b/src/00_Core/Player/EquipSword.cpp
new file mode 100644
index 00000000..813f0e1c
--- /dev/null
+++ b/src/00_Core/Player/EquipSword.cpp
@@ -0,0 +1,26 @@
+#include "Player/EquipSword.hpp"
+
+void EquipSword::vfunc_00() {}
+ItemFlag EquipSword::GetId() const {}
+void EquipSword::func_ov000_020bf008(unk16 param1, unk16 param2) {}
+bool EquipSword::func_ov000_020bf028() {}
+void EquipSword::func_ov000_020bf088() {}
+void EquipSword::vfunc_10() {}
+bool EquipSword::UpdateInUse(unk32 param1) {}
+void EquipSword::vfunc_18() {}
+void EquipSword::vfunc_1c() {}
+void EquipSword::func_ov000_020bf330() {}
+bool EquipSword::func_ov000_020bf4f4() {}
+void EquipSword::vfunc_30() {}
+EquipRope *EquipSword::GetEquipRope() {}
+void *func_ov000_020bff80(void *param1) {}
+void EquipSword::vfunc_38(unk32 param1) {}
+bool EquipSword::GetHitbox(Cylinder *hitbox) const {}
+void EquipSword::func_ov000_020c024c(Vec3p *param1, s32 param2) {}
+void EquipSword::func_ov000_020c0318(Vec3p *param1, s32 param2) {}
+void EquipSword::func_ov000_020c0550(Vec3p *param1, s32 param2) {}
+void EquipSword::func_ov000_020c05ec(s32 param1) {}
+void EquipSword::func_ov000_020c0648() {}
+u32 EquipSword::vfunc_2c() {}
+void EquipSword::func_ov000_020c06b0(s32 param1) {}
+void *func_ov000_020c06b8() {}
diff --git a/src/00_Core/Player/LinkStateCutscene.cpp b/src/00_Core/Player/LinkStateCutscene.cpp
new file mode 100644
index 00000000..be25ba5b
--- /dev/null
+++ b/src/00_Core/Player/LinkStateCutscene.cpp
@@ -0,0 +1,37 @@
+#include "Player/LinkStateCutscene.hpp"
+
+void LinkStateCutscene::vfunc_00() {}
+void UnkStruct_ov004_0210abb8::vfunc_08(unk32 param1) {}
+bool LinkStateCutscene::func_ov000_020b1e98(s32 param1) {}
+bool LinkStateCutscene::func_ov000_020b1eb8() {}
+bool LinkStateCutscene::func_ov000_020b1eec() {}
+void LinkStateCutscene::CreateDebugHierarchy() {}
+void LinkStateCutscene::OnStateEnter() {}
+void LinkStateCutscene::OnStateLeave(s32 param1) {}
+LinkStateId LinkStateCutscene::GetId() {}
+void LinkStateCutscene::vfunc_1c() {}
+void LinkStateCutscene::StopVerticalVelocity() {}
+void LinkStateCutscene::func_ov000_020b2568() {}
+void LinkStateCutscene::func_ov000_020b2598() {}
+void LinkStateCutscene::func_ov000_020b2ba4() {}
+void LinkStateCutscene::func_ov000_020b2ce4(unk32 param1, s16 param2) {}
+void LinkStateCutscene::func_ov000_020b2cf0() {}
+void LinkStateCutscene::func_ov000_020b2d60() {}
+bool LinkStateCutscene::func_ov000_020b2d8c() {}
+void LinkStateCutscene::func_ov000_020b2e84() {}
+bool LinkStateCutscene::vfunc_24(s32 param1) {}
+bool LinkStateCutscene::vfunc_28() {}
+void LinkStateCutscene::func_ov000_020b2f48(unk32 param1, unk32 param2) {}
+void LinkStateCutscene::func_ov000_020b2f70(unk32 param1, void *param2, unk32 *param3) {}
+void LinkStateCutscene::ChangeToMoveState() {}
+bool LinkStateCutscene::func_ov000_020b2fac() {}
+void LinkStateCutscene::func_ov000_020b3024(Vec3p *param1, unk32 param2) {}
+void LinkStateCutscene::func_ov000_020b305c(Vec3p *param1, Vec3p *param2) {}
+void LinkStateCutscene::func_ov000_020b309c(Vec3p *param1) {}
+void LinkStateCutscene::func_ov000_020b30e4(u32 param1, unk32 param2, unk32 param3) {}
+void LinkStateCutscene::func_ov000_020b3278(s32 param1, s32 *param2) {}
+void LinkStateCutscene::func_ov000_020b35d8(s32 param1, s32 param2) {}
+void LinkStateCutscene::func_ov000_020b38dc(u32 param1, u32 param2) {}
+bool LinkStateCutscene::vfunc_40() {}
+bool LinkStateCutscene::vfunc_38() {}
+UnkStruct_ov004_0210abb8::~UnkStruct_ov004_0210abb8() {}
diff --git a/src/00_Core/Player/LinkStateItem.cpp b/src/00_Core/Player/LinkStateItem.cpp
index 5cbccd85..240b94c8 100644
--- a/src/00_Core/Player/LinkStateItem.cpp
+++ b/src/00_Core/Player/LinkStateItem.cpp
@@ -1,4 +1,5 @@
#include "Player/LinkStateItem.hpp"
+#include "DTCM/UnkStruct_027e103c.hpp"
#include "Item/ItemManager.hpp"
#include "Player/EquipBomb.hpp"
#include "Player/EquipHammer.hpp"
@@ -7,13 +8,11 @@
#include "Player/PlayerControl.hpp"
#include "Save/AdventureFlags.hpp"
-extern unk32 func_ov000_020cf01c(s32 *param1);
extern void func_ov000_020cf9dc(s32 param1, s32 param2, s32 param3);
extern void func_ov014_0213ec64(s32 param1);
extern void func_ov014_0211fd04(s32 *param1);
extern void func_ov000_020b7e6c(s32 *param1);
-extern s32 *data_027e103c;
extern s32 *data_027e1098;
THUMB void LinkStateItem::vfunc_00() {}
@@ -39,26 +38,26 @@ ARM void LinkStateItem::OnStateLeave(s32 param1) {
switch (this->mEquipId) {
case ItemFlag_BombchuBag:
- iVar3 = func_ov000_020cf01c(data_027e103c);
+ iVar3 = data_027e103c->func_ov000_020cf01c();
if (*(u8 *) (iVar3 + 0xe0) == '\0') {
- func_ov014_0213ec64((s32) GetEquipBombchu());
+ GetEquipBombchu()->func_ov014_0213ec64();
}
func_ov014_0211fd04(data_027e1098);
break;
case ItemFlag_OshusSword: break;
case ItemFlag_WoodenShield: break;
case ItemFlag_Boomerang: break;
- case ItemFlag_BombBag: EquipBomb::StopUsing(this, param1); break;
+ case ItemFlag_BombBag: this->StopUsingBomb(param1); break;
case ItemFlag_Bow: break;
- case ItemFlag_GrapplingHook: EquipRope::StopUsing(this); break;
- case ItemFlag_Hammer: EquipHammer::StopUsing(this); break;
+ case ItemFlag_GrapplingHook: this->StopUsingRope(); break;
+ case ItemFlag_Hammer: this->StopUsingHammer(); break;
case ItemFlag_PotionA:
case ItemFlag_PotionB:
- iVar3 = (int) (data_027e103c);
- *(unk8 *) ((s16 *) data_027e103c + 0x15) = 0;
- func_ov000_020cf9dc(iVar3, 0, 0);
+ UnkStruct_027e103c *pData_027e103c = data_027e103c;
+ pData_027e103c->mUnk_2a = 0;
+ pData_027e103c->func_ov000_020cf9dc(0, 0);
break;
- case ItemFlag_Shovel: EquipScoop::StopUsing(this); break;
+ case ItemFlag_Shovel: this->StopUsingScoop(); break;
}
if (this->mEquipId != ItemFlag_None) {
diff --git a/src/00_Core/Player/PlayerControlData.cpp b/src/00_Core/Player/PlayerControlData.cpp
new file mode 100644
index 00000000..50e6c853
--- /dev/null
+++ b/src/00_Core/Player/PlayerControlData.cpp
@@ -0,0 +1,37 @@
+#include "Player/PlayerControlData.hpp"
+
+void PlayerControlData::vfunc_00() {}
+void PlayerControlData::func_ov000_020b4440() {}
+void PlayerControlData::func_ov000_020b4460(s32 param1) {}
+void PlayerControlData::func_ov000_020b44d4(s32 param1, u32 param2) {}
+void PlayerControlData::func_ov000_020b4558(s32 param1, u32 param2) {}
+void PlayerControlData::func_ov000_020b45e0() {}
+void PlayerControlData::func_ov000_020b45f8(unk32 *param1, unk8 param2, unk8 param3) {}
+void PlayerControlData::func_ov000_020b464c(unk32 *param1, unk8 param2, unk8 param3) {}
+void PlayerControlData::vfunc_60(unk32 param1, unk32 param2, s32 param3) {}
+void PlayerControlData::vfunc_68(unk32 param1, unk32 param2) {}
+void PlayerControlData::vfunc_64(u32 param1) {}
+void PlayerControlData::vfunc_20() {}
+void PlayerControlData::vfunc_24() {}
+void PlayerControlData::vfunc_28() {}
+void PlayerControlData::vfunc_2c() {}
+void PlayerControlData::vfunc_30() {}
+void PlayerControlData::vfunc_34() {}
+unk32 PlayerControlData::vfunc_7c() {}
+unk32 PlayerControlData::vfunc_74() {}
+unk32 PlayerControlData::vfunc_78() {}
+void PlayerControlData::func_ov000_020b484c(s32 param1, s32 param2, s32 param3) {}
+void PlayerControlData::vfunc_6c(s32 param1, Vec3p *param2) {}
+void PlayerControlData::vfunc_5c() {}
+void PlayerControlData::vfunc_3c(s32 param1, s32 param2) {}
+void PlayerControlData::vfunc_40(u16 *param1, Vec3p *param2, unk32 param3, char param4) {}
+void PlayerControlData::vfunc_44(unk32 param1, unk32 *param2, unk32 param3, unk16 param4) {}
+void PlayerControlData::vfunc_48(unk32 param1, unk32 param2, unk32 param3, s16 param4) {}
+void PlayerControlData::vfunc_4c(unk32 param1, Vec3p *param2) {}
+void PlayerControlData::vfunc_70(s32 param1) {}
+void PlayerControlData::vfunc_50() {}
+void PlayerControlData::vfunc_54() {}
+void PlayerControlData::vfunc_58() {}
+void PlayerControlData::func_ov000_020b4944(unk32 param1, u32 param2, s32 param3) {}
+void PlayerControlData::func_ov000_020b4a00(s32 *param1, s32 *param2, s32 *param3, s32 param4) {}
+unk32 PlayerControlData::vfunc_0c() {}
diff --git a/src/00_Core/Player/PlayerControl_2.cpp b/src/00_Core/Player/PlayerControl_2.cpp
new file mode 100644
index 00000000..7535837a
--- /dev/null
+++ b/src/00_Core/Player/PlayerControl_2.cpp
@@ -0,0 +1,7 @@
+#include "Player/PlayerControl.hpp"
+
+void PlayerControl::ResetTouchWorld() {}
+void PlayerControl::InitTouchMovement() {}
+void PlayerControl::func_ov000_020b7924(s32 param1) {}
+void PlayerControl::ApplyTouchWorld(Vec3p *result, unk32 scale) {}
+bool PlayerControl::func_ov000_020b7d6c() {}
diff --git a/src/00_Core/Player/PlayerLinkBase.cpp b/src/00_Core/Player/PlayerLinkBase.cpp
new file mode 100644
index 00000000..897932c8
--- /dev/null
+++ b/src/00_Core/Player/PlayerLinkBase.cpp
@@ -0,0 +1,101 @@
+#include "Player/PlayerLinkBase.hpp"
+
+s32 PlayerLinkBase::GetMaxHealth() {}
+void PlayerLinkBase::vfunc_10(Cylinder *param1) {}
+void PlayerLinkBase::vfunc_14(Cylinder *param1) {}
+void PlayerLinkBase::UnequipPotion() {}
+void PlayerLinkBase::ChangeLinkState(s32 index) {}
+void PlayerLinkBase::SetLinkSubState(s32 index, unk32 substate) {}
+PlayerControlData *PlayerLinkBase::GetPlayerControlData(s32 index) {}
+void PlayerLinkBase::GetDistanceTo(Vec3p *vec, q20 *yDist, q20 *xzDist) {}
+bool PlayerLinkBase::func_ov000_020bb68c(Vec3p *target) {}
+bool PlayerLinkBase::func_ov000_020bb6d4() {}
+void PlayerLinkBase::func_ov000_020bb810(Vec3p *target, unk32 param2) {}
+void PlayerLinkBase::func_ov000_020bb8c4(Vec3p *param1) {}
+void PlayerLinkBase::TurnTo(Vec3p *target) {}
+void PlayerLinkBase::func_ov000_020bb9b0() {}
+void PlayerLinkBase::func_ov000_020bb9c8() {}
+void PlayerLinkBase::func_ov000_020bb9e4() {}
+bool PlayerLinkBase::func_ov000_020bba00() {}
+bool PlayerLinkBase::func_ov000_020bba14() {}
+bool PlayerLinkBase::func_ov000_020bba28() {}
+void PlayerLinkBase::func_ov000_020bba48() {}
+void PlayerLinkBase::vfunc_18(s32 param1) {}
+bool PlayerLinkBase::CanMove() {}
+bool PlayerLinkBase::vfunc_58() {}
+bool PlayerLinkBase::vfunc_5c() {}
+bool PlayerLinkBase::vfunc_60() {}
+void PlayerLinkBase::vfunc_64() {}
+bool PlayerLinkBase::func_ov000_020bbabc() {}
+bool PlayerLinkBase::func_ov000_020bbb18() {}
+bool PlayerLinkBase::func_ov000_020bbb64() {}
+bool PlayerLinkBase::func_ov000_020bbb78() {}
+void PlayerLinkBase::func_ov000_020bbbb8() {}
+bool PlayerLinkBase::func_ov000_020bbbd0(s32 param1, s32 param2) {}
+bool PlayerLinkBase::func_ov000_020bbc68(s32 param1) {}
+bool PlayerLinkBase::func_ov000_020bbd40() {}
+bool PlayerLinkBase::func_ov000_020bbd60() {}
+bool PlayerLinkBase::func_ov000_020bbd80(s32 param1) {}
+unk32 PlayerLinkBase::func_ov000_020bbe94() {}
+bool PlayerLinkBase::vfunc_30(s32 param1, Vec3p *param2, s32 param3) {}
+void PlayerLinkBase::func_ov000_020bc088() {}
+ItemManager *PlayerLinkBase::GetItemManager() {}
+void PlayerLinkBase::vfunc_70(s32 param1, Vec3p *param2, unk32 param3) {}
+void PlayerLinkBase::func_ov000_020bc1c8(unk32 param1, unk32 param2, unk32 param3) {}
+bool PlayerLinkBase::func_ov000_020bc210() {}
+void PlayerLinkBase::SetVelocity(Vec3p *velocity, bool setAngle) {}
+void PlayerLinkBase::vfunc_6c() {}
+void PlayerLinkBase::func_ov000_020bc280(unk16 param1) {}
+unk32 PlayerLinkBase::func_ov000_020bc2d4(unk32 param1) {}
+unk32 PlayerLinkBase::func_ov000_020bc320(unk32 param1, unk32 param2, unk32 param3) {}
+void PlayerLinkBase::func_ov000_020bc398(unk32 param1, s32 param2) {}
+PlayerCharacter PlayerLinkBase::GetCurrentCharacter() {}
+s32 PlayerLinkBase::GetHealth(PlayerCharacter character) {}
+void PlayerLinkBase::AddHealth(s16 amount, PlayerCharacter character) {}
+void PlayerLinkBase::func_ov000_020bc4ac() {}
+s32 PlayerLinkBase::GetStateId() {}
+s32 PlayerLinkBase::func_ov000_020bc520(Vec3p *param1) {}
+ItemFlag PlayerLinkBase::GetEquipId() {}
+unk32 PlayerLinkBase::Grab() {}
+void PlayerLinkBase::func_ov000_020bc7e0(unk32 param1) {}
+s32 PlayerLinkBase::GetGrabActorId() {}
+s32 PlayerLinkBase::func_ov000_020bc808() {}
+unk32 PlayerLinkBase::func_ov000_020bc84c() {}
+void PlayerLinkBase::func_ov000_020bc854(Vec3p *param1) {}
+void PlayerLinkBase::UpdateTilePos(Vec3p *param1, PlayerCharacter character) {}
+void PlayerLinkBase::func_ov000_020bc90c(unk32 *param1, s32 param2) {}
+bool PlayerLinkBase::func_ov000_020bc960(unk32 param1, unk32 param2, unk32 param3) {}
+bool PlayerLinkBase::TeleportToLastEntrance(bool param1) {}
+bool PlayerLinkBase::TeleportToEntrance(unk32 entranceId, bool param2) {}
+bool PlayerLinkBase::Teleport(Vec3p *pos, s16 angle, unk32 param3, bool param4, bool param5) {}
+void PlayerLinkBase::vfunc_74() {}
+bool PlayerLinkBase::GongoronCollidesWith(Cylinder *hitbox) {}
+unk32 PlayerLinkBase::vfunc_78() {}
+bool PlayerLinkBase::func_ov000_020bcc78() {}
+void PlayerLinkBase::func_ov000_020bccc8() {}
+void PlayerLinkBase::func_ov000_020bcdb8() {}
+void PlayerLinkBase::func_ov000_020bcdec(Vec3p *param1, unk16 param2) {}
+bool PlayerLinkBase::PlayItemCutscene(ItemId cutsceneItemId) {}
+bool PlayerLinkBase::func_ov000_020bcec8() {}
+bool PlayerLinkBase::func_ov000_020bcefc() {}
+bool PlayerLinkBase::func_ov000_020bcf2c() {}
+bool PlayerLinkBase::func_ov000_020bcf50(Vec3p *param1, unk32 param2) {}
+bool PlayerLinkBase::func_ov000_020bcf84(Vec3p *param1, Vec3p *param2) {}
+bool PlayerLinkBase::func_ov000_020bcfb8(s32 param1) {}
+bool PlayerLinkBase::func_ov000_020bd030(unk32 param1) {}
+bool PlayerLinkBase::func_ov000_020bd070(unk32 param1) {}
+bool PlayerLinkBase::func_ov000_020bd0a8() {}
+bool PlayerLinkBase::func_ov000_020bd0bc(Vec3p *param1, s32 param2) {}
+bool PlayerLinkBase::func_ov000_020bd268() {}
+bool PlayerLinkBase::func_ov000_020bd2bc() {}
+bool PlayerLinkBase::func_ov000_020bd304() {}
+bool PlayerLinkBase::func_ov000_020bd318() {}
+void PlayerLinkBase::vfunc_7c() {}
+void PlayerLinkBase::SetPlayerCharacter(PlayerCharacter character) {}
+bool PlayerLinkBase::func_ov000_020bd3b0(unk32 param1, unk32 param2, unk32 param3, unk16 param4) {}
+void PlayerLinkBase::SetPosition(Vec3p *position) {}
+void PlayerLinkBase::SetAngle(s16 *angle) {}
+bool PlayerLinkBase::func_ov000_020bd510(s32 param1, unk32 *param2) {}
+void PlayerLinkBase::vfunc_68() {}
+void PlayerLinkBase::SetUnk_5e() {}
+void PlayerLinkBase::ResetUnk_5e() {}
diff --git a/src/00_Core/Player/PlayerManager.cpp b/src/00_Core/Player/PlayerManager.cpp
new file mode 100644
index 00000000..c5e67e1d
--- /dev/null
+++ b/src/00_Core/Player/PlayerManager.cpp
@@ -0,0 +1,5 @@
+#include "Player/PlayerManager.hpp"
+
+void PlayerManager::Save(SaveItemManager *save) {}
+void PlayerManager::IncreaseMaxHealth(s16 amount) {}
+void PlayerManager::UpdateShipMaxHealth() {}