mirror of
https://github.com/zeldaret/tp
synced 2026-06-12 05:27:46 -04:00
d_a_obj_cwall almost matching (#2270)
* d_a_obj_cwall almost matching * d_a_obj_pdoor OK
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
#ifndef D_A_OBJ_CWALL_H
|
||||
#define D_A_OBJ_CWALL_H
|
||||
|
||||
#include "d/d_bg_s_movebg_actor.h"
|
||||
#include "d/d_cc_d.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
/**
|
||||
@@ -11,21 +13,30 @@
|
||||
* @details
|
||||
*
|
||||
*/
|
||||
class daObjCwall_c : public fopAc_ac_c {
|
||||
class daObjCwall_c : public dBgS_MoveBgActor {
|
||||
public:
|
||||
struct chain_s {
|
||||
public:
|
||||
/* 80BD6E94 */ ~chain_s();
|
||||
/* 80BD6ED0 */ chain_s();
|
||||
|
||||
J3DModel* mModel;
|
||||
cXyz mPos;
|
||||
};
|
||||
|
||||
enum Type {
|
||||
TYPE_0,
|
||||
TYPE_1,
|
||||
};
|
||||
|
||||
typedef void (daObjCwall_c::*modeFunc)();
|
||||
|
||||
/* 80BD6A4C */ void initBaseMtx();
|
||||
/* 80BD6A88 */ void setBaseMtx();
|
||||
/* 80BD6AEC */ void Create();
|
||||
/* 80BD6D08 */ void CreateHeap();
|
||||
/* 80BD6ED4 */ void create1st();
|
||||
/* 80BD6F80 */ void Execute(f32 (**)[3][4]);
|
||||
/* 80BD6AEC */ int Create();
|
||||
/* 80BD6D08 */ int CreateHeap();
|
||||
/* 80BD6ED4 */ int create1st();
|
||||
/* 80BD6F80 */ int Execute(Mtx**);
|
||||
/* 80BD7288 */ void setTension();
|
||||
/* 80BD7718 */ void calcSePos();
|
||||
/* 80BD7788 */ void getChainBasePos(cXyz*);
|
||||
@@ -40,14 +51,54 @@ public:
|
||||
/* 80BD8BC8 */ void initClose();
|
||||
/* 80BD8BF0 */ void modeClose();
|
||||
/* 80BD935C */ void setPower(f32, s16*);
|
||||
/* 80BD9414 */ void checkWall();
|
||||
/* 80BD95A0 */ void checkPullNow();
|
||||
/* 80BD977C */ void checkPull();
|
||||
/* 80BD9848 */ void Draw();
|
||||
/* 80BD9948 */ void Delete();
|
||||
/* 80BD9414 */ BOOL checkWall();
|
||||
/* 80BD95A0 */ BOOL checkPullNow();
|
||||
/* 80BD977C */ BOOL checkPull();
|
||||
/* 80BD9848 */ int Draw();
|
||||
/* 80BD9948 */ int Delete();
|
||||
|
||||
u8 getArg0() { return fopAcM_GetParamBit(this, 0, 4); }
|
||||
u8 getType() { return fopAcM_GetParamBit(this, 4, 4); }
|
||||
u8 getSwbit() { return fopAcM_GetParamBit(this, 8, 8); }
|
||||
|
||||
private:
|
||||
/* 0x568 */ u8 field_0x568[0xf5c - 0x568];
|
||||
/* 0x5A0 */ request_of_phase_process_class mPhase;
|
||||
/* 0x5A8 */ J3DModel* mWallModel;
|
||||
/* 0x5AC */ dCcD_Stts mStts;
|
||||
/* 0x5E8 */ dCcD_Cyl mCyl;
|
||||
/* 0x724 */ dCcD_Sph mSph;
|
||||
/* 0x85C */ dCcD_Cyl mCyls[4];
|
||||
/* 0xD4C */ dCcD_Cyl mCyl2;
|
||||
/* 0xE88 */ J3DModel* mHandleModel;
|
||||
/* 0xE8C */ chain_s* mChains;
|
||||
/* 0xE90 */ u8 field_0xe90;
|
||||
/* 0xE91 */ u8 field_0xe91;
|
||||
/* 0xE92 */ u8 field_0xe92;
|
||||
/* 0xE93 */ u8 field_0xe93;
|
||||
/* 0xE94 */ cXyz field_0xe94[7];
|
||||
/* 0xEE8*/ f32 field_0xee8[7];
|
||||
/* 0xF04 */ u8 field_0xf04[7];
|
||||
/* 0xF0B */ u8 field_0xf0b;
|
||||
/* 0xF0C */ u8 field_0xf0c;
|
||||
/* 0xF0D */ u8 field_0xf0d;
|
||||
/* 0xF0E */ u8 field_0xf0e;
|
||||
/* 0xF0F */ u8 field_0xf0f;
|
||||
/* 0xF10 */ u8 field_0xf10;
|
||||
/* 0xF11 */ u8 mType;
|
||||
/* 0xF12 */ u8 field_0xf12;
|
||||
/* 0xF14 */ s16 field_0xf14;
|
||||
/* 0xF16 */ s16 field_0xf16;
|
||||
/* 0xF18 */ s16 field_0xf18;
|
||||
/* 0xF1A */ s16 field_0xf1a;
|
||||
/* 0xF1C */ s16 field_0xf1c;
|
||||
/* 0xF20 */ cXyz field_0xf20;
|
||||
/* 0xF2C */ cXyz field_0xf2c;
|
||||
/* 0xF38 */ cXyz field_0xf38;
|
||||
/* 0xF44 */ cXyz field_0xf44;
|
||||
/* 0xF50 */ f32 field_0xf50;
|
||||
/* 0xF54 */ f32 field_0xf54;
|
||||
/* 0xF58 */ u8 field_0xf58;
|
||||
/* 0xF58 */ u8 field_0xf59;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daObjCwall_c) == 0xf5c);
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
#ifndef D_A_OBJ_PDOOR_H
|
||||
#define D_A_OBJ_PDOOR_H
|
||||
|
||||
#include "d/d_bg_s_movebg_actor.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
/**
|
||||
@@ -11,24 +12,44 @@
|
||||
* @details
|
||||
*
|
||||
*/
|
||||
class daObjPDoor_c : public fopAc_ac_c {
|
||||
class daObjPDoor_c : public dBgS_MoveBgActor {
|
||||
public:
|
||||
typedef void (daObjPDoor_c::*modeFunc)();
|
||||
|
||||
enum Mode {
|
||||
MODE_WAIT,
|
||||
MODE_ROTATE,
|
||||
};
|
||||
|
||||
/* 80CA9F9C */ void initBaseMtx();
|
||||
/* 80CA9FD8 */ void setBaseMtx();
|
||||
/* 80CAA03C */ void Create();
|
||||
/* 80CAA14C */ void CreateHeap();
|
||||
/* 80CAA1BC */ void create1st();
|
||||
/* 80CAA23C */ void Execute(f32 (**)[3][4]);
|
||||
/* 80CAA03C */ int Create();
|
||||
/* 80CAA14C */ int CreateHeap();
|
||||
/* 80CAA1BC */ int create1st();
|
||||
/* 80CAA23C */ int Execute(Mtx**);
|
||||
/* 80CAA290 */ void mode_proc_call();
|
||||
/* 80CAA31C */ void init_modeWait();
|
||||
/* 80CAA354 */ void modeWait();
|
||||
/* 80CAA698 */ void init_modeRotate();
|
||||
/* 80CAA6B4 */ void modeRotate();
|
||||
/* 80CAA968 */ void Draw();
|
||||
/* 80CAAA0C */ void Delete();
|
||||
/* 80CAA968 */ int Draw();
|
||||
/* 80CAAA0C */ int Delete();
|
||||
|
||||
private:
|
||||
/* 0x568 */ u8 field_0x568[0x5c4 - 0x568];
|
||||
u8 getSwbit() { return fopAcM_GetParamBit(this, 0, 8); }
|
||||
u8 getSwbit2() { return fopAcM_GetParamBit(this, 8, 8); }
|
||||
|
||||
/* 0x5A0 */ request_of_phase_process_class mPhase;
|
||||
/* 0x5A8 */ J3DModel* mModel;
|
||||
/* 0x5AC */ s8 mDoorDirection;
|
||||
/* 0x5AD */ u8 mMode;
|
||||
/* 0x5B0 */ int field_0x5b0;
|
||||
/* 0x5B4 */ u8 field_0x5b4;
|
||||
/* 0x5B5 */ u8 field_0x5b5;
|
||||
/* 0x5B6 */ u8 field_0x5b6[2];
|
||||
/* 0x5B8 */ s16 field_0x5b8;
|
||||
/* 0x5BA */ s16 field_0x5ba;
|
||||
/* 0x5BC */ s16 field_0x5bc;
|
||||
/* 0x5C0 */ dBgW_Base::PushPullLabel mPushPullLabel;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daObjPDoor_c) == 0x5c4);
|
||||
|
||||
@@ -670,7 +670,7 @@ public:
|
||||
static f32 getAttentionOffsetY();
|
||||
static int checkNowWolfEyeUp();
|
||||
static void forceRestartRoom(int, u32, int);
|
||||
static void setFmChainPos(fopAc_ac_c*, cXyz*, int);
|
||||
static BOOL setFmChainPos(fopAc_ac_c*, cXyz*, int);
|
||||
static void cancelFmChainGrab();
|
||||
static void setLookPos(cXyz*);
|
||||
static void setPlayerSe(u32);
|
||||
@@ -698,7 +698,7 @@ public:
|
||||
cXyz* getLeftFootPosP() { return &mLeftFootPos; }
|
||||
BOOL checkCopyRodThrowAfter() const { return checkNoResetFlg3(FLG3_COPY_ROD_THROW_AFTER); }
|
||||
BOOL checkRide() const { return checkHorseRide() || checkBoarRide() || checkSpinnerRide() || checkCanoeRide() || checkBoardRide(); }
|
||||
const cXyz& getRightHandPos() const { return mRightHandPos; }
|
||||
cXyz getRightHandPos() const { return mRightHandPos; }
|
||||
const cXyz getLeftHandPos() const { return mLeftHandPos; }
|
||||
const cXyz getItemPos() const { return mItemPos; }
|
||||
|
||||
|
||||
Reference in New Issue
Block a user