Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_bg_obj.h
Go to the documentation of this file.
1#ifndef D_A_BG_OBJ_H
2#define D_A_BG_OBJ_H
3
5#include "d/d_bg_w.h"
6#include "d/d_cc_d.h"
8
9class daBgObj_c;
10typedef int (daBgObj_c::*createHeapFunc)();
11typedef int (daBgObj_c::*createInitFunc)();
12typedef int (daBgObj_c::*executeFunc)();
13typedef void (daBgObj_c::*tgSetFunc)();
14typedef int (daBgObj_c::*actionFunc)();
15
25public:
27 public:
32 bool Set(void*);
33
34 /* 0x00 */ u16 mSpecType;
35 /* 0x02 */ u8 field_0x02;
36 /* 0x03 */ u8 field_0x03;
37 /* 0x04 */ u32 mParticleNum;
38 /* 0x08 */ u8* mpParticleBlock;
39 /* 0x0C */ u32 mSoundNum;
40 /* 0x10 */ u8* mpSoundBlock;
41 /* 0x14 */ u8 field_0x14;
42 /* 0x15 */ u8 field_0x15;
43 /* 0x16 */ u8 field_0x16;
44 /* 0x18 */ u8* mpTexShareBlock;
45 /* 0x1C */ u8 mTexShareNum;
46 /* 0x20 */ f32 mpFarInfoBlock;
47 };
48
49 void release(dBgW*);
50 void regist(dBgW*);
51 void initAtt();
53 void initBaseMtx();
54 void setBaseMtx();
57 int CreateInitType0();
58 int CreateInitType1();
59 int CreateHeapType0();
60 int CreateHeapType1();
61 void doShareTexture();
62 int create1st();
63 void setColCommon();
64 void set_tri_0();
65 void set_tri_1();
66 void set_cyl_0();
67 void set_tri_2();
68 void set_tri_3();
69 void setParticle();
70 void setSe();
73 void orderWait_tri();
74 void orderWait_cyl();
75 void orderWait_spec();
76 int actionOrderWait();
77 int actionOrder();
78 int actionEvent();
79 int actionWait();
80 int ExecuteType0();
81 int ExecuteType1();
83
84 virtual int CreateHeap();
85 virtual int Create();
86 virtual int Execute(Mtx**);
87 virtual int Draw();
88 virtual int Delete();
89
90 void setAction(u8 i_action) { mAction = i_action; }
91
95 static tgSetFunc mTgSetFunc[];
96
98 /* 0x5A8 */ J3DModel* field_0x5a8[2][2];
99 /* 0x5B8 */ mDoExt_btkAnm* field_0x5b8[2][2];
100 /* 0x5C8 */ mDoExt_brkAnm* field_0x5c8[2][2];
101 /* 0x5D8 */ dBgW* mpBgW2;
102 /* 0x5DC */ dCcD_Stts mStts;
103 /* 0x618 */ dCcD_Tri mTris[4];
104 /* 0xB88 */ dCcD_Cyl mCyl;
105 /* 0xCC4 */ u8 field_0xcc4;
106 /* 0xCC5 */ u8 mAction;
107 /* 0xCC6 */ s16 mEventIdx;
108 /* 0xCC8 */ u8 field_0xcc8;
109 /* 0xCC9 */ u8 field_0xcc9;
110 /* 0xCCA */ u16 field_0xcca;
111 /* 0xCCC */ u16 field_0xccc;
113 /* 0xCF4 */ csXyz mRotation;
114 /* 0xCFC */ u32 mAttnActorID;
115 /* 0xD00 */ u8 field_0xd00;
116 /* 0xD01 */ u8 field_0xd01;
117 /* 0xD02 */ u8 field_0xd02;
118};
119
120namespace daBgObj_prm {
121inline u8 getEvId(daBgObj_c* i_this) {
122 return (fopAcM_GetParam(i_this) >> 0x15) & 0xFF;
123}
124
125inline u8 getSwBit(daBgObj_c* i_this) {
126 return i_this->field_0xccc & 0xFF;
127}
128
129inline u8 getSwBit2(daBgObj_c* i_this) {
130 return (i_this->field_0xccc >> 8) & 0xFF;
131}
132
133inline u8 getObjArg0(daBgObj_c* i_this) {
134 return i_this->field_0xcca & 0xFF;
135}
136}; // namespace daBgObj_prm
137
144
145
146#endif /* D_A_BG_OBJ_H */
Definition J3DModel.h:43
Definition c_cc_d.h:435
Definition c_sxyz.h:10
Definition d_bg_s_movebg_actor.h:11
Definition d_bg_w.h:257
Definition d_cc_d.h:461
Definition d_cc_d.h:269
Definition d_cc_d.h:452
Definition d_a_bg_obj.h:26
u8 * mpParticleBlock
Definition d_a_bg_obj.h:38
u8 field_0x15
Definition d_a_bg_obj.h:42
u8 * initTexShareBlock(u8 *)
Definition d_a_bg_obj.cpp:86
f32 mpFarInfoBlock
Definition d_a_bg_obj.h:46
u8 field_0x16
Definition d_a_bg_obj.h:43
u32 mParticleNum
Definition d_a_bg_obj.h:37
u32 mSoundNum
Definition d_a_bg_obj.h:39
bool Set(void *)
Definition d_a_bg_obj.cpp:117
u8 field_0x02
Definition d_a_bg_obj.h:35
u8 * mpTexShareBlock
Definition d_a_bg_obj.h:44
u8 mTexShareNum
Definition d_a_bg_obj.h:45
u8 field_0x03
Definition d_a_bg_obj.h:36
u8 field_0x14
Definition d_a_bg_obj.h:41
u8 * mpSoundBlock
Definition d_a_bg_obj.h:40
u16 mSpecType
Definition d_a_bg_obj.h:34
u8 * initParticleBlock(u8 *)
Definition d_a_bg_obj.cpp:72
u8 * initSoundBlock(u8 *)
Definition d_a_bg_obj.cpp:79
u8 * initFarInfoBlock(u8 *)
Definition d_a_bg_obj.cpp:112
Moving Background Obj?
Definition d_a_bg_obj.h:24
csXyz mRotation
Definition d_a_bg_obj.h:113
void set_tri_1()
Definition d_a_bg_obj.cpp:747
virtual int Execute(Mtx **)
Definition d_a_bg_obj.cpp:1257
void setBaseMtx()
Definition d_a_bg_obj.cpp:344
mDoExt_brkAnm * field_0x5c8[2][2]
Definition d_a_bg_obj.h:100
u8 field_0xd00
Definition d_a_bg_obj.h:115
int CreateInitType0()
Definition d_a_bg_obj.cpp:429
void initAtt()
Definition d_a_bg_obj.cpp:274
void orderWait_tri()
Definition d_a_bg_obj.cpp:1028
dCcD_Tri mTris[4]
Definition d_a_bg_obj.h:103
dCcD_Stts mStts
Definition d_a_bg_obj.h:102
static createHeapFunc mCreateHeapFunc[]
Definition d_a_bg_obj.h:500
void settingCullSizeBoxForCo(int)
Definition d_a_bg_obj.cpp:352
virtual int Draw()
Definition d_a_bg_obj.cpp:1275
J3DModel * field_0x5a8[2][2]
Definition d_a_bg_obj.h:98
int ExecuteType0()
Definition d_a_bg_obj.cpp:1213
s16 mEventIdx
Definition d_a_bg_obj.h:107
static createInitFunc mCreateInitFunc[]
Definition d_a_bg_obj.h:507
u8 field_0xd02
Definition d_a_bg_obj.h:117
BOOL checkDestroy()
Definition d_a_bg_obj.cpp:982
BOOL checkHitAt(cCcD_Obj *)
Definition d_a_bg_obj.cpp:1001
void set_tri_2()
Definition d_a_bg_obj.cpp:786
static tgSetFunc mTgSetFunc[]
Definition d_a_bg_obj.h:525
void regist(dBgW *)
Definition d_a_bg_obj.cpp:254
dCcD_Cyl mCyl
Definition d_a_bg_obj.h:104
u8 field_0xd01
Definition d_a_bg_obj.h:116
u8 field_0xcc8
Definition d_a_bg_obj.h:108
void set_tri_0()
Definition d_a_bg_obj.cpp:725
int actionOrderWait()
Definition d_a_bg_obj.cpp:1142
void orderWait_spec()
Definition d_a_bg_obj.cpp:1111
void release(dBgW *)
Definition d_a_bg_obj.cpp:248
request_of_phase_process_class mPhase
Definition d_a_bg_obj.h:97
int actionEvent()
Definition d_a_bg_obj.cpp:1200
u16 field_0xcca
Definition d_a_bg_obj.h:110
int create1st()
Definition d_a_bg_obj.cpp:679
u8 field_0xcc9
Definition d_a_bg_obj.h:109
void initBaseMtx()
Definition d_a_bg_obj.cpp:337
void orderWait_cyl()
Definition d_a_bg_obj.cpp:1072
mDoExt_btkAnm * field_0x5b8[2][2]
Definition d_a_bg_obj.h:99
static executeFunc mExecuteFunc[]
Definition d_a_bg_obj.h:518
spec_data_c mSpecData
Definition d_a_bg_obj.h:112
void set_tri_3()
Definition d_a_bg_obj.cpp:816
void settingCullSizeBoxForCull(int)
Definition d_a_bg_obj.cpp:379
int actionOrder()
Definition d_a_bg_obj.cpp:1163
void setAttentionInfo(fopAc_ac_c *)
Definition d_a_bg_obj.cpp:332
virtual int Create()
Definition d_a_bg_obj.cpp:514
virtual int CreateHeap()
Definition d_a_bg_obj.cpp:666
void doShareTexture()
Definition d_a_bg_obj.cpp:639
void setSe()
Definition d_a_bg_obj.cpp:970
int actionWait()
Definition d_a_bg_obj.cpp:1209
int CreateHeapType1()
Definition d_a_bg_obj.cpp:579
int ExecuteType1()
Definition d_a_bg_obj.cpp:1244
u16 field_0xccc
Definition d_a_bg_obj.h:111
u32 mAttnActorID
Definition d_a_bg_obj.h:114
void indirectProc(J3DModel *)
Definition d_a_bg_obj.cpp:1318
void set_cyl_0()
Definition d_a_bg_obj.cpp:769
u8 field_0xcc4
Definition d_a_bg_obj.h:105
dBgW * mpBgW2
Definition d_a_bg_obj.h:101
int CreateInitType1()
Definition d_a_bg_obj.cpp:442
void setAction(u8 i_action)
Definition d_a_bg_obj.h:90
u8 mAction
Definition d_a_bg_obj.h:106
void setColCommon()
Definition d_a_bg_obj.cpp:709
virtual int Delete()
Definition d_a_bg_obj.cpp:1330
void setParticle()
Definition d_a_bg_obj.cpp:874
int CreateHeapType0()
Definition d_a_bg_obj.cpp:530
Definition f_op_actor.h:230
Definition m_Do_ext.h:94
Definition m_Do_ext.h:65
int(daBgObj_c::* executeFunc)()
Definition d_a_bg_obj.h:12
int(daBgObj_c::* createHeapFunc)()
Definition d_a_bg_obj.h:10
int(daBgObj_c::* createInitFunc)()
Definition d_a_bg_obj.h:11
void(daBgObj_c::* tgSetFunc)()
Definition d_a_bg_obj.h:13
int(daBgObj_c::* actionFunc)()
Definition d_a_bg_obj.h:14
f32 Mtx[3][4]
Definition mtx.h:25
int BOOL
Definition types.h:33
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
u32 fopAcM_GetParam(const void *i_actor)
Definition f_op_actor_mng.h:192
Definition d_a_bg_obj.h:120
u8 getEvId(daBgObj_c *i_this)
Definition d_a_bg_obj.h:121
u8 getSwBit(daBgObj_c *i_this)
Definition d_a_bg_obj.h:125
u8 getObjArg0(daBgObj_c *i_this)
Definition d_a_bg_obj.h:133
u8 getSwBit2(daBgObj_c *i_this)
Definition d_a_bg_obj.h:129
Definition c_phase.h:17
Definition d_a_bg_obj.h:138
u16 field_0x0
Definition d_a_bg_obj.h:140
u16 field_0x2
Definition d_a_bg_obj.h:141
u8 field_0x4
Definition d_a_bg_obj.h:142