Skip to content
Open
Show file tree
Hide file tree
Changes from 19 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 9 additions & 28 deletions include/d/actor/d_a_andsw.h
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#ifndef D_A_ANDSW_H
#define D_A_ANDSW_H

#include "d/d_com_inf_game.h"
#include "f_op/f_op_actor.h"

/**
* @ingroup actors-unsorted
Expand All @@ -10,43 +10,24 @@
*
* @details
*
*/
*/

class daAndsw_c : public fopAc_ac_c {
public:
u8 getSwNo() {
return fopAcM_GetParamBit(this,0,8);
}

u8 getSwNo2() {
return fopAcM_GetParamBit(this,8,8);
}

u8 getTimer() {
return fopAcM_GetParamBit(this,16,8);
}

u8 getType() {
return fopAcM_GetParamBit(this,24,8);
}

/* 80457978 */ int Create();
/* 804579B8 */ int create();
/* 80457A20 */ int execute();
/* 80457ABC */ int _delete();

inline u8 getTimer();
inline u8 getSwNo2();
inline u8 getSwNo();
inline daAndsw_c();
inline u8 getType();

/* 0x568 */ u8 mSwNo;
/* 0x568 */ u8 mSwNo2;
/* 0x56A */ s16 mTimer;
};

class daAndsw_HIO_c : public mDoHIO_entry_c {
public:
daAndsw_HIO_c();

void genMessage(JORMContext*);

/* 0x06 */ u8 field_0x6;
};


#endif /* D_A_ANDSW_H */
25 changes: 13 additions & 12 deletions include/d/actor/d_a_bg_obj.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@ typedef int (daBgObj_c::*actionFunc)();
*
* @details
*
*/
*/

class daBgObj_c : public dBgS_MoveBgActor {
public:
class spec_data_c {
Expand Down Expand Up @@ -89,32 +90,32 @@ class daBgObj_c : public dBgS_MoveBgActor {

void setAction(u8 i_action) { mAction = i_action; }

static createHeapFunc mCreateHeapFunc[];
static createInitFunc mCreateInitFunc[];
static executeFunc mExecuteFunc[];
static tgSetFunc mTgSetFunc[];
static createHeapFunc const mCreateHeapFunc[];
static createInitFunc const mCreateInitFunc[];
static executeFunc const mExecuteFunc[];
static tgSetFunc const mTgSetFunc[];

/* 0x5A0 */ request_of_phase_process_class mPhase;
/* 0x5A8 */ J3DModel* field_0x5a8[2][2];
/* 0x5B8 */ mDoExt_btkAnm* field_0x5b8[2][2];
/* 0x5C8 */ mDoExt_brkAnm* field_0x5c8[2][2];
/* 0x5A8 */ J3DModel* mpModelMtx[2][2];
/* 0x5B8 */ mDoExt_btkAnm* mpBtkAnmMtx[2][2];
/* 0x5C8 */ mDoExt_brkAnm* mpBrkAnmMtx[2][2];
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i dont really like the mtx naming here as it implies its a Mtx type when its not

/* 0x5D8 */ dBgW* mpBgW2;
/* 0x5DC */ dCcD_Stts mStts;
/* 0x618 */ dCcD_Tri mTris[4];
/* 0xB88 */ dCcD_Cyl mCyl;
/* 0xCC4 */ u8 field_0xcc4;
/* 0xCC4 */ u8 mTriNum;
/* 0xCC5 */ u8 mAction;
/* 0xCC6 */ s16 mEventIdx;
/* 0xCC8 */ u8 field_0xcc8;
/* 0xCC9 */ u8 field_0xcc9;
/* 0xCC9 */ u8 mCreateFirstFlag;
/* 0xCCA */ u16 field_0xcca;
/* 0xCCC */ u16 field_0xccc;
/* 0xCD0 */ spec_data_c mSpecData;
/* 0xCF4 */ csXyz mRotation;
/* 0xCFC */ u32 mAttnActorID;
/* 0xD00 */ u8 field_0xd00;
/* 0xD01 */ u8 field_0xd01;
/* 0xD02 */ u8 field_0xd02;
/* 0xD02 */ u8 mSetSpecDataFlag;
};

namespace daBgObj_prm {
Expand All @@ -127,7 +128,7 @@ inline u8 getSwBit(daBgObj_c* i_this) {
}

inline u8 getSwBit2(daBgObj_c* i_this) {
return (i_this->field_0xccc >> 8) & 0xFF;
return (int)(i_this->field_0xccc & ~0xFFFF00FF) >> 8;
}

inline u8 getObjArg0(daBgObj_c* i_this) {
Expand Down
8 changes: 6 additions & 2 deletions include/d/actor/d_a_dmidna.h
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
#ifndef D_A_DMIDNA_H
#define D_A_DMIDNA_H

#include "d/d_com_inf_game.h"
#include "SSystem/SComponent/c_phase.h"
#include "f_op/f_op_actor.h"

/**
* @ingroup actors-unsorted
Expand All @@ -10,7 +11,8 @@
*
* @details
*
*/
*/

class daDmidna_c : public fopAc_ac_c {
public:
/* 8045CED8 */ int createHeap();
Expand All @@ -20,6 +22,8 @@ class daDmidna_c : public fopAc_ac_c {
/* 8045D1A0 */ int execute();
/* 8045D204 */ int draw();

inline daDmidna_c();

/* 0x568 */ request_of_phase_process_class mPhase;
/* 0x570 */ u8 unk_0x570[4];
/* 0x574 */ mDoExt_McaMorfSO* mpModelMorf;
Expand Down
10 changes: 8 additions & 2 deletions include/d/actor/d_a_door_dbdoor00.h
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@
*
* @details
*
*/
*/

class daDbDoor00_c : public fopAc_ac_c {
public:
/* 8045D470 */ char* getAlwaysArcName();
Expand All @@ -20,6 +21,9 @@ class daDbDoor00_c : public fopAc_ac_c {
/* 8045D4A0 */ char* getBmdArcName();
/* 8045D4B0 */ char* getBmdName();
/* 8045D504 */ J3DModelData* getDoorModelData();
#if DEBUG
/* 80819530 */ bool debugCheckParam();
#endif
/* 8045D594 */ int CreateHeap();
/* 8045D744 */ void calcMtx();
/* 8045D8F4 */ int CreateInit();
Expand All @@ -41,7 +45,6 @@ class daDbDoor00_c : public fopAc_ac_c {

void setAction(u8 i_action) { mAction = i_action; }

// private:
/* 0x568 */ request_of_phase_process_class mPhaseReq;
/* 0x570 */ request_of_phase_process_class mPhaseReq2;
/* 0x578 */ J3DModel* mpModel;
Expand All @@ -63,6 +66,9 @@ class daDbDoor00_c : public fopAc_ac_c {
/* 0x5C0 */ s8 field_0x5c0;
/* 0x5C1 */ s8 field_0x5c1;
/* 0x5C2 */ s16 field_0x5c2;
#if DEBUG
/* 0x5CC */ u8 field_0x5cc;
#endif
};

STATIC_ASSERT(sizeof(daDbDoor00_c) == 0x5C4);
Expand Down
24 changes: 15 additions & 9 deletions include/d/actor/d_a_door_shutter.h
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
#ifndef D_A_DOOR_SHUTTER_H
#define D_A_DOOR_SHUTTER_H

#include "dolphin/types.h"
#include "f_op/f_op_actor.h"
#include "SSystem/SComponent/c_phase.h"
#include "d/d_bg_w.h"
Expand Down Expand Up @@ -35,7 +34,8 @@ class dDoor_stop_c {
*
* @details Multi-purpose door actor. This actor is used for vertical sliding doors in the game.
*
*/
*/

class daDoor20_c : public fopAc_ac_c {
public:
enum ActionType {
Expand All @@ -53,6 +53,9 @@ class daDoor20_c : public fopAc_ac_c {
/* 80460CF0 */ char* getBtk();
/* 80460D5C */ J3DModelData* getModelData();
/* 80460D80 */ f32 getSize2X();
#if DEBUG
/* 8081DA40 */ bool debugCheckParam();
#endif
/* 80460DAC */ int CreateHeap();
/* 8046129C */ void setEventPrm();
/* 804616EC */ int checkOpenMsgDoor(int*);
Expand Down Expand Up @@ -93,8 +96,8 @@ class daDoor20_c : public fopAc_ac_c {
/* 80464858 */ int createKey();
/* 80464AE4 */ int deleteKey();
/* 80464B3C */ int adjoinPlayer();
/* 80464BD8 */ int frontCheckOld();
/* 80464C68 */ int frontCheck();
/* 80464BD8 */ u8 frontCheckOld();
/* 80464C68 */ u8 frontCheck();
/* 80464CEC */ int drawCheck(int);
/* 80464E18 */ int checkExecute();
/* 80464EC4 */ void startDemoProc();
Expand Down Expand Up @@ -124,15 +127,18 @@ class daDoor20_c : public fopAc_ac_c {
void setAction(u8 action) { mAction = action; }

private:
#if DEBUG
/* 0x574 */ u8 field_0x574;
#endif
/* 0x56C */ request_of_phase_process_class mPhase1;
/* 0x574 */ request_of_phase_process_class mPhase2;
/* 0x57C */ J3DModel* mModel1;
/* 0x580 */ J3DModel* mModel2;
/* 0x584 */ mDoExt_bckAnm field_0x584;
/* 0x5A0 */ mDoExt_bckAnm field_0x5a0;
/* 0x5BC */ J3DModel* field_0x5bc;
/* 0x5C0 */ mDoExt_btkAnm* field_0x5c0;
/* 0x5C4 */ dBgW* field_0x5c4;
/* 0x5C0 */ mDoExt_btkAnm* mBtkAnm;
/* 0x5C4 */ dBgW* mpBgW;
/* 0x5C8 */ s8 field_0x5c8;
/* 0x5C9 */ bool field_0x5c9;
/* 0x5CA */ u8 field_0x5ca[0x5dd - 0x5ca];
Expand All @@ -142,7 +148,7 @@ class daDoor20_c : public fopAc_ac_c {
/* 0x5F0 */ bool field_0x5f0;
/* 0x5F1 */ u8 field_0x5f1;
/* 0x5F4 */ Mtx field_0x5f4;
/* 0x624 */ dMsgFlow_c field_0x624;
/* 0x624 */ dMsgFlow_c mMsgFlow;
/* 0x670 */ s16 field_0x670;
/* 0x672 */ bool field_0x672;
/* 0x673 */ u8 field_0x673;
Expand All @@ -164,8 +170,8 @@ class daDoor20_c : public fopAc_ac_c {
/* 0x6CC */ u32 field_0x6cc;
/* 0x6D0 */ dDoor_stop_c mDoorStop;
/* 0x6DC */ s16 field_0x6dc;
/* 0x6DE */ dBgS_ObjAcch field_0x6de;
/* 0x8B8 */ dBgS_AcchCir field_0x8b8;
/* 0x6DE */ dBgS_ObjAcch mBgc;
/* 0x8B8 */ dBgS_AcchCir mAcchCir;
/* 0x8F8 */ u32 field_0x8f8;
};

Expand Down
121 changes: 120 additions & 1 deletion include/d/actor/d_a_door_spiral.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,125 @@
#ifndef D_A_DOOR_SPIRAL_H
#define D_A_DOOR_SPIRAL_H

#include "dolphin/types.h"
#if DEBUG

#include "SSystem/SComponent/c_phase.h"
#include "d/d_bg_w.h"
#include "f_op/f_op_actor.h"

class daSpiral_c;

class dSpiral_stop_c {
public:
/* 80827980 */ BOOL create(daSpiral_c*);
/* 80827AF0 */ int remove(daSpiral_c*);
/* 80827B40 */ void calcMtx(daSpiral_c*);
/* 80827C80 */ void openInit(daSpiral_c*);
/* 80827CA0 */ bool openProc(daSpiral_c*);
/* 80827D20 */ void closeInit(daSpiral_c*);
/* 80827D40 */ bool closeProc(daSpiral_c*);
/* 80827DB0 */ void draw(daSpiral_c*);
/* 80827E30 */ BOOL regist(daSpiral_c*);
/* 80827EB0 */ BOOL release(daSpiral_c*);

/* 0x00 */ J3DModel* mModel;
/* 0x04 */ dBgW* mpBgW;
/* 0x08 */ u8 field_0x8[0x38 - 0x8];
/* 0x38 */ Mtx mMtx;
/* 0x68 */ f32 field_0x68;
/* 0x6C */ f32 field_0x6c;
/* 0x70 */ u8 field_0x70;
/* 0x71 */ u8 field_0x71;
/* 0x72 */ u8 field_0x72;
};

class daSpiral_c : public fopAc_ac_c {
public:
/* 80825050 */ char* getAlwaysArcName();
/* 80825080 */ char* getSpiralDzbName(int);
/* 808250A0 */ char* getDzb();
/* 808250B0 */ char* getBmdArcName();
/* 808250C0 */ char* getEvArcName();
/* 808250D0 */ char* getBmd(int);
/* 808250F0 */ char* getBmd2(int);
/* 80825160 */ J3DModelData* getModelData();
/* 808251E0 */ char* getStopBmd();
/* 808251F0 */ char* getStopBmd2();
/* 80825200 */ J3DModelData* getStopModelData();
/* 80825280 */ char* getStopDzb();
/* 808252D0 */ bool debugCheckParam();
/* 80825380 */ cPhs__Step create();
/* 80825520 */ int CreateHeap();
/* 808257D0 */ int CreateInit();
/* 80825940 */ void setAction(u8);
/* 80825950 */ void makeEventId(int);
/* 808259D0 */ void setEventPrm();
/* 80825B20 */ void settingStartRoom();
/* 80825B90 */ void settingEndRoom();
/* 80825C30 */ void EndCommon();
/* 80825D90 */ BOOL checkArea();
/* 80825EC0 */ void calcMtx();
/* 80825F70 */ void initProc(int);
/* 80826000 */ void initOpenDemo(int);
/* 808260D0 */ int getDemoAction();
/* 80826120 */ int demoProc();
/* 80826410 */ int actionWait();
/* 80826640 */ int actionDemo();
/* 808266E0 */ int actionStopClose();
/* 80826740 */ int actionInit();
/* 808267A0 */ void setPartner();
/* 80826880 */ void clrPartner();
/* 808268B0 */ void setGoal();
/* 80826980 */ void setNextSpiral();
/* 80826AB0 */ BOOL RunPlayerSpiral();
/* 80826BB0 */ u8 frontCheck();
/* 80826C10 */ int checkExecute();
/* 80826CD0 */ int execute();
/* 80826DF0 */ BOOL adjoinPlayer();
/* 80826E80 */ BOOL drawCheck_local();
/* 80826EC0 */ BOOL drawCheck(int);
/* 80826F40 */ void debugDraw();
/* 80827260 */ int draw();
/* 80827420 */ int Delete();
/* 808274E0 */ BOOL checkMakeStop();
/* 80827540 */ int checkStopF();
/* 80827610 */ void setStopDemo();
/* 80827700 */ BOOL checkStopClose();
/* 808277E0 */ void setStop();
/* 80827850 */ BOOL checkStopOpen();

/* 0x570 */ request_of_phase_process_class mPhase1;
/* 0x578 */ request_of_phase_process_class mPhase2;
/* 0x580 */ request_of_phase_process_class mPhase3;
/* 0x588 */ J3DModel* mModel;
/* 0x58C */ dBgW* mpBgW1;
/* 0x590 */ Mtx mMtx1;
/* 0x5C0 */ dBgW* mpBgW2;
/* 0x5C4 */ Mtx mMtx2;
/* 0x5F4 */ u8 mIdx;
/* 0x5F5 */ s8 field_0x5f5;
/* 0x5F6 */ u8 field_0x5f6;
/* 0x5F7 */ u8 mAction;
/* 0x5F8 */ int field_0x5f8;
/* 0x5FC */ s16 mEventIDs[8];
/* 0x60C */ u8 mMapToolIDs[8];
/* 0x614 */ u8 field_0x614;
/* 0x618 */ int mStaffId;
/* 0x61C */ s8 field_0x61c;
/* 0x61D */ u8 field_0x61d;
/* 0x61E */ u8 field_0x61e;
/* 0x61F */ u8 field_0x61f;
/* 0x620 */ cXyz field_0x620;
/* 0x62C */ u8 mFrontCheck;
/* 0x62D */ u8 field_0x62d;
/* 0x630 */ cXyz field_0x630;
/* 0x63C */ dSpiral_stop_c mSpiralStop;
/* 0x6AF */ u8 field_0x6af[0x6b2 - 0x6af];
/* 0x6B4 */ s16 field_0x6b4;
/* 0x6B8 */ cXyz field_0x6b8[2];
/* 0x6D0 */ bool field_0x6d0;
};

#endif

#endif /* D_A_DOOR_SPIRAL_H */
Loading