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 /* 8045E888 */ char* getAlwaysArcName();
33 /* 8045E898 */ char* getEvArcName();
34 /* 8045E8A8 */ char* getDzb();
35 /* 8045E8B8 */ char* getDummyBmd();
36 /* 8045E8C8 */ char* getBmd();
37 /* 8045E91C */ J3DModelData* getDoorModelData();
38 /* 8045E960 */ int CreateHeap();
39 /* 8045EBA0 */ void calcMtx();
40 /* 8045EC44 */ int CreateInit();
41 /* 8045ED1C */ int create();
42 /* 8045EE5C */ int checkOpenDoor(int*);
43 /* 8045EEE4 */ void setActionFromFlow();
44 /* 8045EFCC */ void setEventId();
45 /* 8045F058 */ int checkArea(f32, f32, f32);
46 /* 8045F29C */ void setEventPrm();
47 /* 8045F428 */ int releaseBG();
48 /* 8045F478 */ int frontCheck();
49 /* 8045F520 */ int getDemoAction();
50 /* 8045F568 */ int demoProc();
51 /* 8045F8A4 */ void setStart(f32, f32);
52 /* 8045F94C */ void setAngle();
53 /* 8045F968 */ int adjustmentProc();
54 /* 8045FA98 */ int openInit(int);
55 /* 8045FBF8 */ int openProc(int);
56 /* 8045FCA4 */ int openEnd(int);
57 /* 8045FDF8 */ void initOpenDemo();
58 /* 8045FE68 */ void startDemoProc();
59 /* 8045FF08 */ int actionWait();
60 /* 8045FFB0 */ int actionSpecialDemo();
61 /* 8046002C */ int actionDemo();
62 /* 804600C0 */ int actionTalk();
63 /* 8046012C */ int actionTalkWait();
64 /* 804601D4 */ int actionTalkOpen();
65 /* 8046027C */ int actionInit();
66 /* 804602D8 */ int actionDead();
67 /* 804602E0 */ int execute();
68 /* 8046045C */ int draw();
69 /* 80460550 */ int Delete();
70
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 /* 8045E858 */ static u32 getDoorModel(fopAc_ac_c*);
103 /* 8045E864 */ static u32 getDoorLightInf(fopAc_ac_c*);
104 /* 8045E870 */ static u16 getMsgNo(fopAc_ac_c*);
105 /* 8045E87C */ static u8 getExitNo(fopAc_ac_c*);
106};
107
108#endif /* D_A_DOOR_KNOB00_H */
T cLib_calcTimer(T *value)
Definition c_lib.h:74
Definition d_bg_w.h:252
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:153
void setEventId()
Definition d_a_door_knob00.cpp:245
char * getDzb()
Definition d_a_door_knob00.cpp:51
int openEnd(int)
Definition d_a_door_knob00.cpp:548
int actionTalkOpen()
Definition d_a_door_knob00.cpp:669
char * getBmd()
Definition d_a_door_knob00.cpp:85
int create()
Definition d_a_door_knob00.cpp:173
int actionSpecialDemo()
Definition d_a_door_knob00.cpp:615
void setAction(u8 action)
Definition d_a_door_knob00.h:71
void startDemoProc()
Definition d_a_door_knob00.cpp:580
s16 field_0x612
Definition d_a_door_knob00.h:94
int releaseBG()
Definition d_a_door_knob00.cpp:322
int openInit(int)
Definition d_a_door_knob00.cpp:519
J3DModelData * getDoorModelData()
Definition d_a_door_knob00.cpp:91
J3DModel * mModel2
Definition d_a_door_knob00.h:81
int CreateHeap()
Definition d_a_door_knob00.cpp:101
int execute()
Definition d_a_door_knob00.cpp:701
J3DModel * mModel1
Definition d_a_door_knob00.h:79
int adjustmentProc()
Definition d_a_door_knob00.cpp:489
s16 field_0x5a4[7]
Definition d_a_door_knob00.h:84
char * getAlwaysArcName()
Definition d_a_door_knob00.cpp:41
u16 field_0x60c
Definition d_a_door_knob00.h:90
int checkArea(f32, f32, f32)
Definition d_a_door_knob00.cpp:254
char * getEvArcName()
Definition d_a_door_knob00.cpp:46
@ 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
request_of_phase_process_class mPhase1
Definition d_a_door_knob00.h:77
int actionDead()
Definition d_a_door_knob00.cpp:696
int actionDemo()
Definition d_a_door_knob00.cpp:627
void setAngle()
Definition d_a_door_knob00.cpp:484
void onFlag(u16 flag)
Definition d_a_door_knob00.h:73
int(daKnob20_c::* actionFunc)()
Definition d_a_door_knob00.h:30
int frontCheck()
Definition d_a_door_knob00.cpp:330
void initOpenDemo()
Definition d_a_door_knob00.cpp:571
int draw()
Definition d_a_door_knob00.cpp:721
int actionTalk()
Definition d_a_door_knob00.cpp:640
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:536
void setActionFromFlow()
Definition d_a_door_knob00.cpp:205
char * getDummyBmd()
Definition d_a_door_knob00.cpp:56
int getDemoAction()
Definition d_a_door_knob00.cpp:362
void calcMtx()
Definition d_a_door_knob00.cpp:143
u8 field_0x60f
Definition d_a_door_knob00.h:92
void setEventPrm()
Definition d_a_door_knob00.cpp:281
int actionWait()
Definition d_a_door_knob00.cpp:596
s8 mJoint
Definition d_a_door_knob00.h:82
int checkOpenDoor(int *)
Definition d_a_door_knob00.cpp:191
void setStart(f32, f32)
Definition d_a_door_knob00.cpp:474
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:651
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:367
int Delete()
Definition d_a_door_knob00.cpp:734
u8 field_0x5b9
Definition d_a_door_knob00.h:86
int actionInit()
Definition d_a_door_knob00.cpp:687
u8 mAction
Definition d_a_door_knob00.h:91
Definition d_a_door_knob00.h:100
static u32 getDoorLightInf(fopAc_ac_c *)
Definition d_a_door_knob00.cpp:22
static u16 getMsgNo(fopAc_ac_c *)
Definition d_a_door_knob00.cpp:27
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:32
static void action(b_bh_class *param_0)
Definition d_a_b_bh.cpp:886
STATIC_ASSERT(sizeof(daKnob20_c)==0x618)
static volatile BOOL flag
Definition dspproc.cpp:20
Definition d_a_ep.cpp:51
Definition d_a_ep.cpp:155
Definition d_a_obj_sekizoa.cpp:318
Definition d_a_ep.cpp:19
Definition d_a_hozelda.cpp:56
Definition d_a_hozelda.cpp:14
signed char s8
Definition types.h:4
unsigned long u32
Definition types.h:10
float f32
Definition types.h:22
signed short s16
Definition types.h:5
unsigned short u16
Definition types.h:9
unsigned char u8
Definition types.h:8