forked from zeldaret/tp
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathd_a_npc_cd.h
More file actions
150 lines (129 loc) · 4.4 KB
/
d_a_npc_cd.h
File metadata and controls
150 lines (129 loc) · 4.4 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
#ifndef A_NPC_D_A_NPC_CD_H
#define A_NPC_D_A_NPC_CD_H
#include "Z2AudioLib/Z2Creature.h"
#include "d/d_com_inf_game.h"
struct daNpcCd_HIO_Jnt_c : public JORReflexible {
/* 80157810 */ virtual ~daNpcCd_HIO_Jnt_c() {}
/* 801578B0 */ daNpcCd_HIO_Jnt_c() {}
void genMessage(JORMContext*);
/* 0x04 */ cXyz jntT;
/* 0x10 */ csXyz jntR;
};
struct daNpcCd_HIO_Child_c {
/* 801577A0 */ virtual ~daNpcCd_HIO_Child_c() {}
/* 80157858 */ daNpcCd_HIO_Child_c() {}
/* 0x004 */ daNpcCd_HIO_Jnt_c field_0x4[12];
/* 0x128 */ s16 mAtn;
};
struct daNpcCd_HIO_c : public fOpAcm_HIO_entry_c {
/* 80157600 */ daNpcCd_HIO_c();
/* 801577A0 */ virtual ~daNpcCd_HIO_c() {}
void genMessage(JORMContext*);
/* 0x0004 */ daNpcCd_HIO_Child_c field_0x0004[16];
/* 0x1648 */ daNpcCd_HIO_Child_c field_0x1648[14];
};
extern daNpcCd_HIO_c l_Cd_HIO;
inline s16 HIO_atnOfs(int param_1) {
s16 rv;
if (param_1 < 16) {
rv = l_Cd_HIO.field_0x0004[param_1].mAtn;
} else {
rv = l_Cd_HIO.field_0x0004[param_1 - 16].mAtn;
}
return rv;
}
inline s16 HIO_jntRX(int param_1, int param_2) {
s16 rv;
if (param_1 < 16) {
rv = l_Cd_HIO.field_0x0004[param_1].field_0x4[param_2].jntR.x;
} else {
rv = l_Cd_HIO.field_0x1648[param_1 - 16].field_0x4[param_2].jntR.x;
}
return 182.04444885253906f * rv;
}
inline s16 HIO_jntRY(int param_1, int param_2) {
s16 rv;
if (param_1 < 16) {
rv = l_Cd_HIO.field_0x0004[param_1].field_0x4[param_2].jntR.y;
} else {
rv = l_Cd_HIO.field_0x1648[param_1 - 16].field_0x4[param_2].jntR.y;
}
return 182.04444885253906f * rv;
}
inline s16 HIO_jntRZ(int param_1, int param_2) {
s16 rv;
if (param_1 < 16) {
rv = l_Cd_HIO.field_0x0004[param_1].field_0x4[param_2].jntR.z;
} else {
rv = l_Cd_HIO.field_0x1648[param_1 - 16].field_0x4[param_2].jntR.z;
}
return 182.04444885253906f * rv;
}
static inline f32 HIO_jntTX(int param_1, int param_2) {
f32 rv;
if (param_1 < 16) {
rv = l_Cd_HIO.field_0x0004[param_1].field_0x4[param_2].jntT.x;
} else {
rv = l_Cd_HIO.field_0x1648[param_1 - 16].field_0x4[param_2].jntT.x;
}
return 10.0f * rv;
}
static inline f32 HIO_jntTY(int param_1, int param_2) {
f32 rv;
if (param_1 < 16) {
rv = l_Cd_HIO.field_0x0004[param_1].field_0x4[param_2].jntT.y;
} else {
rv = l_Cd_HIO.field_0x1648[param_1 - 16].field_0x4[param_2].jntT.y;
}
return 10.0f * rv;
}
static inline f32 HIO_jntTZ(int param_1, int param_2) {
f32 rv;
if (param_1 < 16) {
rv = l_Cd_HIO.field_0x0004[param_1].field_0x4[param_2].jntT.z;
} else {
rv = l_Cd_HIO.field_0x1648[param_1 - 16].field_0x4[param_2].jntT.z;
}
return 10.0f * rv;
}
class daNpcCd_c : public fopAc_ac_c {
public:
/* 8015605C */ int NpcCreate(int);
/* 801561E8 */ J3DModel* ObjCreate(int);
/* 80156228 */ BOOL isM_();
/* 80156248 */ J3DAnmTransform* getAnmP(int, int);
/* 801563C8 */ int setAttention(int);
/* 80156B4C */ int loadResrc(int, int);
/* 80156C50 */ int removeResrc(int, int);
/* 80156D1C */ void setEnvTevCol();
/* 80156D78 */ void setRoomNo();
/* 80156DBC */ void animation();
/* 80156E20 */ void setAnm(J3DAnmTransformKey*, f32, f32, int, int, int);
/* 80156E8C */ int drawObj(int, J3DModel*, f32);
/* 80156F74 */ int drawNpc();
/* 80157084 */ int jntNodeCB(J3DJoint*, J3DModel*);
/* 8015736C */ void setHitodamaParticle();
/* 80157524 */ J3DModelData* getNpcMdlDataP(int);
/* 80157588 */ J3DModelData* getObjMdlDataP(int);
/* 80AA8694 */ virtual ~daNpcCd_c();
static dCcD_SrcCyl const m_cylDat;
/* 0x56C */ request_of_phase_process_class mPhase1;
/* 0x574 */ request_of_phase_process_class mPhase2;
/* 0x57C */ request_of_phase_process_class mPhase3;
/* 0x584 */ request_of_phase_process_class mPhase4;
/* 0x58C */ mDoExt_McaMorfSO* mpMorf;
/* 0x590 */ Z2CreatureCitizen mCreature;
/* 0x634 */ dBgS_ObjAcch mAcch;
/* 0x80C */ dBgS_AcchCir mAcchCir;
/* 0x84C */ dCcD_Stts mStts;
/* 0x888 */ dCcD_Cyl mCyl;
/* 0x9C4 */ int field_0x9c4;
/* 0x9C8 */ int field_0x9c8;
/* 0x9CC */ int mHitodamaEmitters[2];
/* 0x9D4 */ int field_0x9d4;
/* 0x9D8 */ cXyz field_0x9d8;
/* 0x9E4 */ s16 field_0x9e4;
/* 0x9E6 */ s16 field_0x9e6;
/* 0x9E8 */ bool mIsDarkWorld;
};
#endif /* A_NPC_D_A_NPC_CD_H */