some formatting fixup

This commit is contained in:
Elijah Thomas
2023-08-10 13:46:38 -04:00
parent 2ebf0806ee
commit de8b60021c
16 changed files with 253 additions and 472 deletions
+9 -17
View File
@@ -1060,7 +1060,7 @@ getParams2Lower__9dAcBase_cFv = .text:0x8002D010; // type:function size:0xC
findActor__9dAcBase_cFPcP9dAcBase_c = .text:0x8002D020; // type:function size:0x74
searchActor__9dAcBase_cFR9dAcBase_c = .text:0x8002D0A0; // type:function size:0x88
forEachActor__9dAcBase_cFPvR9dAcBase_c = .text:0x8002D130; // type:function size:0x5C
getXZAngleToPlayer__9dAcBase_cFRsR9dAcBase_c = .text:0x8002D190; // type:function size:0x3C
getXZAngleToPlayer__9dAcBase_cFv = .text:0x8002D190; // type:function size:0x3C
getDistanceToActor__9dAcBase_cFR9dAcBase_cfPf = .text:0x8002D1D0; // type:function size:0xB8
getDistanceAndAngleToActor__9dAcBase_cFR9dAcBase_cfssPfPsPs = .text:0x8002D290; // type:function size:0x148
isWithinPlayerRadius__9dAcBase_cFf = .text:0x8002D3E0; // type:function size:0x5C
@@ -1071,26 +1071,18 @@ updateRoomId__9dAcBase_cFf = .text:0x8002D4B0; // type:function size:0x90
isRoomFlags_0x6_Set__9dAcBase_cFv = .text:0x8002D540; // type:function size:0x44
FUN_8002d590__9dAcBase_cFv = .text:0x8002D590; // type:function size:0x20
FUN_8002d5b0__9dAcBase_cFv = .text:0x8002D5B0; // type:function size:0x20
playSound__9dAcBase_cFv = .text:0x8002D5D0; // type:function size:0x24
fn_8002D5F4 = .text:0x8002D5F4; // type:function size:0x4
FUN_8002d600__9dAcBase_cFv = .text:0x8002D600; // type:function size:0x24
fn_8002D624 = .text:0x8002D624; // type:function size:0x4
playSound__9dAcBase_cFv = .text:0x8002D5D0; // type:function size:0x28
FUN_8002d600__9dAcBase_cFv = .text:0x8002D600; // type:function size:0x28
FUN_8002d630__9dAcBase_cFv = .text:0x8002D630; // type:function size:0x9C
FUN_8002d6d0__9dAcBase_cFv = .text:0x8002D6D0; // type:function size:0x3C
fn_8002D70C = .text:0x8002D70C; // type:function size:0x4
playSoundEffect1__9dAcBase_cFv = .text:0x8002D710; // type:function size:0x24
fn_8002D734 = .text:0x8002D734; // type:function size:0x4
FUN_8002d740__9dAcBase_cFv = .text:0x8002D740; // type:function size:0x24
fn_8002D764 = .text:0x8002D764; // type:function size:0x4
FUN_8002d770__9dAcBase_cFv = .text:0x8002D770; // type:function size:0x24
fn_8002D794 = .text:0x8002D794; // type:function size:0x4
FUN_8002d7a0__9dAcBase_cFv = .text:0x8002D7A0; // type:function size:0x24
fn_8002D7C4 = .text:0x8002D7C4; // type:function size:0x4
FUN_8002d6d0__9dAcBase_cFv = .text:0x8002D6D0; // type:function size:0x40
playSoundEffect1__9dAcBase_cFv = .text:0x8002D710; // type:function size:0x28
FUN_8002d740__9dAcBase_cFv = .text:0x8002D740; // type:function size:0x28
FUN_8002d770__9dAcBase_cFv = .text:0x8002D770; // type:function size:0x28
FUN_8002d7a0__9dAcBase_cFv = .text:0x8002D7A0; // type:function size:0x28
FUN_8002d7d0__9dAcBase_cFv = .text:0x8002D7D0; // type:function size:0x20
FUN_8002d7f0__9dAcBase_cFv = .text:0x8002D7F0; // type:function size:0x20
FUN_8002d810__9dAcBase_cFv = .text:0x8002D810; // type:function size:0x20
FUN_8002d830__9dAcBase_cFv = .text:0x8002D830; // type:function size:0x24
fn_8002D854 = .text:0x8002D854; // type:function size:0x4
FUN_8002d830__9dAcBase_cFv = .text:0x8002D830; // type:function size:0x28
FUN_8002d860__9dAcBase_cFv = .text:0x8002D860; // type:function size:0x20
FUN_8002d880__9dAcBase_cFv = .text:0x8002D880; // type:function size:0x8
FUN_8002d890__9dAcBase_cFv = .text:0x8002D890; // type:function size:0x88
+6 -6
View File
@@ -28,12 +28,12 @@ struct ObjInfoPtr {
/* 0x0B */ u8 subtype;
};
class fBase_c;
struct ActorReference {
ActorReference* prev;
ActorReference* next;
fBase_c* link;
};
// is now fLiNdBa_c
// struct ActorReference {
// ActorReference* prev;
// ActorReference* next;
// fBase_c* link;
// };
class UnkCollider {
+3 -12
View File
@@ -21,20 +21,11 @@ protected:
friend class cListMg_c;
};
/// @brief A doubly-linked list container. See cListNd_c.
/// @note Unofficial name.
class cListMg_c {
public:
/// @brief Constructs a new list container.
cListMg_c() : mpFirst(nullptr), mpLast(nullptr) {}
/**
* @brief Inserts a node after the given previous node.
*
* @param node The node to insert.
* @param prevNode The node to insert it after, or @p nullptr to insert it at the beginning.
* @return If the operation was successful.
*/
/* 802e2be0 */ cListMg_c() : mpFirst(nullptr), mpLast(nullptr) {}
// /* 802e2880 */ ~cListMg_c();
bool insertAfter(cListNd_c *node, cListNd_c *prevNode);
/**
+94 -92
View File
@@ -4,6 +4,9 @@
#include <d/d_heap.h>
#include <m/m_allocator.h>
#include <UnknownTypeBelongings.h>
#include <m/types_m.h>
#include <m/m_angle.h>
// Ghidra: ActorBase
// size: 0xFC
// non-official name
@@ -17,115 +20,114 @@ public:
/* 0x94 */ void* soundRelated;
protected:
/* 80501544 */ // vtable
/* 0x08 */ virtual int create();
/* 0x10 */ virtual void postCreate(MAIN_STATE_e state);
/* 0x18 */ virtual int preDelete();
/* 0x20 */ virtual int execute(); // calls either actorExecute/executeInEvent
/* 0x24 */ virtual int preExecute(); // looks at some actor properties
/* 0x28 */ virtual void postExecute(MAIN_STATE_e state); // not fully understood
/* 0x44 */ virtual bool createHeap();
/* 0x48 */ virtual ~dAcBase_c();
/* 0x4C */ virtual int actorCreate(); // name is assumed
/* 0x50 */ virtual int actorReCreate(); // name is assumed
/* 0x54 */ virtual int actorExecute(); // name is assumed
/* 0x58 */ virtual int actorExecuteInEvent(); // name is assumed
/* 0x5C */ virtual void unkVirtFunc_0x5C();
/* 0x60 */ virtual void unkVirtFunc_0x60();
/* 0x64 */ virtual bool restorePosRotFromCopy();
/* 0x68 */ virtual void* getCurrentEventActor();
/* 0x6C */ virtual void unkVirtFunc_0x6C();
/* 0x70 */ virtual void doInteraction(s32);
/* 0x08 | 8002c880 */ virtual int create();
/* 0x10 | 8002c8f0 */ virtual void postCreate(MAIN_STATE_e state);
/* 0x18 | 8002c940 */ virtual int preDelete();
/* 0x20 | 8002cc10 */ virtual int execute(); // calls either actorExecute/executeInEvent
/* 0x24 | 8002cb10 */ virtual int preExecute(); // looks at some actor properties
/* 0x28 | 8002ccc0 */ virtual void postExecute(MAIN_STATE_e state); // not fully understood
/* 0x44 | 8002c3a0 */ virtual bool createHeap();
/* 0x48 | 8002c590 */ virtual ~dAcBase_c();
/* 0x4C | 8002c860 */ virtual int actorCreate(); // name is assumed
/* 0x50 | 8002c870 */ virtual int actorReCreate(); // name is assumed
/* 0x54 | 8002cca0 */ virtual int actorExecute(); // name is assumed
/* 0x58 | 8002ccb0 */ virtual int actorExecuteInEvent(); // name is assumed
/* 0x5C | 8002ce90 */ virtual void unkVirtFunc_0x5C();
/* 0x60 | 8002cea0 */ virtual void unkVirtFunc_0x60();
/* 0x64 | 8002ceb0 */ virtual bool restorePosRotFromCopy();
/* 0x68 | 8002db80 */ virtual void* getCurrentEventActor();
/* 0x6C | 8002db90 */ virtual void unkVirtFunc_0x6C();
/* 0x70 | 8002dba0 */ virtual void doInteraction(s32);
public:
dAcBase_c();
/* 8002c3b0 */ dAcBase_c();
public:
// funcs found in TU
static void setTempCreateParams( \
/* 8002c650 */ static void setTempCreateParams( \
Vec3f* pos, Vec3s* rot, Vec3f* scale, \
s32 roomId, u32 params2, dAcBase_c* parent, \
u8 subtype, s16 unkFlag, u8 viewClipIdx,\
ObjInfoPtr* objInfo );
void* FUN_8002c690();
int initAllocatorWork1Heap(int size, char* name, int align);
int initAllocator(int size, char* name, EGG::Heap* heap, int align);
bool addActorToRoom(s32 roomId);
void setBit_field_0xE8(s32);
u32 itemDroppingAndGivingRelated(Vec3f* spawnPos, int subtype);
void fillUpperParams2Byte();
u32 getParams2_ignoreLower();
void setParams2Upper_ignoreLower(u32 val);
u8 getParams2UpperByte();
void setParams2UpperByte(u32 val);
static u32 buildParams2(u32 lower, u8 upper);
u32 getParams2Lower();
static dAcBase_c* findActor(char* objName, dAcBase_c* parent);
static dAcBase_c* searchActor(dAcBase_c& optionalParent);
// Kinda performs the code of the first param on every actor (second param is optional parent)
static void forEachActor(void*, dAcBase_c&);
// Not really static, but we currently dont have a type for the return (not just simply a s16)
static void getXZAngleToPlayer(s16&, dAcBase_c&);
// returns true if under the distThresh, False if not. the actual distance is returned in outDist
bool getDistanceToActor(dAcBase_c& actor, f32 distThresh, f32* outDist);
// same concept as above
bool getDistanceAndAngleToActor(dAcBase_c& actor, f32 distThresh, s16 yAngle, s16 xAngle, f32* outDist, s16* outDiffAngleY, s16* outDiffAngleX);
bool isWithinPlayerRadius(f32 radius);
bool getDistanceAndAngleToPlayer(f32 distThresh, s16 yAngle, s16 xAngle, f32* outDist, s16* outDiffAngleY, s16* outDiffAngleX);
f32 getDistToPlayer();
f32 getSquareDistToPlayer();
void updateRoomId(f32 yOffs);
bool isRoomFlags_0x6_Set();
// Begin Sound Effect Related
void FUN_8002d590();
void FUN_8002d5b0();
void playSound();
void FUN_8002d600();
void FUN_8002d630();
void FUN_8002d6d0();
void playSoundEffect1();
void FUN_8002d740();
void FUN_8002d770();
void FUN_8002d7a0();
void FUN_8002d7d0();
void FUN_8002d7f0();
void FUN_8002d810();
void FUN_8002d830();
void FUN_8002d860();
void FUN_8002d880();
/* 8002c690 */ void* FUN_8002c690();
/* 8002c710 */ int initAllocatorWork1Heap(int size, char* name, int align);
/* 8002c720 */ int initAllocator(int size, char* name, EGG::Heap* heap, int align);
/* 8002c7b0 */ bool addActorToRoom(s32 roomId);
/* 8002c840 */ void setBit_field_0xE8(s32);
/* 8002cf10 */ u32 itemDroppingAndGivingRelated(Vec3f* spawnPos, int subtype);
/* 8002cf90 */ void fillUpperParams2Byte();
/* 8002cfa0 */ u32 getParams2_ignoreLower();
/* 8002cfb0 */ void setParams2Upper_ignoreLower(u32 val);
/* 8002cfc0 */ u8 getParams2UpperByte();
/* 8002cfd0 */ void setParams2UpperByte(u32 val);
/* 8002cff0 */ static u32 buildParams2(u32 lower, u8 upper);
/* 8002d010 */ u32 getParams2Lower();
/* 8002d020 */ static dAcBase_c* findActor(char* objName, dAcBase_c* parent);
/* 8002d0a0 */ static dAcBase_c* searchActor(dAcBase_c& optionalParent);
// Kinda performs the code of the first param on every actor (second param is optional parent)
/* 8002d130 */static void forEachActor(void*, dAcBase_c&);
// Not really static, but we currently dont have a type for the return (not just simply a s16)
/* 8002d190 */ mAng getXZAngleToPlayer();
// returns true if under the distThresh, False if not. the actual distance is returned in outDist
/* 8002d1d0 */ bool getDistanceToActor(dAcBase_c& actor, f32 distThresh, f32* outDist);
// same concept as above
/* 8002d290 */ bool getDistanceAndAngleToActor(dAcBase_c& actor, f32 distThresh, s16 yAngle, s16 xAngle, f32* outDist, s16* outDiffAngleY, s16* outDiffAngleX);
/* 8002d3e0 */ bool isWithinPlayerRadius(f32 radius);
/* 8002d440 */ bool getDistanceAndAngleToPlayer(f32 distThresh, s16 yAngle, s16 xAngle, f32* outDist, s16* outDiffAngleY, s16* outDiffAngleX);
/* 8002d470 */ f32 getDistToPlayer();
/* 8002d4a0 */ f32 getSquareDistToPlayer();
/* 8002d4b0 */ void updateRoomId(f32 yOffs);
/* 8002d540 */ bool isRoomFlags_0x6_Set();
// Begin Sound Effect Related
/* 8002d590 */ void FUN_8002d590();
/* 8002d5b0 */ void FUN_8002d5b0();
/* 8002d5d0 */ void playSound();
/* 8002d600 */ void FUN_8002d600();
/* 8002d630 */ void FUN_8002d630();
/* 8002d6d0 */ void FUN_8002d6d0();
/* 8002d710 */ void playSoundEffect1();
/* 8002d740 */ void FUN_8002d740();
/* 8002d770 */ void FUN_8002d770();
/* 8002d7a0 */ void FUN_8002d7a0();
/* 8002d7d0 */ void FUN_8002d7d0();
/* 8002d7f0 */ void FUN_8002d7f0();
/* 8002d810 */ void FUN_8002d810();
/* 8002d830 */ void FUN_8002d830();
/* 8002d860 */ void FUN_8002d860();
/* 8002d880 */ void FUN_8002d880();
// End Sound Effect Related
void FUN_8002d890();
void setActorRef(dBase_c&);
/* 8002d890 */ void FUN_8002d890();
/* 8002d920 */ void setActorRef(dBase_c&);
// next three funcs are related
void setUnkFlag();
void FUN_8002d940();
void FUN_8002d960();
/* 8002d930 */ void setUnkFlag();
/* 8002d940 */ void FUN_8002d940();
/* 8002d960 */ void FUN_8002d960();
static dAcBase_c createActor(ProfileName actorId, u32 params1, Vec3f* pos, Vec3s* rot, \
/* 8002d980 */ static dAcBase_c createActor(ProfileName actorId, u32 params1, Vec3f* pos, Vec3s* rot, \
Vec3f* scale, u32 params2, s32 roomId, dBase_c* ref);
static dAcBase_c createActorUnkGroup3(ProfileName actorId, u32 params1, Vec3f* pos, Vec3s* rot, \
/* 8002da80 */ static dAcBase_c createActorUnkGroup3(ProfileName actorId, u32 params1, Vec3f* pos, Vec3s* rot, \
Vec3f* scale, u32 params2, s32 roomId, dBase_c* ref);
void FUN_8002dc20(s16*, s16*);
void incrementKillCounter();
void FUN_8002dcd0();
void FUN_8002dd10();
void FUN_8002dd50();
void FUN_8002dd90();
void FUN_8002ddd0();
void FUN_8002de30();
/* 8002dc20 */ void FUN_8002dc20(s16*, s16*);
/* 8002dc50 */ void incrementKillCounter();
/* 8002dcd0 */ void FUN_8002dcd0();
/* 8002dd10 */ void FUN_8002dd10();
/* 8002dd50 */ void FUN_8002dd50();
/* 8002dd90 */ void FUN_8002dd90();
/* 8002ddd0 */ void FUN_8002ddd0();
/* 8002de30 */ void FUN_8002de30();
public:
// static vars
static u32 s_Create_RoomId;
static u32 s_Create_Params2;
static u16 s_Create_UnkFlags;
static u8 s_Create_ViewClipIdx;
static Vec3f* s_Create_Position;
static Vec3s* s_Create_Rotation;
static Vec3f* s_Create_Scale;
static dAcBase_c* s_Create_Parent;
static ObjInfoPtr* s_Create_ObjInfo;
static u8 s_Create_Subtype;
/* 80571920 */ static u32 s_Create_RoomId;
/* 80571924 */ static u32 s_Create_Params2;
/* 80571928 */ static u16 s_Create_UnkFlags;
/* 8057192A */ static u8 s_Create_ViewClipIdx;
/* 80575080 */ static Vec3f* s_Create_Position;
/* 80575084 */ static Vec3s* s_Create_Rotation;
/* 80575088 */ static Vec3f* s_Create_Scale;
/* 8057508C */ static dAcBase_c* s_Create_Parent;
/* 80575090 */ static ObjInfoPtr* s_Create_ObjInfo;
/* 80575094 */ static u8 s_Create_Subtype;
};
+11 -12
View File
@@ -36,23 +36,23 @@ public:
public:
/* 8002e630 */ static dAcObjBase_c create( \
fProfile::PROFILE_NAME_e actorId, u32 roomId, u32 params1, \
Vec3f* pos, Vec3s* rot, Vec3f* scale, u32 params2 );
mVec3_c* pos, mAng3_c* rot, mVec3_c* scale, u32 params2 );
/* 8002e6d0 */ static dAcObjBase_c create( \
char* name, u32 roomId, u32 params1, \
Vec3f* pos, Vec3s* rot, Vec3f* scale, \
mVec3_c* pos, mAng3_c* rot, mVec3_c* scale, \
u32 params2, u16 id, u8 viewclipId);
/* 8002e770 */ static dAcObjBase_c* findObject(fProfile::PROFILE_NAME_e actorId,\
ActorReference* refList, dAcObjBase_c* parent);
/* 8002e7f0 */ static dAcObjBase_c* getNextObject(ActorReference* ref, dAcObjBase_c* parent);
fLiNdBa_c* refList, dAcObjBase_c* parent);
/* 8002e7f0 */ static dAcObjBase_c* getNextObject(fLiNdBa_c* ref, dAcObjBase_c* parent);
/* 8002e850 */ bool isPlayer();
/* 8002e870 */ void calcVelocity(Vec3f& pos, f32 speed);
/* 8002e870 */ void calcVelocity(mVec3_c& pos, f32 speed);
/* 8002e8e0 */ void calcVelocity();
/* 8002e9a0 */ void updateMatrix();
/* 8002ea00 */ void setDefaultCullDistance();
/* 8002ea30 */ void fn_8002EA30(f32,f32,f32,f32,f32, void*);
/* 8002ea60 */ void fn_8002EA60(void*);
/* 8002eb30 */ void fn_8002EB30(void*);
/* 8002eb90 */ void putInODesert(f32 depth, Vec3f* position);
/* 8002eb90 */ void putInODesert(f32 depth, mVec3_c* position);
// Disabling makes Items and Link Disappear
/* 8002ec70 */ void drawModelType1();
// Disabling make Lava and other objects Disappear
@@ -62,26 +62,25 @@ public:
/* 8002ee40 */ void drawShadow();
/* 8002ef40 */ void createChildAttached( \
fProfile::PROFILE_NAME_e actorId, u32 params1, \
Vec3f* pos, Vec3s* rot, Vec3f* scale, u32 params2, \
mVec3_c* pos, mAng3_c* rot, mVec3_c* scale, u32 params2, \
u32 roomId );
/* 8002ef40 */ void createChildNonAttached( \
fProfile::PROFILE_NAME_e actorId, u32 params1, \
Vec3f* pos, Vec3s* rot, Vec3f* scale, u32 params2, \
mVec3_c* pos, mAng3_c* rot, mVec3_c* scale, u32 params2, \
u32 roomId );
/* 8002efa0 */ void fn_8002efa0();
/* 8002eff0 */ bool fn_8002eff0(f32*, s16*, UnkCollider*, f32*, f32*);
/* 8002f190 */ void createChildAttached2( \
fProfile::PROFILE_NAME_e actorId, u32 params1, \
Vec3f* pos, Vec3s* rot, Vec3f* scale, u32 params2, \
mVec3_c* pos, mAng3_c* rot, mVec3_c* scale, u32 params2, \
u32 roomId );
// These may not belong here
/* 8002f1c0 */ static dAcBase_c createActorUnkGroup3( \
fProfile::PROFILE_NAME_e actorId, u32 roomId, \
u32 params1, Vec3f* pos, Vec3s* rot, Vec3f* scale, \
u32 params1, mVec3_c* pos, mAng3_c* rot, mVec3_c* scale, \
u32 params2);
/* 8002f260 */ static dAcBase_c createActorUnkGroup3( \
char* name, u32 roomId, u32 params1, \
Vec3f* pos, Vec3s* rot, Vec3f* scale, \
mVec3_c* pos, mAng3_c* rot, mVec3_c* scale, \
u32 params2, u16 id, u8 viewclipId);
};
+3 -3
View File
@@ -6,7 +6,9 @@
// Ghidra: dBase_c
// size: 0x68
// non-official but likely name
class dBase_c : public fBase_c{
class dBase_c : public fBase_c {
public:
/* 0x64 */ u32 baseProperties; // field from profile init
public:
/* 80050800 */ dBase_c();
/* 80050890 */ virtual int preExecute();
@@ -15,8 +17,6 @@ public:
/* 80050860 */ virtual void postDraw(MAIN_STATE_e state);
/* 8002c530 */ virtual ~dBase_c();
public:
u32 baseProperties; // field from profile init
public:
/* 80050980 */ static void resetFlags();
+72 -96
View File
@@ -16,44 +16,25 @@
// official name
class fBase_c {
public:
/* 0x00 */ fBaseID_e mUniqueID;
/* 0x04 */ undefined4 mParam; // params1
/* 0x08 */ ProfileName mProfName; // Actor Id
protected:
/* 0x0A */ u8 mLifecycleState;
/* 0x0B */ bool mDeleteRequest;
/* 0x0C */ bool mUpdateRequest;
/* 0x0D */ bool mRetryCreate;
/* 0x0E */ u8 mGroupType;
/* 0x0F */ u8 mProcControl;
/* 0x10 */ fManager_c mMng;
/* 0x50 */ fBaHelper_c* mpUnusedHelper;
/* 0x54 */ fLiMgBa_c mUnusedList;
/* 0x5C */ EGG::FrmHeap* mpHeap;
/* 0x00 */ fBaseID_e unique_ID;
/* 0x04 */ u32 params1; // params1
/* 0x08 */ ProfileName profile_name; // Actor Id
/* 0x0A */ u8 lifecycle_state;
/* 0x0B */ bool delete_request;
/* 0x0C */ bool update_request;
/* 0x0D */ bool retry_create;
/* 0x0E */ u8 group_type;
/* 0x0F */ u8 proc_control;
/* 0x10 */ fManager_c manager;
/* 0x50 */ fBaHelper_c* p_unused_helper;
/* 0x54 */ fLiMgBa_c unused_list;
/* 0x5C */ EGG::FrmHeap* p_heap;
/* 0x60 */ // vtable
public:
enum LIFECYCLE_e {
WAITING_FOR_CREATE,
ACTIVE,
TO_BE_DELETED
};
enum GROUP_TYPE_e {
OTHER,
SCENE,
ACTOR
};
enum MAIN_STATE_e {
CANCELED,
ERROR,
SUCCESS,
WAITING
};
enum PACK_RESULT_e {
NOT_READY,
SUCCEEDED,
FAILED,
};
enum LIFECYCLE_e { WAITING_FOR_CREATE, ACTIVE, TO_BE_DELETED };
enum GROUP_TYPE_e { OTHER, SCENE, ACTOR, STAGE, };
enum MAIN_STATE_e { CANCELED, ERROR, SUCCESS, WAITING };
enum PACK_RESULT_e { NOT_READY, SUCCEEDED, FAILED, };
enum PROC_DISABLE_e {
ROOT_DISABLE_EXECUTE = 1,
DISABLE_EXECUTE = 2,
@@ -61,72 +42,67 @@ public:
DISABLE_DRAW = 8
};
bool isProcControlFlag(u8 flag) const { return (mProcControl & flag) != 0; }
void setProcControlFlag(u8 flag) { mProcControl |= flag; }
void clearProcControlFlag(u8 flag) { mProcControl &= ~flag; }
public:
fBase_c();
static void *operator new(size_t);
static void operator delete(void *);
protected:
// This vtable should exist at 0x60
/* 0x08 */ virtual int create();
/* 0x0C */ virtual int preCreate();
/* 0x10 */ virtual void postCreate(MAIN_STATE_e state);
/* 0x14 */ virtual int doDelete();
/* 0x18 */ virtual int preDelete();
/* 0x1C */ virtual void postDelete(MAIN_STATE_e state);
/* 0x20 */ virtual int execute();
/* 0x24 */ virtual int preExecute();
/* 0x28 */ virtual void postExecute(MAIN_STATE_e state);
/* 0x2C */ virtual int draw();
/* 0x30 */ virtual int preDraw();
/* 0x34 */ virtual void postDraw(MAIN_STATE_e state);
/* 0x38 */ virtual void deleteReady();
/* 0x3C */ virtual bool entryFrmHeap(unsigned long size, EGG::Heap *parentHeap);
/* 0x40 */ virtual bool entryFrmHeapNonAdjust(unsigned long size, EGG::Heap *parentHeap);
/* 0x44 */ virtual bool createHeap();
/* 0x48 */ virtual ~fBase_c();
// Inlines
bool isProcControlFlag(u8 flag) const { return (proc_control & flag) != 0; }
void setProcControlFlag(u8 flag) { proc_control |= flag; }
void clearProcControlFlag(u8 flag) { proc_control &= ~flag; }
public:
void deleteRequest();
fBase_c *getConnectParent() const;
fBase_c *getConnectChild() const;
fBase_c *getConnectBrNext() const;
bool checkChildProcessCreateState() const;
private:
int createPack();
int deletePack();
int executePack();
int drawPack();
int commonPack(int (fBase_c::*doFunc)(), int (fBase_c::*preFunc)(), void (fBase_c::*postFunc)(MAIN_STATE_e));
int connectProc();
void runCreate();
fBase_c *getChildProcessCreateState() const;
/* 802e12f0 */ fBase_c();
/* 802e23b0 */ static void *operator new(size_t);
/* 802e2410 */ static void operator delete(void *);
public: // vtable 0x60
/* 0x08 | 802E15C0 */ virtual int create();
/* 0x0C | 802E15D0 */ virtual int preCreate();
/* 0x10 | 802E15E0 */ virtual void postCreate(MAIN_STATE_e state);
/* 0x14 | 802E1670 */ virtual int doDelete();
/* 0x18 | 802E1730 */ virtual int preDelete();
/* 0x1C | 802E17A0 */ virtual void postDelete(MAIN_STATE_e state);
/* 0x20 | 802E1910 */ virtual int execute();
/* 0x24 | 802E1920 */ virtual int preExecute();
/* 0x28 | 802E1950 */ virtual void postExecute(MAIN_STATE_e state);
/* 0x2C | 802E1A90 */ virtual int draw();
/* 0x30 | 802E1AA0 */ virtual int preDraw();
/* 0x34 | 802E1AD0 */ virtual void postDraw(MAIN_STATE_e state);
/* 0x38 | 802E1B90 */ virtual void deleteReady();
/* 0x3C | 802E20E0 */ virtual bool entryFrmHeap(unsigned long size, EGG::Heap *parentHeap);
/* 0x40 | 802E22E0 */ virtual bool entryFrmHeapNonAdjust(unsigned long size, EGG::Heap *parentHeap);
/* 0x44 | 802E23A0 */ virtual bool createHeap();
/* 0x48 | 802E1480 */ virtual ~fBase_c();
public:
static fBase_c *createChild(ProfileName profName, fBase_c *parent, unsigned long param, u8 groupType);
static fBase_c *createRoot(ProfileName profName, unsigned long param, u8 groupType);
/* 802e1500 */ int commonPack(int (fBase_c::*doFunc)(), int (fBase_c::*preFunc)(), void (fBase_c::*postFunc)(MAIN_STATE_e));
/* 802e1680 */ int createPack();
/* 802e1860 */ int deletePack();
/* 802e1960 */ int executePack();
/* 802e1ae0 */ int drawPack();
/* 802e1ba0 */ int connectProc();
/* 802e1e00 */ void deleteRequest();
/* 802e1f90 */ fBase_c *getConnectParent() const;
/* 802e1fb0 */ fBase_c *getConnectChild() const;
/* 802e1fd0 */ fBase_c *getConnectBrNext() const;
/* 802e2420 */ void runCreate();
/* 802e24a0 */ fBase_c *getChildProcessCreateState() const;
/* 802e2510 */ bool checkChildProcessCreateState() const;
public:
/* 802e2540 */ static void setTmpCtData(ProfileName profName, fTrNdBa_c *connectParent, unsigned long param, u8 groupType);
/* 802e2560 */ static fBase_c *fBase_make(ProfileName profName, fTrNdBa_c *connectParent, unsigned long param, u8 groupType);
/* 802e2640 */ static fBase_c *createRoot(ProfileName profName, unsigned long param, u8 groupType);
/* 802e2600 */ static fBase_c *createChild(ProfileName profName, fBase_c *parent, unsigned long param, u8 groupType);
public:
/* 80575ba8 */ static fLiMgBa_c m_additional_actors;
/* 80575bb0 */ static int (*sLoadAsyncCallback)();
/* 80575bb4 */ static void (*sUnloadCallback)();
private:
static void setTmpCtData(ProfileName profName, fTrNdBa_c *connectParent, unsigned long param, u8 groupType);
static fBase_c *fBase_make(ProfileName profName, fTrNdBa_c *connectParent, unsigned long param, u8 groupType);
protected:
// these still exist and are still unused
static int (*sLoadAsyncCallback)();
static void (*sUnloadCallback)();
private:
static fBaseID_e m_rootUniqueID;
static ProfileName m_tmpCtProfName;
static fTrNdBa_c *m_tmpCtConnectParent;
static u32 m_tmpCtParam;
static u8 m_tmpCtGroupType;
/* 80573fb8 */ static fBaseID_e m_rootUniqueID;
/* 805b84c8 */ static ProfileName m_tmpCtProfName;
/* 805b84cc */ static fTrNdBa_c *m_tmpCtConnectParent;
/* 805b84d0 */ static u32 m_tmpCtParam;
/* 805b84d4 */ static u8 m_tmpCtGroupType;
friend class fManager_c;
friend class fLiNdBa_c;
+4 -7
View File
@@ -21,13 +21,10 @@ public:
*/
int countNodeByProfName(ProfileName profName) const;
/**
* @brief Finds a node in this list with the given ID.
*
* @param id The ID to search for.
* @return The found node, or @p nullptr if none were found.
*/
const fLiNdBa_c *searchNodeByID(fBaseID_e id) const;
/* 802e2760 */ const fLiNdBa_c *searchNodeByID(fBaseID_e id) const;
/* 802e2790 */ const fLiNdBa_c *searchNodeByID(fBaseID_e id, fLiMgBa_c* start) const;
/* 802e27d0 */ void link(fLiNdBa_c&, fBase_c*);
/* 802e2830 */ void unlink(fLiNdBa_c&);
inline fLiNdBa_c *getFirst() const {
return (fLiNdBa_c *) cListMg_c::getFirst();
+2 -14
View File
@@ -13,21 +13,9 @@ class fBase_c;
/// @note Unofficial name.
class fLiMgPTMF_c : public fLiMgBa_c {
public:
/// @brief Constructs a new list node.
/// @param procFunc The process function.
fLiMgPTMF_c(int (fBase_c::*procFunc)()) : mpProcFunc(procFunc) {}
/**
* @brief Inserts a node in the correct place according to its priority.
*
* @param node The node to insert.
* @return If the operation was successful.
*/
bool addNode(fLiNdPrio_c *node);
/// @brief Calls the process function ::mpProcFunc on the owner of each node in the list.
/// @return If the operation was successful.
bool walkPack();
/* 802e2680 */ bool addNode(fLiNdPrio_c *node);
/* 802e26e0 */ bool walkPack();
fLiNdPrio_c *getFirst() const {
return (fLiNdPrio_c *) fLiMgBa_c::getFirst();
+3 -10
View File
@@ -7,14 +7,11 @@
class fBase_c;
/// @brief A list node with an owner reference.
/// @note Unofficial name.
// Ghidra: Used to be ActorReference
class fLiNdBa_c : public cListNd_c {
public:
/// @brief Constructs a new list node.
/// @param owner The node's owner.
fLiNdBa_c(fBase_c *owner) : mpOwner(owner) {}
fLiNdBa_c(fBase_c *owner) : p_owner(owner) {}
inline fLiNdBa_c *getPrev() const {
return (fLiNdBa_c *) cListNd_c::getPrev();
@@ -24,9 +21,5 @@ public:
return (fLiNdBa_c *) cListNd_c::getNext();
}
/// @brief Removes this node from the owner's fBase_c::mUnusedList.
/// @note Unofficial name. Might not actually belong to this class (xor trick on hash).
void removeSelf();
fBase_c *mpOwner; ///< The owner of this node.
fBase_c *p_owner;
};
+21 -38
View File
@@ -15,16 +15,13 @@
class fBase_c;
/// @brief A class that manages the execution of the bases.
class fManager_c {
public:
/// @brief The processes for fManager_c.
enum LOOP_PROC_e {
NOTHING, CONNECT, CREATE, EXECUTE, DELETE, DRAW
};
/// @brief Flags for different processes, induced from ::LOOP_PROC_e.
enum PROC_FLAGS {
PROC_FLAG_CONNECT = GET_PROC_FLAG(CONNECT),
PROC_FLAG_CREATE = GET_PROC_FLAG(CREATE),
@@ -33,48 +30,34 @@ public:
PROC_FLAG_DRAW = GET_PROC_FLAG(DRAW)
};
/// @brief Constructs a new manager.
/// @param owner The manager's owner.
fManager_c(fBase_c *owner) :
mConnectNode(owner),
mExecuteNode(owner),
mDrawNode(owner),
mSearchNode(owner) {}
connect_node(owner),
execute_node(owner),
draw_node(owner),
search_node(owner) {}
/// @brief Gets the index of the search list corresponding to the owner of the manager. See ::m_searchManage.
int getSearchTableNum();
/// @brief Executes the currently enabled processes on all the bases in the respective lists.
static void mainLoop();
/// @brief Searches for a base with the given ID.
static fBase_c *searchBaseByID(fBaseID_e id);
/// @brief Searches for a base with a given profile name, optionally under a given parent.
static fBase_c *searchBaseByProfName(ProfileName profID, const fBase_c *parent);
/// @brief Searches for a base with a given group type, optionally under a given parent.
static fBase_c *searchBaseByGroupType(unsigned char groupType, const fBase_c *parent);
/* 802e28c0 */ int getSearchTableNum();
/* 802e28d0 */ static fBase_c *searchBaseByID(fBaseID_e id);
/* 802e2920 */ static fBase_c *searchBaseByProfName(ProfileName profID, const fBase_c *parent);
/* 802e2980 */ static fBase_c *searchBaseByGroupType(unsigned char groupType, const fBase_c *parent);
/* 802e29e0 */ static void mainLoop();
private:
fTrNdBa_c mConnectNode; ///< The node in ::m_connectManage.
fLiNdPrio_c mExecuteNode; ///< The node in ::m_executeManage.
fLiNdPrio_c mDrawNode; ///< The node in ::m_drawManage.
fLiNdBa_c mSearchNode; ///< The node in ::m_searchManage.
fTrNdBa_c connect_node; ///< The node in ::m_connectManage.
fLiNdPrio_c execute_node; ///< The node in ::m_executeManage.
fLiNdPrio_c draw_node; ///< The node in ::m_drawManage.
fLiNdBa_c search_node; ///< The node in ::m_searchManage.
static fTrMgPTMF_c m_connectManage; ///< A tree that connects all loaded bases.
static fLiMgPTMF_c m_createManage; ///< A list of all the bases scheduled for creation.
static fLiMgPTMF_c m_executeManage; ///< A list of all the bases scheduled for execution.
static fLiMgPTMF_c m_deleteManage; ///< A list of all the bases scheduled for deletion.
static fLiMgPTMF_c m_drawManage; ///< A list of all the bases scheduled for drawing.
/* 805b84d8 */ static fTrMgPTMF_c m_connectManage; ///< A tree that connects all loaded bases.
/* 805b84e8 */ static fLiMgPTMF_c m_createManage; ///< A list of all the bases scheduled for creation.
/* 805b84fc */ static fLiMgPTMF_c m_executeManage; ///< A list of all the bases scheduled for execution.
/* 805b8510 */ static fLiMgPTMF_c m_drawManage; ///< A list of all the bases scheduled for drawing.
/* 805b8524 */ static fLiMgPTMF_c m_deleteManage; ///< A list of all the bases scheduled for deletion.
/// @brief An array of lists that is used to search for bases.
/// @details Bases are distributed evenly between each entry in the array.
/// This allows for more efficient base lookups.
static fLiMgBa_c m_searchManage[8];
/* 805b8548 */ static fLiMgBa_c m_searchManage[8];
static u32 m_StopProcInf; ///< Which processes should be executed this frame.
static LOOP_PROC_e m_nowLoopProc; ///< The process ::mainLoop is currently in.
/* 80575bb8 */ static u32 m_StopProcInf; ///< Which processes should be executed this frame.
/* 80573fc0 */ static LOOP_PROC_e m_nowLoopProc; ///< The process ::mainLoop is currently in.
friend class fBase_c;
};
+2 -5
View File
@@ -8,12 +8,9 @@
class fBase_c;
/// @brief A tree node with an owner reference.
class fTrNdBa_c : public cTreeNd_c {
public:
/// @brief Constructs a new tree node.
/// @param owner The node's owner.
fTrNdBa_c(fBase_c *owner) : mpOwner(owner) {}
fTrNdBa_c(fBase_c *owner) : p_owner(owner) {}
fTrNdBa_c *getTreeNext() const {
return (fTrNdBa_c *) cTreeNd_c::getTreeNext();
@@ -39,5 +36,5 @@ public:
return (fTrNdBa_c *) cTreeNd_c::getBrNext();
}
fBase_c *mpOwner; ///< The owner of this node.
fBase_c *p_owner;
};
+1 -1
View File
@@ -7,5 +7,5 @@ struct mAng {
};
class mAng3_c {
s16 x,y,z;
};
+19 -156
View File
@@ -2,34 +2,29 @@
// .sdata
/* 0x80571920 */ u32 dAcBase_c::s_Create_RoomId = -1;
/* 0x80571924 */ u32 dAcBase_c::s_Create_Params2 = -1;
/* 0x80571928 */ u16 dAcBase_c::s_Create_UnkFlags = -1;
/* 0x8057192A */ u8 dAcBase_c::s_Create_ViewClipIdx = -1;
u32 dAcBase_c::s_Create_RoomId = -1;
u32 dAcBase_c::s_Create_Params2 = -1;
u16 dAcBase_c::s_Create_UnkFlags = -1;
u8 dAcBase_c::s_Create_ViewClipIdx = -1;
// .sbss
/* 0x80575080 */ Vec3f* dAcBase_c::s_Create_Position;
/* 0x80575084 */ Vec3s* dAcBase_c::s_Create_Rotation;
/* 0x80575088 */ Vec3f* dAcBase_c::s_Create_Scale;
/* 0x8057508C */ dAcBase_c* dAcBase_c::s_Create_Parent;
/* 0x80575090 */ ObjInfoPtr* dAcBase_c::s_Create_ObjInfo;
/* 0x80575094 */ u8 dAcBase_c::s_Create_Subtype;
Vec3f* dAcBase_c::s_Create_Position;
Vec3s* dAcBase_c::s_Create_Rotation;
Vec3f* dAcBase_c::s_Create_Scale;
dAcBase_c* dAcBase_c::s_Create_Parent;
ObjInfoPtr* dAcBase_c::s_Create_ObjInfo;
u8 dAcBase_c::s_Create_Subtype;
/* 8002c3a0 */
bool dAcBase_c::createHeap() {
return true;
}
/* 8002c3b0 */
dAcBase_c::dAcBase_c() {}
/* 8002c530 */ // dont know how this got here
dBase_c::~dBase_c() {}
/* 8002c530 */ dBase_c::~dBase_c() {}
/* 8002c590 */
dAcBase_c::~dAcBase_c() {}
/* 8002c650 */
void dAcBase_c::setTempCreateParams( \
Vec3f* pos, Vec3s* rot, Vec3f* scale, \
s32 roomId, u32 params2, dAcBase_c* parent, \
@@ -47,18 +42,12 @@ void dAcBase_c::setTempCreateParams( \
s_Create_ViewClipIdx = viewClipIdx;
s_Create_ObjInfo = objInfo;
}
/* 8002c690 */
void* dAcBase_c::FUN_8002c690() {}
/* 8002c710 */
int dAcBase_c::initAllocatorWork1Heap(int size, char* name, int align) {
initAllocator(size, name, dHeap::work1Heap, align);
}
extern "C" int fn_802EE510(mAllocator_c*, int size, EGG::Heap* heap, char* name, int align, int unk);
/* 8002c720 */
int dAcBase_c::initAllocator(int size, char* name, EGG::Heap* heap, int align) {
if (fn_802EE510(&mHeapAllocator, size, heap, name, 0x20, 0) == 0){
return 0;
@@ -69,102 +58,43 @@ int dAcBase_c::initAllocator(int size, char* name, EGG::Heap* heap, int align) {
return success;
}
/* 8002c7b0 */
bool dAcBase_c::addActorToRoom(s32 roomId) {}
/* 8002c840 */
void dAcBase_c::setBit_field_0xE8(s32) {}
/* 8002c860 */ // virt func, initiates the allocator
int dAcBase_c::actorCreate() {}
/* 8002c870 */ // virt func
int dAcBase_c::actorReCreate() {}
/* 8002c880 */
int dAcBase_c::create() {}
/* 8002c8f0 */
void dAcBase_c::postCreate(fBase_c::MAIN_STATE_e state) {}
/* 8002c940 */
int dAcBase_c::preDelete() {}
/* 8002cb10 */
int dAcBase_c::preExecute() {}
/* 8002cc10 */
int dAcBase_c::execute() {}
/* 8002cca0 */
int dAcBase_c::actorExecute() {}
/* 8002ccb0 */
int dAcBase_c::actorExecuteInEvent() {}
/* 8002ccc0 */
void dAcBase_c::postExecute(fBase_c::MAIN_STATE_e state) {}
/* 8002ce90 */
void dAcBase_c::unkVirtFunc_0x5C() { return; }
/* 8002cea0 */
void dAcBase_c::unkVirtFunc_0x60() { return; }
/* 8002ceb0 */
bool dAcBase_c::restorePosRotFromCopy() {}
/* 8002cf10 */
u32 dAcBase_c::itemDroppingAndGivingRelated(Vec3f* spawnPos, int subtype) {}
/* 8002cf90 */
void dAcBase_c::fillUpperParams2Byte() {}
/* 8002cfa0 */
u32 dAcBase_c::getParams2_ignoreLower() {}
/* 8002cfb0 */
void dAcBase_c::setParams2Upper_ignoreLower(u32 val) {}
/* 8002cfc0 */
u8 dAcBase_c::getParams2UpperByte() {}
/* 8002cfd0 */
void dAcBase_c::setParams2UpperByte(u32 val) {}
/* 8002cff0 */
u32 dAcBase_c::buildParams2(u32 lower, u8 upper) {}
/* 8002d010 */
u32 dAcBase_c::getParams2Lower() {}
/* 8002d020 */
dAcBase_c* dAcBase_c::findActor(char* objName, dAcBase_c* parent) {}
/* 8002d0a0 */ // searches for actor based on groupType
// searches for actor based on groupType
dAcBase_c* dAcBase_c::searchActor(dAcBase_c& optionalParent) {}
/* 8002d130 */
void dAcBase_c::forEachActor(void*, dAcBase_c&) {}
/* 8002d190 */
void dAcBase_c::getXZAngleToPlayer(s16&, dAcBase_c&) {}
/* 8002d1d0 */
mAng dAcBase_c::getXZAngleToPlayer() {}
bool dAcBase_c::getDistanceToActor(dAcBase_c& actor, f32 distThresh, f32* outDist) {}
/* 8002d290 */
bool dAcBase_c::getDistanceAndAngleToActor( \
dAcBase_c& actor, f32 distThresh, s16 yAngle, s16 xAngle, \
f32* outDist, s16* outDiffAngleY, s16* outDiffAngleX)
{
}
/* 8002d3e0 */
bool dAcBase_c::isWithinPlayerRadius(f32 radius) {}
/* 8002d440 */
bool dAcBase_c::getDistanceAndAngleToPlayer( \
f32 distThresh, s16 yAngle, s16 xAngle, \
f32* outDist, s16* outDiffAngleY, s16* outDiffAngleX)
@@ -172,122 +102,55 @@ bool dAcBase_c::getDistanceAndAngleToPlayer( \
// return getDistanceAndAngleToActor(PLAYER, distThresh, yAngle, xAngle, outDist, outDiffAngleY, outDiffAngleX);
}
/* 8002d470 */
f32 dAcBase_c::getDistToPlayer() {}
/* 8002d4a0 */
f32 dAcBase_c::getSquareDistToPlayer() {}
/* 8002d4b0 */
f32 dAcBase_c::getSquareDistToPlayer() {}
void dAcBase_c::updateRoomId(f32 yOffs) {}
/* 8002d540 */ // currently named Global__isRoomFlags_6not0
bool dAcBase_c::isRoomFlags_0x6_Set() {}
/* 8002d590 */
void dAcBase_c::FUN_8002d590() {}
/* 8002d5b0 */
void dAcBase_c::FUN_8002d5b0() {}
/* 8002d5d0*/
void dAcBase_c::playSound() {}
/* 8002d600 */
void dAcBase_c::FUN_8002d600() {}
/* 8002d630 */
void dAcBase_c::FUN_8002d630() {}
/* 8002d6d0 */
void dAcBase_c::FUN_8002d6d0() {}
/* 8002d710 */ // currently named ActorBase__playSoundEffect1
// currently named ActorBase__playSoundEffect1
void dAcBase_c::playSoundEffect1() {}
/* 8002d740 */
void dAcBase_c::FUN_8002d740() {}
/* 8002d770 */
void dAcBase_c::FUN_8002d770() {}
/* 8002d7a0 */
void dAcBase_c::FUN_8002d7a0() {}
/* 8002d7d0 */
void dAcBase_c::FUN_8002d7d0() {}
/* 8002d7f0 */
void dAcBase_c::FUN_8002d7f0() {}
/* 8002d810 */
void dAcBase_c::FUN_8002d810() {}
/* 8002d830 */
void dAcBase_c::FUN_8002d830() {}
/* 8002d860 */
void dAcBase_c::FUN_8002d860() {}
/* 8002d880 */
void dAcBase_c::FUN_8002d880() {}
/* 8002d890 */ // first param is not dAcBase_c
// first param is not dAcBase_c
void dAcBase_c::FUN_8002d890() {}
/* 8002d920 */ // current name is Global__setActorRef
// current name is Global__setActorRef
void dAcBase_c::setActorRef(dBase_c&) {}
/* 8002d930 */ // May not be only purpose
// May not be only purpose
void dAcBase_c::setUnkFlag() {}
/* 8002d940 */
void dAcBase_c::FUN_8002d940() {}
/* 8002d960 */
void dAcBase_c::FUN_8002d960() {}
/* 8002d980 */ // spawns GroupType2 (ACTOR)
// spawns GroupType2 (ACTOR)
dAcBase_c dAcBase_c::createActor( \
ProfileName actorId, u32 params1, \
Vec3f* pos, Vec3s* rot, Vec3f* scale, \
u32 params2, s32 roomId, dBase_c* ref) {}
/* 8002da80 */ // spawns GroupType3 (TG_FORCE_LINE ? )
dAcBase_c dAcBase_c::createActorUnkGroup3( \
ProfileName actorId, u32 params1, \
Vec3f* pos, Vec3s* rot, Vec3f* scale, \
u32 params2, s32 roomId, dBase_c* ref) {}
/* 8002db80 */
void* dAcBase_c::getCurrentEventActor() {}
/* 8002db90 */
void dAcBase_c::unkVirtFunc_0x6C() {}
/* 8002dba0 */
void dAcBase_c::doInteraction(s32) {}
/* 8002dc20 */
void dAcBase_c::FUN_8002dc20(s16*, s16*) {}
/* 8002dc50 */
void dAcBase_c::incrementKillCounter() {}
/* 8002dcd0 */
void dAcBase_c::FUN_8002dcd0() {}
/* 8002dd10 */
void dAcBase_c::FUN_8002dd10() {}
/* 8002dd50 */
void dAcBase_c::FUN_8002dd50() {}
/* 8002dd90 */
void dAcBase_c::FUN_8002dd90() {}
/* 8002ddd0 */
void dAcBase_c::FUN_8002ddd0() {}
/* 8002de30 */
void dAcBase_c::FUN_8002de30() {}
+2 -2
View File
@@ -8,7 +8,7 @@ extern "C" fProfile::fBaseProfile_c** DAT_ACTOR_ALLOCATION_FUNCTIONS;
/* 805750c0 */ u32 dBase_c::s_NextExecuteControlFlags;
dBase_c::dBase_c() : fBase_c() {
baseProperties = DAT_ACTOR_ALLOCATION_FUNCTIONS[mProfName]->mBaseProperties;
baseProperties = DAT_ACTOR_ALLOCATION_FUNCTIONS[profile_name]->mBaseProperties;
}
void dBase_c::postDraw(fBase_c::MAIN_STATE_e status) {
@@ -56,7 +56,7 @@ void dBase_c::resetFlags() {
}
bool dBase_c::isActorPlayer(dBase_c& base) {
return base.mProfName == fProfile::PLAYER;
return base.profile_name == fProfile::PLAYER;
}
int dBase_c::loadAsyncCallback() {
+1 -1
View File
@@ -19,7 +19,7 @@ int (*fBase_c::sLoadAsyncCallback)();
void (*fBase_c::sUnloadCallback)();
/* 802e12f0 */
fBase_c::fBase_c() : mMng(this) {}
fBase_c::fBase_c() : manager(this) {}
/* 802e1480 */
fBase_c::~fBase_c() {}