mirror of
https://github.com/zeldaret/ph
synced 2026-05-28 00:15:57 -04:00
PlayerControl: Decomp 5%
This commit is contained in:
@@ -73,7 +73,7 @@ data_027e06d8 kind:bss addr:0x27e06d8
|
||||
data_027e06e4 kind:bss addr:0x27e06e4
|
||||
data_027e0718 kind:bss addr:0x27e0718
|
||||
data_027e071c kind:bss addr:0x27e071c
|
||||
gRandom kind:bss addr:0x27e0764
|
||||
gRandom kind:bss(size=0x18) addr:0x27e0764
|
||||
data_027e077c kind:bss addr:0x27e077c
|
||||
data_027e080c kind:bss addr:0x27e080c
|
||||
data_027e081c kind:bss addr:0x27e081c
|
||||
|
||||
@@ -79,7 +79,7 @@ func_ov000_0207896c kind:function(thumb,size=0x128) addr:0x207896c
|
||||
func_ov000_02078a94 kind:function(thumb,size=0x40) addr:0x2078a94
|
||||
func_ov000_02078ad4 kind:function(thumb,size=0x38) addr:0x2078ad4
|
||||
func_ov000_02078b0c kind:function(thumb,size=0x34) addr:0x2078b0c
|
||||
func_ov000_02078b40 kind:function(arm,size=0x24) addr:0x2078b40
|
||||
_ZN18UnkStruct_027e0d3819func_ov000_02078b40Ev kind:function(arm,size=0x24) addr:0x2078b40
|
||||
func_ov000_02078b64 kind:function(arm,size=0x24) addr:0x2078b64
|
||||
func_ov000_02078b88 kind:function(arm,size=0x3c) addr:0x2078b88
|
||||
func_ov000_02078bc4 kind:function(thumb,size=0x2c) addr:0x2078bc4
|
||||
@@ -2179,7 +2179,7 @@ _ZN13LinkStateRoll8vfunc_20Ei kind:function(arm,size=0x180) addr:0x20aec10
|
||||
_ZN13LinkStateRoll8vfunc_24Ei kind:function(arm,size=0xc8) addr:0x20aed90
|
||||
_ZN13LinkStateRoll18func_ov00_020aee58Est kind:function(arm,size=0x2c) addr:0x20aee58
|
||||
_ZN13LinkStateRoll18func_ov00_020aee84Ev kind:function(arm,size=0x28) addr:0x20aee84
|
||||
_ZN13PlayerControl18_ZN13PlayerControl18func_ov00_020aeeacEvEv kind:function(arm,size=0x4c) addr:0x20aeeac
|
||||
_ZN13PlayerControl18func_ov00_020aeeacEv kind:function(arm,size=0x4c) addr:0x20aeeac
|
||||
_ZN13PlayerControl18func_ov00_020aeef8Ev kind:function(arm,size=0x38) addr:0x20aeef8
|
||||
_ZN13PlayerControl18func_ov00_020aef30Ev kind:function(thumb,size=0x38) addr:0x20aef30
|
||||
_ZN13PlayerControl9UpdateAimEv kind:function(thumb,size=0x94) addr:0x20aef68
|
||||
@@ -2380,7 +2380,7 @@ func_ov000_020b7754 kind:function(arm,size=0xf4) addr:0x20b7754
|
||||
func_ov000_020b7848 kind:function(arm,size=0x1c) addr:0x20b7848
|
||||
func_ov000_020b7864 kind:function(arm,size=0x8) addr:0x20b7864
|
||||
func_ov000_020b786c kind:function(arm,size=0x34) addr:0x20b786c
|
||||
func_ov000_020b78a0 kind:function(arm,size=0x48) addr:0x20b78a0
|
||||
_ZN13PlayerControl15ResetTouchWorldEv kind:function(arm,size=0x48) addr:0x20b78a0
|
||||
func_ov000_020b78e8 kind:function(arm,size=0x3c) addr:0x20b78e8
|
||||
func_ov000_020b7924 kind:function(arm,size=0x428) addr:0x20b7924
|
||||
func_ov000_020b7d4c kind:function(arm,size=0x20) addr:0x20b7d4c
|
||||
@@ -3258,7 +3258,7 @@ func_ov000_020cf238 kind:function(arm,size=0x38) addr:0x20cf238
|
||||
func_ov000_020cf270 kind:function(arm,size=0x14) addr:0x20cf270
|
||||
func_ov000_020cf284 kind:function(arm,size=0x1c) addr:0x20cf284
|
||||
func_ov000_020cf2a0 kind:function(arm,size=0x18) addr:0x20cf2a0
|
||||
func_ov000_020cf2b8 kind:function(arm,size=0x20) addr:0x20cf2b8
|
||||
_ZN18UnkStruct_027e103c19func_ov000_020cf2b8Ev kind:function(arm,size=0x20) addr:0x20cf2b8
|
||||
func_ov000_020cf2d8 kind:function(arm,size=0x20) addr:0x20cf2d8
|
||||
func_ov000_020cf2f8 kind:function(arm,size=0x38) addr:0x20cf2f8
|
||||
func_ov000_020cf330 kind:function(arm,size=0x18) addr:0x20cf330
|
||||
|
||||
@@ -19,7 +19,7 @@ HuffUnCompReadByCallback kind:function(thumb,size=0x4) addr:0x200079e
|
||||
Entry kind:function(arm,size=0x13c) addr:0x2000800
|
||||
func_0200093c kind:function(arm,size=0x14) addr:0x200093c
|
||||
func_02000950 kind:function(arm,size=0xac) addr:0x2000950
|
||||
func_020009fc kind:function(arm,size=0x7c) addr:0x20009fc
|
||||
func_020009fc kind:function(arm,size=0x78) addr:0x20009fc
|
||||
AutoloadCallback kind:function(arm,size=0x4) addr:0x2000a74
|
||||
func_02000a78 kind:function(arm,size=0xe8) addr:0x2000a78
|
||||
func_02000b60 kind:function(arm,size=0x4) addr:0x2000b60
|
||||
@@ -2581,7 +2581,7 @@ data_02056af8 kind:data(any) addr:0x2056af8
|
||||
data_02056afd kind:data(any) addr:0x2056afd
|
||||
data_02056afe kind:data(any) addr:0x2056afe
|
||||
data_02056b00 kind:data(any) addr:0x2056b00
|
||||
data_02056be4 kind:data(any) addr:0x2056be4
|
||||
data_02056be4 kind:data(byte[64]) addr:0x2056be4
|
||||
data_02056c24 kind:data(any) addr:0x2056c24
|
||||
data_02056c25 kind:data(any) addr:0x2056c25
|
||||
gpBuildDate kind:data(any) addr:0x2056c30
|
||||
|
||||
@@ -79,7 +79,7 @@ func_ov000_0207896c kind:function(thumb,size=0x128) addr:0x207890c
|
||||
func_ov000_02078a94 kind:function(thumb,size=0x40) addr:0x2078a34
|
||||
func_ov000_02078ad4 kind:function(thumb,size=0x38) addr:0x2078a74
|
||||
func_ov000_02078b0c kind:function(thumb,size=0x34) addr:0x2078aac
|
||||
func_ov000_02078b40 kind:function(arm,size=0x24) addr:0x2078ae0
|
||||
_ZN18UnkStruct_027e0d3819func_ov000_02078b40Ev kind:function(arm,size=0x24) addr:0x2078ae0
|
||||
func_ov000_02078b64 kind:function(arm,size=0x24) addr:0x2078b04
|
||||
func_ov000_02078b88 kind:function(arm,size=0x3c) addr:0x2078b28
|
||||
func_ov000_02078bc4 kind:function(thumb,size=0x2c) addr:0x2078b64
|
||||
@@ -2380,7 +2380,7 @@ func_ov000_020b7754 kind:function(arm,size=0xf4) addr:0x20b76f4
|
||||
func_ov000_020b7848 kind:function(arm,size=0x1c) addr:0x20b77e8
|
||||
func_ov000_020b7864 kind:function(arm,size=0x8) addr:0x20b7804
|
||||
func_ov000_020b786c kind:function(arm,size=0x34) addr:0x20b780c
|
||||
func_ov000_020b78a0 kind:function(arm,size=0x48) addr:0x20b7840
|
||||
_ZN13PlayerControl15ResetTouchWorldEv kind:function(arm,size=0x48) addr:0x20b7840
|
||||
func_ov000_020b78e8 kind:function(arm,size=0x3c) addr:0x20b7888
|
||||
func_ov000_020b7924 kind:function(arm,size=0x428) addr:0x20b78c4
|
||||
func_ov000_020b7d4c kind:function(arm,size=0x20) addr:0x20b7cec
|
||||
@@ -3258,7 +3258,7 @@ func_ov000_020cf238 kind:function(arm,size=0x38) addr:0x20cf1d8
|
||||
func_ov000_020cf270 kind:function(arm,size=0x14) addr:0x20cf210
|
||||
func_ov000_020cf284 kind:function(arm,size=0x1c) addr:0x20cf224
|
||||
func_ov000_020cf2a0 kind:function(arm,size=0x18) addr:0x20cf240
|
||||
func_ov000_020cf2b8 kind:function(arm,size=0x20) addr:0x20cf258
|
||||
_ZN18UnkStruct_027e103c19func_ov000_020cf2b8Ev kind:function(arm,size=0x20) addr:0x20cf258
|
||||
func_ov000_020cf2d8 kind:function(arm,size=0x20) addr:0x20cf278
|
||||
func_ov000_020cf2f8 kind:function(arm,size=0x38) addr:0x20cf298
|
||||
func_ov000_020cf330 kind:function(arm,size=0x18) addr:0x20cf2d0
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
#pragma once
|
||||
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
struct UnkStruct_027e05f8 {
|
||||
/* 0 */ unk16 mUnk_0;
|
||||
/* 2 */ unk16 mUnk_2;
|
||||
/* 4 */ unk16 mUnk_4;
|
||||
/* 6 */
|
||||
};
|
||||
|
||||
extern UnkStruct_027e05f8 data_027e05f8;
|
||||
@@ -0,0 +1,15 @@
|
||||
#pragma once
|
||||
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
struct UnkStruct_027e077c {
|
||||
/* 0 */ unk32 mUnk_0;
|
||||
/* 4 */ unk32 mUnk_4;
|
||||
/* 8 */ unk16 mUnk_8;
|
||||
/* a */ unk8 mUnk_a;
|
||||
/* b */
|
||||
};
|
||||
|
||||
extern UnkStruct_027e077c data_027e077c;
|
||||
extern u8 data_02056be4[];
|
||||
@@ -0,0 +1,27 @@
|
||||
#pragma once
|
||||
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
#include "Debug/DebugHierarchyBase.hpp"
|
||||
|
||||
struct UnkStruct_027e0c68 {
|
||||
/* 00 */ unk8 mUnk_00[4];
|
||||
/* 04 */ u8 mUnk_04;
|
||||
/* 05 */ unk8 mUnk_05[3];
|
||||
/* 08 */ unk32 mUnk_08;
|
||||
/* 0c */ unk8 mUnk_0c[4];
|
||||
/* 10 */ unk16 mUnk_10;
|
||||
/* 12 */ unk8 mUnk_12[2];
|
||||
/* 14 */ unk32 mUnk_14;
|
||||
/* 18 */ s32 mUnk_18;
|
||||
/* 1c */ s32 mUnk_1c;
|
||||
/* 20 */ s32 *mUnk_20;
|
||||
/* 24 */ unk32 mUnk_24;
|
||||
/* 28 */ s32 *mUnk_28;
|
||||
/* 2c */ unk8 mUnk_2c[0x1c];
|
||||
/* 48 */ DebugHierarchyBase *mDebug;
|
||||
/* 4c */
|
||||
};
|
||||
|
||||
extern UnkStruct_027e0c68 *data_027e0c68;
|
||||
@@ -0,0 +1,28 @@
|
||||
#pragma once
|
||||
|
||||
#include "global.h"
|
||||
#include "types.h"
|
||||
|
||||
struct UnkStruct_027e0d38 {
|
||||
/* 00 */ unk8 mUnk_00;
|
||||
/* 01 */ unk8 mUnk_01[3]; // padding?
|
||||
/* 04 */ unk32 mUnk_04;
|
||||
/* 08 */ unk32 mUnk_08;
|
||||
/* 0c */ unk32 mUnk_0c;
|
||||
/* 10 */ unk32 mUnk_10;
|
||||
/* 14 */ unk32 mUnk_14;
|
||||
/* 18 */ unk32 mUnk_18;
|
||||
/* 1c */ unk16 mUnk_1c;
|
||||
/* 1e */ unk8 mUnk_1e;
|
||||
/* 1f */ unk8 mUnk_1f;
|
||||
/* 20 */ unk8 mUnk_20;
|
||||
/* 21 */ unk8 mUnk_21;
|
||||
/* 22 */ unk8 mUnk_22[2]; // padding?
|
||||
/* 24 */ void *mUnk_24;
|
||||
/* 28 */ void *mUnk_28;
|
||||
/* 2c */
|
||||
|
||||
s32 func_ov000_02078b40();
|
||||
};
|
||||
|
||||
extern UnkStruct_027e0d38 *data_027e0d38;
|
||||
@@ -18,6 +18,8 @@ struct UnkStruct_027e103c {
|
||||
/* 24 */ u8 mUnk_24;
|
||||
/* 25 */ unk8 mUnk_25[7];
|
||||
/* 2c */
|
||||
|
||||
void func_ov000_020cf2b8();
|
||||
};
|
||||
|
||||
extern UnkStruct_027e103c *data_027e103c;
|
||||
|
||||
@@ -6,6 +6,18 @@
|
||||
#include "Debug/DebugHierarchyBase.hpp"
|
||||
|
||||
class DebugHierarchy : public DebugHierarchyBase {
|
||||
public:
|
||||
/* 00 (base) */
|
||||
/* 08 */
|
||||
|
||||
/* 00 */ virtual void vfunc_00();
|
||||
/* 04 */ virtual void vfunc_04();
|
||||
/* 08 */ virtual void vfunc_08();
|
||||
/* 0c */ virtual void vfunc_0c();
|
||||
/* 10 */ virtual void vfunc_10();
|
||||
/* 14 */ virtual void vfunc_14();
|
||||
/* 18 */ virtual void vfunc_18();
|
||||
/* 1c */ virtual void vfunc_1c();
|
||||
/* 20 */ virtual void vfunc_20(unk32 param1, const char *param2, unk32 param3, unk32 param4, unk32 param5, unk32 param6);
|
||||
/* 24 */
|
||||
};
|
||||
|
||||
@@ -106,26 +106,6 @@ struct ShipPartPricesShown {
|
||||
/* c */
|
||||
};
|
||||
|
||||
struct UnkStruct_027e0d38 {
|
||||
/* 00 */ unk8 mUnk_00;
|
||||
/* 01 */ unk8 mUnk_01[3]; // padding?
|
||||
/* 04 */ unk32 mUnk_04;
|
||||
/* 08 */ unk32 mUnk_08;
|
||||
/* 0c */ unk32 mUnk_0c;
|
||||
/* 10 */ unk32 mUnk_10;
|
||||
/* 14 */ unk32 mUnk_14;
|
||||
/* 18 */ unk32 mUnk_18;
|
||||
/* 1c */ unk16 mUnk_1c;
|
||||
/* 1e */ unk8 mUnk_1e;
|
||||
/* 1f */ unk8 mUnk_1f;
|
||||
/* 20 */ unk8 mUnk_20;
|
||||
/* 21 */ unk8 mUnk_21;
|
||||
/* 22 */ unk8 mUnk_22[2]; // padding?
|
||||
/* 24 */ void *mUnk_24;
|
||||
/* 28 */ void *mUnk_28;
|
||||
/* 2c */
|
||||
};
|
||||
|
||||
typedef u32 ItemModelId;
|
||||
enum ItemModelId_ {
|
||||
ItemModelId_OshusSword, // swA
|
||||
@@ -186,7 +166,7 @@ struct SaveItemManager {
|
||||
};
|
||||
|
||||
class ItemManager : public SysObject {
|
||||
private:
|
||||
public:
|
||||
/* 000 */ ItemFlag mEquippedItem;
|
||||
/* 004 */ ItemFlag mPrevEquippedItem;
|
||||
/* 008 */ ItemFlag mForcedItem; // game crashes when any item besides this one is equipped
|
||||
@@ -227,7 +207,6 @@ private:
|
||||
/* 14e */ unk8 mUnk_14e[0x2]; // padding?
|
||||
/* 150 */
|
||||
|
||||
public:
|
||||
static ItemManager *Create();
|
||||
static void Destroy();
|
||||
ItemManager();
|
||||
|
||||
@@ -57,8 +57,8 @@ public:
|
||||
/* 84 */ ActorRef mFollowRef;
|
||||
/* 8c */ ActorRef mNextFollowRef;
|
||||
/* 94 */ ActorRef mLastFollowRef;
|
||||
/* 9c */ unk8 mUnk_9c;
|
||||
/* 9d */ unk8 mUnk_9d;
|
||||
/* 9c */ u8 mUnk_9c;
|
||||
/* 9d */ u8 mUnk_9d;
|
||||
/* 9e */ unk8 mUnk_9e[2];
|
||||
/* a0 */ void *mFollowActor;
|
||||
/* a4 */ q20 mFollowDist;
|
||||
@@ -75,7 +75,7 @@ public:
|
||||
/* d8 */
|
||||
|
||||
static bool func_ov00_020aeeac();
|
||||
void func_ov00_020aeef8();
|
||||
bool func_ov00_020aeef8();
|
||||
void func_ov00_020aef30();
|
||||
void UpdateAim();
|
||||
Actor *GetFollowActor();
|
||||
@@ -124,6 +124,13 @@ public:
|
||||
bool IsTouchingFast();
|
||||
bool IsTappedNow();
|
||||
bool func_ov00_020b13c4();
|
||||
|
||||
// More methods starting from 020b78a0, different TU?
|
||||
void ResetTouchWorld();
|
||||
void InitTouchMovement();
|
||||
void func_ov000_020b7924(s32 param1);
|
||||
void ApplyTouchWorld(Vec3p *result, q20 scale);
|
||||
bool func_ov000_020b7d6c();
|
||||
};
|
||||
|
||||
extern PlayerControl *gPlayerControl;
|
||||
|
||||
@@ -5,6 +5,7 @@ extern "C" {
|
||||
#include "Actor/Actor.hpp"
|
||||
#include "Actor/ActorManager.hpp"
|
||||
#include "Actor/ActorPlayerDummy.hpp"
|
||||
#include "DTCM/UnkStruct_027e077c.hpp"
|
||||
#include "Item/ItemManager.hpp"
|
||||
#include "Map/MapManager.hpp"
|
||||
#include "Player/EquipSword.hpp"
|
||||
@@ -255,13 +256,6 @@ ARM bool Actor::func_ov00_020c195c() {
|
||||
return true;
|
||||
}
|
||||
|
||||
struct UnkStruct2 {
|
||||
/* 0 */ u32 mUnk_0;
|
||||
/* 4 */ u32 mUnk_4;
|
||||
/* 8 */
|
||||
};
|
||||
extern UnkStruct2 data_027e077c;
|
||||
extern u8 data_02056be4[];
|
||||
extern "C" bool func_ov05_02103f4c(s32 param1);
|
||||
extern s32 data_027e103c;
|
||||
ARM bool Actor::func_ov00_020c198c() {
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#include "Actor/ActorManager.hpp"
|
||||
#include "DTCM/UnkStruct_027e077c.hpp"
|
||||
#include "DTCM/UnkStruct_027e103c.hpp"
|
||||
#include "Map/MapManager.hpp"
|
||||
|
||||
@@ -8,8 +9,6 @@ extern "C" Cylinder *func_ov000_020c3ef0(void *, u32 index);
|
||||
extern "C" bool func_ov000_020c3f08(void *, u32 index);
|
||||
extern "C" void func_ov000_020c3f3c(void *, u32 index, Cylinder *cylinder);
|
||||
extern "C" void func_ov000_020c3f54(void *, u32 param2);
|
||||
extern s32 data_027e077c;
|
||||
extern u8 data_02056be4[];
|
||||
|
||||
ARM void ActorManager::DeleteActor(u32 index, bool param2) {
|
||||
if (!param2) {
|
||||
@@ -52,7 +51,7 @@ ARM void ActorManager::func_ov00_020c3484(ActorRef *ref, ActorManager *actorMgr,
|
||||
|
||||
q20 minDistance = 0x7fffffff;
|
||||
Actor **actorIter = actorMgr->mActorTable;
|
||||
u8 unkByte = data_02056be4[data_027e077c];
|
||||
u8 unkByte = data_02056be4[data_027e077c.mUnk_0];
|
||||
bool unk1 = (unkByte & 1) != 0;
|
||||
Actor **actorTableEnd = actorIter + actorMgr->mMaxActorIndex;
|
||||
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
#include "Item/ItemManager.hpp"
|
||||
#include "DTCM/UnkStruct_027e0d38.hpp"
|
||||
#include "Player/PlayerLinkBase.hpp"
|
||||
|
||||
static const char *sShipPartTypes[] = {"anc", "bow", "hul", "can", "dco", "pdl", "fnl", "brg"};
|
||||
@@ -124,7 +125,6 @@ ARM ActorNavi *ItemManager::GetFairy(FairyId id) const {
|
||||
return mFairies[id];
|
||||
}
|
||||
|
||||
extern UnkStruct_027e0d38 *data_027e0d38;
|
||||
extern unk32 gPlayerAnimHandler;
|
||||
extern "C" void LoadEquipItemModel(unk32 param1, ItemFlag param2);
|
||||
extern "C" void _ZNK11ItemManager15GetEquippedItemEv();
|
||||
@@ -232,15 +232,11 @@ ARM void ItemManager::GiveAmmo(ItemFlag equipId, u16 amount) {
|
||||
(*mAmmo)[equipId] = this->GetMaxAmmo(equipId);
|
||||
}
|
||||
|
||||
extern "C" unk32 func_ov00_02078b40(UnkStruct_027e0d38 *param1);
|
||||
extern void *data_027e10a4;
|
||||
extern "C" bool func_ov15_02136670(void *param1);
|
||||
extern unk8 data_ov29_0217a4ac[];
|
||||
extern "C" bool _ZN14PlayerLinkBase18func_ov00_020bbd80Ei(unk32 param1, unk32 param2);
|
||||
extern "C" bool _ZNK11ItemManager7HasItemEi();
|
||||
extern "C" void _ZN11ItemManager12GetEquipItemEi();
|
||||
ARM bool ItemManager::func_ov00_020ad790(unk32 param1) {
|
||||
unk32 unk1 = func_ov00_02078b40(data_027e0d38);
|
||||
unk32 unk1 = data_027e0d38->func_ov00_02078b40();
|
||||
if (unk1 == 2) return func_ov15_02136670(data_027e10a4);
|
||||
if (data_027e0d38->mUnk_14 == 1) return false;
|
||||
// NONMATCH: OverlayId_29 should be in constant pool
|
||||
|
||||
@@ -1,14 +1,120 @@
|
||||
#include "Player/PlayerControl.hpp"
|
||||
#include "Actor/ActorManager.hpp"
|
||||
#include "DTCM/UnkStruct_027e05f8.hpp"
|
||||
#include "DTCM/UnkStruct_027e077c.hpp"
|
||||
#include "DTCM/UnkStruct_027e0c68.hpp"
|
||||
#include "DTCM/UnkStruct_027e0d38.hpp"
|
||||
#include "DTCM/UnkStruct_027e103c.hpp"
|
||||
#include "Item/ItemManager.hpp"
|
||||
#include "Save/AdventureFlags.hpp"
|
||||
|
||||
ARM bool PlayerControl::func_ov00_020aeeac() {
|
||||
unk32 index = data_027e077c.mUnk_0;
|
||||
if (((data_02056be4[index] & 1) != 0) || ((data_02056be4[index] & 4) != 0)) {
|
||||
return false;
|
||||
}
|
||||
return index == data_027e077c.mUnk_4;
|
||||
}
|
||||
|
||||
ARM bool PlayerControl::func_ov00_020aeef8() {
|
||||
unk32 index = data_027e077c.mUnk_0;
|
||||
if (index == 0x37 || index == 0x3b) {
|
||||
return false;
|
||||
}
|
||||
if (index == 0x3d) {
|
||||
return true;
|
||||
}
|
||||
return func_ov00_020aeeac();
|
||||
}
|
||||
|
||||
THUMB void PlayerControl::func_ov00_020aef30() {
|
||||
this->ResetTouchWorld();
|
||||
if (mDebug) {
|
||||
// 操作 = Operation
|
||||
mDebug->vfunc_20(0, "\x91\x80\x8d\xec", 'PCTL', 'PLYR', 0, 0);
|
||||
}
|
||||
}
|
||||
|
||||
THUMB void PlayerControl::UpdateAim() {
|
||||
ResetTouchWorld();
|
||||
mAimWorld.x = 0;
|
||||
mAimWorld.y = 0;
|
||||
mAimWorld.z = 0;
|
||||
mUnk_80 = false;
|
||||
mUnk_82 = 0;
|
||||
mFollowRef.Reset();
|
||||
mNextFollowRef.Reset();
|
||||
mFollowing = false;
|
||||
mAim = gVec3p_ZERO;
|
||||
s32 iVar2 = data_027e0d38->func_ov000_02078b40();
|
||||
if (iVar2 == 2) {
|
||||
data_027e103c->func_ov000_020cf2b8();
|
||||
}
|
||||
mUnk_c8 = -1;
|
||||
mUnk_cc = -1;
|
||||
}
|
||||
|
||||
ARM Actor *PlayerControl::GetFollowActor() {
|
||||
return gActorManager->GetActor(&mFollowRef);
|
||||
}
|
||||
|
||||
ARM bool PlayerControl::func_ov00_020af01c(unk8 *param1) {
|
||||
if (mFollowing) {
|
||||
param1[0] = mUnk_9c;
|
||||
param1[1] = mUnk_9d;
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
ARM void PlayerControl::SetUnk_80() {
|
||||
mUnk_80 = true;
|
||||
}
|
||||
|
||||
ARM void PlayerControl::StopFollowing() {
|
||||
mFollowRef.Reset();
|
||||
mFollowing = false;
|
||||
mFollowActor = NULL;
|
||||
}
|
||||
|
||||
ARM void PlayerControl::func_ov00_020af06c() {
|
||||
if (!mUnk_78) {
|
||||
mUsingEquipItem = false;
|
||||
return;
|
||||
}
|
||||
if (mUnk_7a) {
|
||||
mUnk_7b = mUsingEquipItem;
|
||||
}
|
||||
if (gAdventureFlags->func_ov00_02097738() || data_027e0c68->mUnk_04 != 0) {
|
||||
if (data_027e0d38->func_ov000_02078b40() != 2) {
|
||||
mUsingEquipItem = false;
|
||||
}
|
||||
return;
|
||||
}
|
||||
if (gItemManager->mEquippedItem == ItemFlag_PotionA) {
|
||||
if (gItemManager->HasPotion(0)) {
|
||||
mUsingEquipItem = true;
|
||||
return;
|
||||
}
|
||||
} else if (gItemManager->mEquippedItem == ItemFlag_PotionB) {
|
||||
if (gItemManager->HasPotion(1)) {
|
||||
mUsingEquipItem = true;
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (data_027e0d38->func_ov000_02078b40() == 2) {
|
||||
mUnk_7b = false;
|
||||
mUnk_7b = (mUnk_7b & gItemManager->func_ov00_020ad790(1)) != 0;
|
||||
} else {
|
||||
if (((data_027e05f8.mUnk_0 & 0x300) == 0) || !func_ov00_020aeef8()) {
|
||||
if (((data_027e05f8.mUnk_0 & 0x300) == 0) && mUnk_83) {
|
||||
mUnk_7b = false;
|
||||
} else {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bool PlayerControl::func_ov00_020aeeac() {}
|
||||
void PlayerControl::func_ov00_020aeef8() {}
|
||||
void PlayerControl::func_ov00_020aef30() {}
|
||||
void PlayerControl::UpdateAim() {}
|
||||
Actor *PlayerControl::GetFollowActor() {}
|
||||
bool PlayerControl::func_ov00_020af01c(unk8 *param1) {}
|
||||
void PlayerControl::SetUnk_80() {}
|
||||
void PlayerControl::StopFollowing() {}
|
||||
void PlayerControl::func_ov00_020af06c() {}
|
||||
void PlayerControl::UpdateUsingEquipItem() {}
|
||||
bool PlayerControl::func_ov00_020af2d4(u32 param1, bool param2) {}
|
||||
bool PlayerControl::CheckTouchedNow(u32 param1) {}
|
||||
|
||||
Reference in New Issue
Block a user