Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_door_knob00.h
Go to the documentation of this file.
1#ifndef D_A_DOOR_KNOB00_H
2#define D_A_DOOR_KNOB00_H
3
4#include "f_op/f_op_actor.h"
6#include "d/d_bg_w.h"
7#include "d/d_msg_flow.h"
8
17class daKnob20_c : public fopAc_ac_c {
18public:
19 enum {
28 };
29
30 typedef int (daKnob20_c::*actionFunc)();
31
32 char* getAlwaysArcName();
33 char* getEvArcName();
34 char* getDzb();
35 char* getDummyBmd();
36 char* getBmd();
38 int CreateHeap();
39 void calcMtx();
40 int CreateInit();
41 int create();
42 int checkOpenDoor(int*);
43 void setActionFromFlow();
44 void setEventId();
45 int checkArea(f32, f32, f32);
46 void setEventPrm();
47 int releaseBG();
48 int frontCheck();
49 int getDemoAction();
50 int demoProc();
51 void setStart(f32, f32);
52 void setAngle();
53 int adjustmentProc();
54 int openInit(int);
55 int openProc(int);
56 int openEnd(int);
57 void initOpenDemo();
58 void startDemoProc();
59 int actionWait();
61 int actionDemo();
62 int actionTalk();
63 int actionTalkWait();
64 int actionTalkOpen();
65 int actionInit();
66 int actionDead();
67 int execute();
68 int draw();
69 int Delete();
70
72 void offFlag(u16 flag) { field_0x60c &= ~flag; }
74 int checkFlag(u16 flag) { return field_0x60c & flag; }
75
76private:
79 /* 0x578 */ J3DModel* mModel1;
81 /* 0x598 */ J3DModel* mModel2;
82 /* 0x59C */ s8 mJoint;
83 /* 0x5A0 */ dBgW* field_0x5a0;
84 /* 0x5A4 */ s16 field_0x5a4[7];
85 /* 0x5B2 */ u8 field_0x5b2[7];
86 /* 0x5B9 */ u8 field_0x5b9;
87 /* 0x5BA */ u16 field_0x5ba;
88 /* 0x5BC */ int field_0x5bc;
90 /* 0x60C */ u16 field_0x60c;
91 /* 0x60E */ u8 mAction;
92 /* 0x60F */ u8 field_0x60f;
93 /* 0x610 */ s16 field_0x610;
94 /* 0x612 */ s16 field_0x612;
95 /* 0x614 */ s16 field_0x614;
96};
97
98STATIC_ASSERT(sizeof(daKnob20_c) == 0x618);
99
101public:
102 static u32 getDoorModel(fopAc_ac_c*);
104 static u16 getMsgNo(fopAc_ac_c*);
105 static u8 getExitNo(fopAc_ac_c*);
106};
107
108#endif /* D_A_DOOR_KNOB00_H */
static BOOL flag
Definition DEMOAVX.c:20
Definition J3DModelData.h:17
Definition J3DModel.h:43
Definition d_bg_w.h:257
Definition d_msg_flow.h:49
Knob Door.
Definition d_a_door_knob00.h:17
s16 field_0x614
Definition d_a_door_knob00.h:95
int CreateInit()
Definition d_a_door_knob00.cpp:119
void setEventId()
Definition d_a_door_knob00.cpp:205
char * getDzb()
Definition d_a_door_knob00.cpp:44
int openEnd(int)
Definition d_a_door_knob00.cpp:498
int actionTalkOpen()
Definition d_a_door_knob00.cpp:610
char * getBmd()
Definition d_a_door_knob00.cpp:56
int(daKnob20_c::*) actionFunc()
Definition d_a_door_knob00.h:30
int create()
Definition d_a_door_knob00.cpp:138
int actionSpecialDemo()
Definition d_a_door_knob00.cpp:560
void setAction(u8 action)
Definition d_a_door_knob00.h:71
void startDemoProc()
Definition d_a_door_knob00.cpp:528
s16 field_0x612
Definition d_a_door_knob00.h:94
int releaseBG()
Definition d_a_door_knob00.cpp:279
int openInit(int)
Definition d_a_door_knob00.cpp:471
J3DModelData * getDoorModelData()
Definition d_a_door_knob00.cpp:61
J3DModel * mModel2
Definition d_a_door_knob00.h:81
int CreateHeap()
Definition d_a_door_knob00.cpp:69
int execute()
Definition d_a_door_knob00.cpp:639
J3DModel * mModel1
Definition d_a_door_knob00.h:79
int adjustmentProc()
Definition d_a_door_knob00.cpp:443
s16 field_0x5a4[7]
Definition d_a_door_knob00.h:84
char * getAlwaysArcName()
Definition d_a_door_knob00.cpp:36
u16 field_0x60c
Definition d_a_door_knob00.h:90
int checkArea(f32, f32, f32)
Definition d_a_door_knob00.cpp:213
char * getEvArcName()
Definition d_a_door_knob00.cpp:40
request_of_phase_process_class mPhase1
Definition d_a_door_knob00.h:77
int actionDead()
Definition d_a_door_knob00.cpp:635
int actionDemo()
Definition d_a_door_knob00.cpp:571
void setAngle()
Definition d_a_door_knob00.cpp:439
void onFlag(u16 flag)
Definition d_a_door_knob00.h:73
int frontCheck()
Definition d_a_door_knob00.cpp:286
void initOpenDemo()
Definition d_a_door_knob00.cpp:520
int draw()
Definition d_a_door_knob00.cpp:658
int actionTalk()
Definition d_a_door_knob00.cpp:583
int field_0x5bc
Definition d_a_door_knob00.h:88
u16 field_0x5ba
Definition d_a_door_knob00.h:87
request_of_phase_process_class mPhase2
Definition d_a_door_knob00.h:78
int checkFlag(u16 flag)
Definition d_a_door_knob00.h:74
mDoExt_bckAnm field_0x57c
Definition d_a_door_knob00.h:80
int openProc(int)
Definition d_a_door_knob00.cpp:487
void setActionFromFlow()
Definition d_a_door_knob00.cpp:167
char * getDummyBmd()
Definition d_a_door_knob00.cpp:48
int getDemoAction()
Definition d_a_door_knob00.cpp:316
void calcMtx()
Definition d_a_door_knob00.cpp:110
u8 field_0x60f
Definition d_a_door_knob00.h:92
@ ACTION_TALK_WAIT
Definition d_a_door_knob00.h:24
@ ACTION_DEMO
Definition d_a_door_knob00.h:22
@ ACTION_DEAD
Definition d_a_door_knob00.h:26
@ ACTION_TALK
Definition d_a_door_knob00.h:23
@ ACTION_TALK_OPEN
Definition d_a_door_knob00.h:25
@ ACTION_INIT
Definition d_a_door_knob00.h:20
@ ACTION_WAIT
Definition d_a_door_knob00.h:21
@ ACTION_SPECIAL_DEMO
Definition d_a_door_knob00.h:27
void setEventPrm()
Definition d_a_door_knob00.cpp:239
int actionWait()
Definition d_a_door_knob00.cpp:543
s8 mJoint
Definition d_a_door_knob00.h:82
int checkOpenDoor(int *)
Definition d_a_door_knob00.cpp:155
void setStart(f32, f32)
Definition d_a_door_knob00.cpp:430
s16 field_0x610
Definition d_a_door_knob00.h:93
dBgW * field_0x5a0
Definition d_a_door_knob00.h:83
int actionTalkWait()
Definition d_a_door_knob00.cpp:593
void offFlag(u16 flag)
Definition d_a_door_knob00.h:72
dMsgFlow_c field_0x5c0
Definition d_a_door_knob00.h:89
u8 field_0x5b2[7]
Definition d_a_door_knob00.h:85
int demoProc()
Definition d_a_door_knob00.cpp:320
int Delete()
Definition d_a_door_knob00.cpp:670
u8 field_0x5b9
Definition d_a_door_knob00.h:86
int actionInit()
Definition d_a_door_knob00.cpp:627
u8 mAction
Definition d_a_door_knob00.h:91
Definition f_op_actor.h:230
Definition d_a_door_knob00.h:100
static u32 getDoorLightInf(fopAc_ac_c *)
Definition d_a_door_knob00.cpp:20
static u16 getMsgNo(fopAc_ac_c *)
Definition d_a_door_knob00.cpp:24
static u32 getDoorModel(fopAc_ac_c *)
Definition d_a_door_knob00.cpp:16
static u8 getExitNo(fopAc_ac_c *)
Definition d_a_door_knob00.cpp:28
Definition m_Do_ext.h:151
static void action(b_bh_class *i_this)
Definition d_a_b_bh.cpp:1017
STATIC_ASSERT(sizeof(daKnob20_c)==0x618)
signed char s8
Definition types.h:7
unsigned long u32
Definition types.h:12
signed short int s16
Definition types.h:9
float f32
Definition types.h:25
unsigned short int u16
Definition types.h:10
unsigned char u8
Definition types.h:8
Definition c_phase.h:17