Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_particle_copoly.h
Go to the documentation of this file.
1#ifndef D_PARTICLE_D_PARTICLE_COPOLY_H
2#define D_PARTICLE_D_PARTICLE_COPOLY_H
3
4#include "d/d_com_inf_game.h"
5
6class dBgS_Acch;
7class dKy_tevstr_c;
9
10class dPaPo_c {
11public:
12 /* 80050C9C */ void init(dBgS_Acch*, f32, f32);
13 /* 80050CC4 */ int checkWaterIn(cXyz*, cXyz const*, dKy_tevstr_c const*, u32, s8, f32, f32);
14 /* 80050E7C */ void setEffect(u32*, int, dKy_tevstr_c const*, cXyz const*, u32, u32,
15 cXyz const*, csXyz const*, s8, u8*, u8*);
16 /* 80051008 */ int setEffectCenter(dKy_tevstr_c const*, cXyz const*, u32, u32, cXyz const*,
17 csXyz const*, cXyz const*, s8, f32, f32);
18 /* 8005113C */ void clearID(u32*, u8*);
19
27
28 /* 0x00 */ u32 field_0x0[2];
29 /* 0x08 */ u32 field_0x8[2][4];
30 /* 0x28 */ dBgS_Acch* field_0x28;
31 /* 0x2C */ f32 mWaterOffset;
32 /* 0x30 */ f32 mRippleOffset;
33 /* 0x34 */ u8 mCenterEffType[2];
34 /* 0x36 */ u8 field_0x36;
35 /* 0x37 */ u8 field_0x37;
36};
37
38class dPaPoT_c : public dPaPo_c {
39public:
40 /* 8005115C */ int setEffectTwo(dKy_tevstr_c const*, cXyz const*, u32, u32, cXyz const*,
41 cXyz const*, cXyz const*, csXyz const*, cXyz const*, s8, f32,
42 f32);
43 /* 80051294 */ void clearTwoAllID();
44
47 u8 getRightEffType(int i_idx) const { return mRightEffType[i_idx]; }
48 u8 getLeftEffType(int i_idx) const { return mLeftEffType[i_idx]; }
55
57 typedef JPABaseEmitter* (dPaPoT_c::*emitterFunc)(int, int);
58
61
62 /* 0x38 */ u32 mLeftEmitter[2][4];
63 /* 0x58 */ u32 mRightEmitter[2][4];
64 /* 0x78 */ u8 mLeftEffType[2];
65 /* 0x7A */ u8 mRightEffType[2];
66 /* 0x7C */ u8 field_0x7c;
67 /* 0x7D */ u8 field_0x7d;
68};
69
70class dPaPoF_c : public dPaPoT_c {
71public:
72 /* 800512E8 */ int setEffectFour(dKy_tevstr_c const*, cXyz const*, u32, u32, cXyz const*,
73 cXyz const*, cXyz const*, cXyz const*, cXyz const*,
74 csXyz const*, cXyz const*, s8, f32, f32);
75 /* 80051424 */ void clearFourAllID();
76
87
89 typedef JPABaseEmitter* (dPaPoF_c::*emitterFunc)(int, int);
90
91 u8 getTypeFour(int param_0, int param_1) const {
92 return (this->*m_typeFourData[param_0])(param_1);
93 }
95 return (this->*m_emitterFourData[param_0])(param_1, param_2);
96 }
97
100
101 /* 0x80 */ u32 mBackLeftEmitter[2][4];
102 /* 0xA0 */ u32 mBackRightEmitter[2][4];
103 /* 0xC0 */ u8 mBackLeftEffType[2];
104 /* 0xC2 */ u8 mBackRightEffType[2];
105 /* 0xC4 */ u8 field_0xc4;
106 /* 0xC5 */ u8 field_0xc5;
107};
108
109#endif /* D_PARTICLE_D_PARTICLE_COPOLY_H */
T cLib_calcTimer(T *value)
Definition c_lib.h:74
Definition JPAEmitter.h:94
Definition d_particle_copoly.h:70
u8(dPaPoF_c::* effTypeFunc)(int) const
Definition d_particle_copoly.h:88
JPABaseEmitter * getBackLeftEmitter(int param_0, int param_1)
Definition d_particle_copoly.h:84
u8 mBackLeftEffType[2]
Definition d_particle_copoly.h:103
int setEffectFour(dKy_tevstr_c const *, cXyz const *, u32, u32, cXyz const *, cXyz const *, cXyz const *, cXyz const *, cXyz const *, csXyz const *, cXyz const *, s8, f32, f32)
Definition d_particle_copoly.cpp:193
JPABaseEmitter * getBackRightEmitter(int param_0, int param_1)
Definition d_particle_copoly.h:81
u8 getTypeFour(int param_0, int param_1) const
Definition d_particle_copoly.h:91
void clearBRightID()
Definition d_particle_copoly.h:78
u32 mBackLeftEmitter[2][4]
Definition d_particle_copoly.h:101
JPABaseEmitter * getEmitterFour(int param_0, int param_1, int param_2)
Definition d_particle_copoly.h:94
u8 mBackRightEffType[2]
Definition d_particle_copoly.h:104
static emitterFunc m_emitterFourData[]
Definition d_particle_copoly.h:257
static effTypeFunc m_typeFourData[]
Definition d_particle_copoly.h:251
u8 field_0xc4
Definition d_particle_copoly.h:105
u8 getBackLeftEffType(int i_idx) const
Definition d_particle_copoly.h:80
u8 field_0xc5
Definition d_particle_copoly.h:106
JPABaseEmitter *(dPaPoF_c::* emitterFunc)(int, int)
Definition d_particle_copoly.h:89
u32 mBackRightEmitter[2][4]
Definition d_particle_copoly.h:102
u8 getBackRightEffType(int i_idx) const
Definition d_particle_copoly.h:79
void clearBLeftID()
Definition d_particle_copoly.h:77
void clearFourAllID()
Definition d_particle_copoly.cpp:224
Definition d_particle_copoly.h:38
u32 mRightEmitter[2][4]
Definition d_particle_copoly.h:63
static emitterFunc m_emitterTwoData[]
Definition d_particle_copoly.h:244
u8 getLeftEffType(int i_idx) const
Definition d_particle_copoly.h:48
u8 field_0x7c
Definition d_particle_copoly.h:66
void clearRightID()
Definition d_particle_copoly.h:46
JPABaseEmitter * getLeftEmitter(int param_0, int param_1)
Definition d_particle_copoly.h:52
JPABaseEmitter *(dPaPoT_c::* emitterFunc)(int, int)
Definition d_particle_copoly.h:57
void clearTwoAllID()
Definition d_particle_copoly.cpp:184
int setEffectTwo(dKy_tevstr_c const *, cXyz const *, u32, u32, cXyz const *, cXyz const *, cXyz const *, csXyz const *, cXyz const *, s8, f32, f32)
Definition d_particle_copoly.cpp:154
void clearLeftID()
Definition d_particle_copoly.h:45
u8 field_0x7d
Definition d_particle_copoly.h:67
static effTypeFunc m_typeTwoData[]
Definition d_particle_copoly.h:237
u8 mRightEffType[2]
Definition d_particle_copoly.h:65
u8(dPaPoT_c::* effTypeFunc)(int) const
Definition d_particle_copoly.h:56
u8 mLeftEffType[2]
Definition d_particle_copoly.h:64
JPABaseEmitter * getRightEmitter(int param_0, int param_1)
Definition d_particle_copoly.h:49
u8 getRightEffType(int i_idx) const
Definition d_particle_copoly.h:47
u32 mLeftEmitter[2][4]
Definition d_particle_copoly.h:62
Definition d_particle_copoly.h:10
u8 field_0x36
Definition d_particle_copoly.h:34
u32 field_0x8[2][4]
Definition d_particle_copoly.h:29
dBgS_Acch * field_0x28
Definition d_particle_copoly.h:30
int setEffectCenter(dKy_tevstr_c const *, cXyz const *, u32, u32, cXyz const *, csXyz const *, cXyz const *, s8, f32, f32)
Definition d_particle_copoly.cpp:115
int checkWaterIn(cXyz *, cXyz const *, dKy_tevstr_c const *, u32, s8, f32, f32)
Definition d_particle_copoly.cpp:21
void clearCenterID()
Definition d_particle_copoly.h:20
void changeRippleOffset(f32 i_offset)
Definition d_particle_copoly.h:22
void changeWaterOffset(f32 i_offset)
Definition d_particle_copoly.h:21
f32 mWaterOffset
Definition d_particle_copoly.h:31
u8 getCenterEffType(int i_idx) const
Definition d_particle_copoly.h:23
void clearID(u32 *, u8 *)
Definition d_particle_copoly.cpp:143
void setEffect(u32 *, int, dKy_tevstr_c const *, cXyz const *, u32, u32, cXyz const *, csXyz const *, s8, u8 *, u8 *)
Definition d_particle_copoly.cpp:64
JPABaseEmitter * getCenterEmitter(int param_0, int param_1)
Definition d_particle_copoly.h:24
u32 field_0x0[2]
Definition d_particle_copoly.h:28
f32 mRippleOffset
Definition d_particle_copoly.h:32
u8 field_0x37
Definition d_particle_copoly.h:35
u8 mCenterEffType[2]
Definition d_particle_copoly.h:33
static void dComIfGp_particle_getEmitter(u32 param_0)
Definition d_a_e_po.cpp:2705
static initFunc init[]
Definition d_menu_collect.cpp:42
Definition d_a_hozelda.cpp:20
Definition d_a_ep.cpp:66
Definition d_a_npc_fguard.cpp:115
Definition d_a_ep.cpp:49
signed char s8
Definition types.h:4
unsigned long u32
Definition types.h:10
float f32
Definition types.h:22
unsigned char u8
Definition types.h:8