Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_jnt_col.h
Go to the documentation of this file.
1#ifndef D_D_JNT_COL_H
2#define D_D_JNT_COL_H
3
4#include "JSystem/J3DGraphAnimator/J3DModel.h"
5#include "JSystem/JHostIO/JORReflexible.h"
8
9class fopAc_ac_c;
10
12public:
13 /* 0x0 */ u8 field_0x0;
14 /* 0x1 */ u8 mType;
15 /* 0x2 */ s16 mJntNum;
16 /* 0x4 */ f32 field_0x4;
17 /* 0x8 */ Vec* field_0x8;
18};
19
20class dJntCol_c {
21public:
22 dJntCol_c();
23 int init(fopAc_ac_c*, dJntColData_c const*, J3DModel*, int);
24 static void setNowLine(cM3dGLin*, cXyz const*, csXyz const*, cXyz*);
25 int searchNearPos(cM3dGLin const*, cXyz const*, cXyz*, int) const;
26 int getArrowOffsetPosAndAngle(cXyz const*, csXyz const*, cXyz*, cXyz*) const;
27 int getHitmarkPosAndAngle(cXyz const*, csXyz const*, cXyz*, csXyz*, int) const;
28 void setArrowPosAndAngle(cXyz const*, cXyz const*, int, cXyz*, csXyz*);
29 void debugDraw();
30
31 BOOL checkPassNum(int bit) { return field_0xc & (1 << bit); }
32 void onPassNum(int num) { field_0xc |= (1 << num); }
33 void offPassNum(int num) { field_0xc &= ~(1 << num); }
34 bool checkShieldType(int i) { return getType(i) == 3; }
35
36 int getType(int i) { return mData[i].mType; }
37 int getJntNum(int i) { return (s16)mData[i].mJntNum; }
38
39 /* 0x00 */ const dJntColData_c* mData;
40 /* 0x04 */ J3DModel* mModel;
41 /* 0x08 */ int field_0x8;
42 /* 0x0C */ int field_0xc;
43};
44
46
47class dJntCol_HIO_c : public JORReflexible {
48public:
53 virtual ~dJntCol_HIO_c() {}
54 virtual void listenPropertyEvent(const JORPropertyEvent*);
55 virtual void genMessage(JORMContext*);
56
57 void update();
58 void fileOut();
59
60 /* 0x04 */ s8 field_0x4;
61 /* 0x05 */ u8 field_0x5;
62 /* 0x06 */ u8 field_0x6[0xC - 0x6];
64
65};
66
67#if DEBUG
70#endif
71
72#endif /* D_D_JNT_COL_H */
Definition c_m3d_g_lin.h:8
Definition c_sxyz.h:10
Definition d_jnt_col.h:11
Vec * field_0x8
Definition d_jnt_col.h:17
f32 field_0x4
Definition d_jnt_col.h:16
s16 mJntNum
Definition d_jnt_col.h:15
u8 field_0x0
Definition d_jnt_col.h:13
u8 mType
Definition d_jnt_col.h:14
Definition d_jnt_col.h:47
dJntColData_c * field_0xc
Definition d_jnt_col.h:63
void fileOut()
Definition d_jnt_col.cpp:209
virtual void listenPropertyEvent(const JORPropertyEvent *)
Definition d_jnt_col.cpp:147
virtual void genMessage(JORMContext *)
Definition d_jnt_col.cpp:122
u8 field_0x5
Definition d_jnt_col.h:61
virtual ~dJntCol_HIO_c()
Definition d_jnt_col.h:53
u8 field_0x6[0xC - 0x6]
Definition d_jnt_col.h:62
void update()
Definition d_jnt_col.cpp:192
s8 field_0x4
Definition d_jnt_col.h:60
dJntCol_HIO_c()
Definition d_jnt_col.h:49
Definition d_jnt_col.h:20
void setArrowPosAndAngle(cXyz const *, cXyz const *, int, cXyz *, csXyz *)
Definition d_jnt_col.cpp:547
int getJntNum(int i)
Definition d_jnt_col.h:37
void offPassNum(int num)
Definition d_jnt_col.h:33
int getArrowOffsetPosAndAngle(cXyz const *, csXyz const *, cXyz *, cXyz *) const
Definition d_jnt_col.cpp:482
int field_0xc
Definition d_jnt_col.h:42
bool checkShieldType(int i)
Definition d_jnt_col.h:34
int getHitmarkPosAndAngle(cXyz const *, csXyz const *, cXyz *, csXyz *, int) const
Definition d_jnt_col.cpp:509
static void setNowLine(cM3dGLin *, cXyz const *, csXyz const *, cXyz *)
Definition d_jnt_col.cpp:303
J3DModel * mModel
Definition d_jnt_col.h:40
void onPassNum(int num)
Definition d_jnt_col.h:32
int searchNearPos(cM3dGLin const *, cXyz const *, cXyz *, int) const
Definition d_jnt_col.cpp:317
const dJntColData_c * mData
Definition d_jnt_col.h:39
int getType(int i)
Definition d_jnt_col.h:36
void debugDraw()
Definition d_jnt_col.cpp:558
BOOL checkPassNum(int bit)
Definition d_jnt_col.h:31
int field_0x8
Definition d_jnt_col.h:41
dJntCol_c()
Definition d_jnt_col.cpp:273
Definition f_op_actor.h:271
void dJntCol_setDebugHIO()
Definition d_jnt_col.cpp:280
void dJntCol_deleteDebugHIO()
Definition d_jnt_col.cpp:284
dJntColData_c l_debugColData[]
Definition d_jnt_col.cpp:87
static initFunc init[]
Definition d_menu_collect.cpp:40
struct Vec Vec
Definition m_Do_lib.h:8
Definition c_xyz.h:7