mirror of
https://github.com/zeldaret/tww.git
synced 2026-07-09 14:05:28 -04:00
67 lines
1.6 KiB
C++
67 lines
1.6 KiB
C++
#ifndef D_A_MDOOR_H
|
|
#define D_A_MDOOR_H
|
|
|
|
#include "f_op/f_op_actor.h"
|
|
#include "d/d_particle.h"
|
|
|
|
class dBgW;
|
|
|
|
class daMdoor_c : public fopAc_ac_c {
|
|
public:
|
|
enum Action_e {
|
|
ACT_WAIT0_e = 0,
|
|
ACT_DEMO_WAIT_e = 1,
|
|
ACT_DEMO_e = 2,
|
|
ACT_WAIT3_e = 3,
|
|
ACT_GENOCIDE_e = 4,
|
|
ACT_READY5_e = 5,
|
|
ACT_EVENT6_e = 6,
|
|
ACT_WAIT7_e = 7,
|
|
ACT_SWITCH8_e = 8,
|
|
ACT_READY9_e = 9,
|
|
ACT_EVENT10_e = 10,
|
|
ACT_WAIT11_e = 11,
|
|
ACT_SWITCH12_e = 12,
|
|
ACT_READY_OPEN_e = 13,
|
|
ACT_OPEN_e = 14,
|
|
ACT_WAIT15_e = 15,
|
|
};
|
|
|
|
bool chkFlag(unsigned short bit) { return (m2CA & bit) == bit; }
|
|
void clrFlag(unsigned short bit) { m2CA &= ~bit; }
|
|
inline BOOL draw();
|
|
inline BOOL execute();
|
|
void nextAction() { mAction++; }
|
|
void setAction(unsigned char action) { mAction = action; }
|
|
void setFlag(unsigned short bit) { m2CA |= bit; }
|
|
|
|
u8 getSwbit();
|
|
u8 getType();
|
|
u8 getToolId();
|
|
u8 getShapeType();
|
|
BOOL CreateHeap();
|
|
void calcMtx();
|
|
void smokeInit();
|
|
void smokeEnd();
|
|
BOOL CreateInit();
|
|
cPhs_State create();
|
|
void demoProc();
|
|
|
|
static const char M_arcname[];
|
|
|
|
public:
|
|
/* 0x290 */ dPa_smokeEcallBack m290;
|
|
/* 0x2B0 */ request_of_phase_process_class mPhase;
|
|
/* 0x2B8 */ J3DModel* mpModel;
|
|
/* 0x2BC */ dBgW* mpBgW;
|
|
/* 0x2C0 */ s32 m2C0;
|
|
/* 0x2C4 */ s16 m2C4;
|
|
/* 0x2C6 */ s16 m2C6;
|
|
/* 0x2C8 */ u8 m2C8;
|
|
/* 0x2C9 */ u8 mAction;
|
|
/* 0x2CA */ u16 m2CA;
|
|
/* 0x2CC */ f32 m2CC;
|
|
}; // size = 0x2D0
|
|
|
|
#endif /* D_A_MDOOR_H */
|