Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_obj_catdoor.h
Go to the documentation of this file.
1#ifndef D_A_OBJ_CATDOOR_H
2#define D_A_OBJ_CATDOOR_H
3
5#include "d/d_bg_w.h"
6
8public:
9 /* 0x00 */ J3DModel* pmodel;
10 /* 0x04 */ dBgW bgw;
11 /* 0xe0 */ Mtx mtx;
12 /* 0xf4 */ s16 angle;
13};
14
23class daObjCatDoor_c : public fopAc_ac_c {
24public:
25 inline ~daObjCatDoor_c();
26
27 const s16* attr() const;
28 void initBaseMtx();
29 void setBaseMtx();
30 void calcOpen();
31
32 u8 getSwitchNo() { return fopAcM_GetParam(this); }
33
34 inline int createHeap();
35 inline int draw();
36 inline int execute();
37 inline int create();
38 inline void create_init();
39
41 mDoor1.angle = 0x8800;
42 mDoor2.angle = 0x7800;
43 setBaseMtx();
45 }
46
47 void setDoorOpen() {
48 mRotSpeed = attr()[1];
49 dBgW* bgw1 = &mDoor1.bgw;
50 if (bgw1->ChkUsed()) {
51 dComIfG_Bgsp().Release(bgw1);
52 }
53
54 dBgW* bgw2 = &mDoor2.bgw;
55 if (bgw2->ChkUsed()) {
56 dComIfG_Bgsp().Release(bgw2);
57 }
58
59 Z2GetAudioMgr()->seStart(Z2SE_OBJ_GZ_NE_DOOR_OP, &current.pos, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0);
60 }
61
62private:
66 /* 0x760 */ Mtx mMtx;
67 /* 0x790 */ s16 mRotSpeed;
68
69public:
70 static u32 const M_attr;
71};
72
73#endif /* D_A_OBJ_CATDOOR_H */
Z2AudioMgr * Z2GetAudioMgr()
Definition Z2AudioMgr.h:58
@ Z2SE_OBJ_GZ_NE_DOOR_OP
Definition Z2SeMgr.h:3979
Definition J3DModel.h:43
bool seStart(JAISoundID soundID, const Vec *posPtr, u32, s8 reverb, f32 pitch, f32 volume, f32 pan, f32 dolby, u8)
Definition Z2SeMgr.cpp:117
bool Release(dBgW_Base *)
Definition d_bg_s.cpp:68
bool ChkUsed() const
Definition c_bg_w.cpp:16
Definition d_bg_w.h:257
Definition d_a_obj_catdoor.h:7
Mtx mtx
Definition d_a_obj_catdoor.h:11
dBgW bgw
Definition d_a_obj_catdoor.h:10
J3DModel * pmodel
Definition d_a_obj_catdoor.h:9
s16 angle
Definition d_a_obj_catdoor.h:12
Cat Door.
Definition d_a_obj_catdoor.h:23
s16 mRotSpeed
Definition d_a_obj_catdoor.h:67
void calcOpen()
Definition d_a_obj_catdoor.cpp:137
Mtx mMtx
Definition d_a_obj_catdoor.h:66
request_of_phase_process_class mPhaseReq
Definition d_a_obj_catdoor.h:63
u8 getSwitchNo()
Definition d_a_obj_catdoor.h:32
void create_init()
Definition d_a_obj_catdoor.cpp:95
int execute()
Definition d_a_obj_catdoor.cpp:62
void setBaseMtx()
Definition d_a_obj_catdoor.cpp:120
int draw()
Definition d_a_obj_catdoor.cpp:48
void initBaseMtx()
Definition d_a_obj_catdoor.cpp:112
void _toDoorOpened()
Definition d_a_obj_catdoor.h:40
const s16 * attr() const
Definition d_a_obj_catdoor.cpp:73
daObjCatDoor_Door_c mDoor2
Definition d_a_obj_catdoor.h:65
int create()
Definition d_a_obj_catdoor.cpp:81
~daObjCatDoor_c()
Definition d_a_obj_catdoor.cpp:15
daObjCatDoor_Door_c mDoor1
Definition d_a_obj_catdoor.h:64
void setDoorOpen()
Definition d_a_obj_catdoor.h:47
int createHeap()
Definition d_a_obj_catdoor.cpp:25
static u32 const M_attr
Definition d_a_obj_catdoor.h:70
Definition f_op_actor.h:230
actor_place current
Definition f_op_actor.h:251
dBgS & dComIfG_Bgsp()
Definition d_com_inf_game.h:1047
f32 Mtx[3][4]
Definition mtx.h:25
unsigned long u32
Definition types.h:12
signed short int s16
Definition types.h:9
unsigned char u8
Definition types.h:8
u32 fopAcM_GetParam(const void *i_actor)
Definition f_op_actor_mng.h:192
void fopAcM_onSwitch(const fopAc_ac_c *i_actor, int sw)
Definition f_op_actor_mng.h:447
cXyz pos
Definition f_op_actor.h:205
Definition c_phase.h:17