Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
d_a_obj_crope.h
Go to the documentation of this file.
1#ifndef D_A_OBJ_CROPE_H
2#define D_A_OBJ_CROPE_H
3
5#include "d/d_cc_d.h"
6
15class daObjCrope_c : public fopAc_ac_c {
16public:
17 int createHeap();
18 int create();
20 void setNormalRopePos();
21 void setRideRopePos();
22 int execute();
23 int draw();
24
26 cXyz* getRopeEndPos() { return &mLineMat.getPos(0)[99]; }
27 cXyz* getRopeVec() { return &mRopeVec; }
29 void onOutFlg() { mOutFlg = true; }
30 void setFrontJoint(int i_jointNo) { mFrontJoint = i_jointNo; }
31 void setBackJoint(int i_jointNo) { mBackJoint = i_jointNo; }
32
33 f32 getStartRate(const cXyz* param_0) {
34 if (field_0x714) {
35 return field_0x724 * (param_0->x - getRopeStartPos()->x);
36 } else {
37 return field_0x724 * (param_0->z - getRopeStartPos()->z);
38 }
39 }
40
41 void rideKeep() {
42 setFrontJoint(-2);
43 setBackJoint(-1);
44 }
45
46 void offRide() {
47 setFrontJoint(-1);
48 setBackJoint(-1);
49 }
50
52 mCoCancelTimer = 30;
53 }
54
55private:
57 /* 0x0570 */ dCcD_Stts mCcStts;
58 /* 0x05AC */ dCcD_Sph mCollider;
59 /* 0x06E4 */ Mtx field_0x6e4;
60 /* 0x0714 */ u8 field_0x714;
61 /* 0x0715 */ u8 mOutFlg;
62 /* 0x0716 */ u8 mCoCancelTimer;
63 /* 0x0718 */ int mFrontJoint;
64 /* 0x071C */ int mBackJoint;
65 /* 0x0720 */ f32 field_0x720;
66 /* 0x0724 */ f32 field_0x724;
67 /* 0x0728 */ cXyz mRopeVec;
68 /* 0x0734 */ cXyz mPlayerNearPos;
69 /* 0x0740 */ cXyz field_0x740[98];
70 /* 0x0BD8 */ cXyz field_0xbd8[98];
72};
73
74STATIC_ASSERT(sizeof(daObjCrope_c) == 0x10ac);
75
76
77#endif /* D_A_OBJ_CROPE_H */
Definition d_cc_d.h:473
Definition d_cc_d.h:269
Wolf Tightrope.
Definition d_a_obj_crope.h:15
void setCoCancelTimer()
Definition d_a_obj_crope.h:51
void onOutFlg()
Definition d_a_obj_crope.h:29
cXyz mRopeVec
Definition d_a_obj_crope.h:67
void setNormalRopePos()
Definition d_a_obj_crope.cpp:127
int draw()
Definition d_a_obj_crope.cpp:362
int mBackJoint
Definition d_a_obj_crope.h:64
Mtx field_0x6e4
Definition d_a_obj_crope.h:59
cXyz field_0x740[98]
Definition d_a_obj_crope.h:69
void setRideRopePos()
Definition d_a_obj_crope.cpp:183
void setBackJoint(int i_jointNo)
Definition d_a_obj_crope.h:31
void offRide()
Definition d_a_obj_crope.h:46
cXyz field_0xbd8[98]
Definition d_a_obj_crope.h:70
u8 field_0x714
Definition d_a_obj_crope.h:60
cXyz & getPlayerNearPos()
Definition d_a_obj_crope.h:28
u8 mOutFlg
Definition d_a_obj_crope.h:61
int execute()
Definition d_a_obj_crope.cpp:314
u8 mCoCancelTimer
Definition d_a_obj_crope.h:62
f32 field_0x724
Definition d_a_obj_crope.h:66
cXyz * getRopeEndPos()
Definition d_a_obj_crope.h:26
request_of_phase_process_class mPhase
Definition d_a_obj_crope.h:56
mDoExt_3DlineMat1_c mLineMat
Definition d_a_obj_crope.h:71
cXyz mPlayerNearPos
Definition d_a_obj_crope.h:68
void setFrontJoint(int i_jointNo)
Definition d_a_obj_crope.h:30
~daObjCrope_c()
Definition d_a_obj_crope.cpp:117
dCcD_Sph mCollider
Definition d_a_obj_crope.h:58
int mFrontJoint
Definition d_a_obj_crope.h:63
void rideKeep()
Definition d_a_obj_crope.h:41
dCcD_Stts mCcStts
Definition d_a_obj_crope.h:57
int create()
Definition d_a_obj_crope.cpp:46
cXyz * getRopeVec()
Definition d_a_obj_crope.h:27
f32 getStartRate(const cXyz *param_0)
Definition d_a_obj_crope.h:33
f32 field_0x720
Definition d_a_obj_crope.h:65
cXyz * getRopeStartPos()
Definition d_a_obj_crope.h:25
int createHeap()
Definition d_a_obj_crope.cpp:17
Definition f_op_actor.h:230
Definition m_Do_ext.h:561
cXyz * getPos(int i_idx)
Definition m_Do_ext.h:570
STATIC_ASSERT(sizeof(daObjCrope_c)==0x10ac)
f32 Mtx[3][4]
Definition mtx.h:25
float f32
Definition types.h:25
unsigned char u8
Definition types.h:8
f32 z
Definition mtx.h:14
f32 x
Definition mtx.h:14
Definition c_xyz.h:7
Definition c_phase.h:17