Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
Loading...
Searching...
No Matches
c_cc_d.h
Go to the documentation of this file.
1#ifndef C_CC_D_H
2#define C_CC_D_H
3
9#include "f_pc/f_pc_manager.h"
10
11typedef struct _GXColor GXColor;
12class fopAc_ac_c;
13
21
22class cCcD_PntAttr;
23class cCcD_CpsAttr;
24class cCcD_TriAttr;
25class cCcD_AabAttr;
26class cCcD_CylAttr;
27class cCcD_SphAttr;
28
30 /* 0x00000000 */ AT_TYPE_0 = 0,
31 /* 0x00000001*/ AT_TYPE_1 = (1 << 0),
32 /* 0x00000002 */ AT_TYPE_NORMAL_SWORD = (1 << 1), // wooden or ordon
33 /* 0x00000004 */ AT_TYPE_HORSE = (1 << 2),
34 /* 0x00000008 */ AT_TYPE_THROW_OBJ = (1 << 3),
35 /* 0x00000010 */ AT_TYPE_SHIELD_ATTACK = (1 << 4),
36 /* 0x00000020 */ AT_TYPE_BOMB = (1 << 5),
37 /* 0x00000040 */ AT_TYPE_40 = (1 << 6),
38 /* 0x00000080 */ AT_TYPE_SLINGSHOT = (1 << 7),
39 /* 0x00000200 */ AT_TYPE_LANTERN_SWING = (1 << 9),
40 /* 0x00000400 */ AT_TYPE_CSTATUE_SWING = (1 << 10),
41 /* 0x00000800 */ AT_TYPE_800 = (1 << 11),
42 /* 0x00001000 */ AT_TYPE_1000 = (1 << 12),
43 /* 0x00002000 */ AT_TYPE_ARROW = (1 << 13),
44 /* 0x00004000 */ AT_TYPE_HOOKSHOT = (1 << 14),
45 /* 0x00008000 */ AT_TYPE_8000 = (1 << 15),
46 /* 0x00010000 */ AT_TYPE_BOOMERANG = (1 << 16),
47 /* 0x00040000 */ AT_TYPE_40000 = (1 << 18),
48 /* 0x00080000 */ AT_TYPE_SPINNER = (1 << 19),
49 /* 0x00100000 */ AT_TYPE_CSTATUE_BOSS_SWING = (1 << 20),
50 /* 0x00200000 */ AT_TYPE_HEAVY_BOOTS = (1 << 21),
51 /* 0x00400000 */ AT_TYPE_IRON_BALL = (1 << 22),
52 /* 0x00800000 */ AT_TYPE_COPY_ROD = (1 << 23),
53 /* 0x01000000 */ AT_TYPE_1000000 = (1 << 24),
54 /* 0x04000000 */ AT_TYPE_MASTER_SWORD = (1 << 26),
55 /* 0x08000000 */ AT_TYPE_MIDNA_LOCK = (1 << 27),
56 /* 0x10000000 */ AT_TYPE_10000000 = (1 << 28),
57 /* 0x40000000 */ AT_TYPE_WOLF_CUT_TURN = (1 << 30),
58 /* 0x80000000 */ AT_TYPE_WOLF_ATTACK = (1 << 31),
59 /* 0xD8000000 */ AT_TYPE_UNK = 0xD8000000
60};
61
63public:
64 /* 0x00 */ cM3dGAab mAab;
65 /* 0x1C vtable */
66
67 struct Shape {
68 /* 80167BBC */ ~Shape();
69
70 /* 0x00 */ int _0;
71 /* 0x04 */ f32 _4;
72 /* 0x08 */ f32 _8;
73 /* 0x0C */ f32 _C;
74 /* 0x10 */ f32 _10;
75 /* 0x14 */ f32 _14;
76 };
78 /* 8008556C vt[2] */ virtual ~cCcD_ShapeAttr() {}
79 /* 802649D8 vt[3] */ virtual bool CrossAtTg(cCcD_ShapeAttr const&, cXyz*) const {
80 return false;
81 }
82 /* vt[4] */ virtual bool CrossAtTg(cCcD_PntAttr const&, cXyz*) const = 0;
83 /* vt[5] */ virtual bool CrossAtTg(cCcD_CpsAttr const&, cXyz*) const = 0;
84 /* vt[6] */ virtual bool CrossAtTg(cCcD_TriAttr const&, cXyz*) const = 0;
85 /* vt[7] */ virtual bool CrossAtTg(cCcD_AabAttr const&, cXyz*) const = 0;
86 /* vt[8] */ virtual bool CrossAtTg(cCcD_CylAttr const&, cXyz*) const = 0;
87 /* vt[9] */ virtual bool CrossAtTg(cCcD_SphAttr const&, cXyz*) const = 0;
88 /* 802649E0 vt[10]*/ virtual bool CrossCo(cCcD_ShapeAttr const&, f32*) const { return false; }
89 /* vt[11]*/ virtual bool CrossCo(cCcD_PntAttr const&, f32*) const = 0;
90 /* vt[12]*/ virtual bool CrossCo(cCcD_CpsAttr const&, f32*) const = 0;
91 /* vt[13]*/ virtual bool CrossCo(cCcD_TriAttr const&, f32*) const = 0;
92 /* vt[14]*/ virtual bool CrossCo(cCcD_AabAttr const&, f32*) const = 0;
93 /* vt[15]*/ virtual bool CrossCo(cCcD_CylAttr const&, f32*) const = 0;
94 /* vt[16]*/ virtual bool CrossCo(cCcD_SphAttr const&, f32*) const = 0;
95 /* 80084E38 vt[17]*/ virtual const cXyz& GetCoCP() const { return m_virtual_center; }
96 /* 80084E2C vt[18]*/ virtual cXyz& GetCoCP() { return m_virtual_center; }
97 /* vt[19]*/ virtual void CalcAabBox() = 0;
98 /* vt[20]*/ virtual bool GetNVec(cXyz const&, cXyz*) const = 0;
99 /* 80263A64 vt[21]*/ virtual void getShapeAccess(cCcD_ShapeAttr::Shape*) const;
100
101 cM3dGAab& GetWorkAab() { return mAab; }
102 cM3dGAab const& GetWorkAab() const { return mAab; }
103
105};
106
108
112
113class cCcD_TriAttr : public cCcD_ShapeAttr, public cM3dGTri {
114public:
115 /* 80263C04 */ virtual void CalcAabBox();
116 /* 80263C9C */ virtual bool GetNVec(cXyz const&, cXyz*) const;
117 /* 80263A88 */ virtual bool CrossAtTg(cCcD_CpsAttr const&, cXyz*) const;
118 /* 80263BCC */ virtual bool CrossAtTg(cCcD_TriAttr const&, cXyz*) const;
119 /* 80263B90 */ virtual bool CrossAtTg(cCcD_SphAttr const&, cXyz*) const;
120 /* 80084E54 */ virtual bool CrossAtTg(cCcD_ShapeAttr const& shape, cXyz* xyz) const {
121 return shape.CrossAtTg(*this, xyz);
122 }
123 /* 80084E4C */ virtual bool CrossAtTg(cCcD_PntAttr const&, cXyz*) const { return false; }
124 /* 80084E44 */ virtual bool CrossAtTg(cCcD_AabAttr const&, cXyz*) const { return false; }
125 /* 80263B58 */ virtual bool CrossAtTg(cCcD_CylAttr const&, cXyz*) const;
126 /* 80084EBC */ virtual bool CrossCo(cCcD_ShapeAttr const& shape, f32* f) const {
127 return shape.CrossCo(*this, f);
128 }
129 /* 80084EB4 */ virtual bool CrossCo(cCcD_PntAttr const&, f32*) const { return false; }
130 /* 80084EAC */ virtual bool CrossCo(cCcD_CpsAttr const&, f32*) const { return false; }
131 /* 80084EA4 */ virtual bool CrossCo(cCcD_TriAttr const&, f32*) const { return false; }
132 /* 80084E9C */ virtual bool CrossCo(cCcD_AabAttr const&, f32*) const { return false; }
133 /* 80084E94 */ virtual bool CrossCo(cCcD_CylAttr const&, f32*) const { return false; }
134 /* 80084E8C */ virtual bool CrossCo(cCcD_SphAttr const&, f32*) const { return false; }
135 /* 80264938 */ virtual ~cCcD_TriAttr() {}
137};
138
142
143class cCcD_CpsAttr : public cCcD_ShapeAttr, public cM3dGCps {
144public:
146 void Set(const cCcD_SrcCpsAttr& pSrc) { cM3dGCps::Set(pSrc.mCps); }
147 void Set(const cXyz& pStart, const cXyz& pEnd, float radius) {
148 cM3dGCps::Set(pStart, pEnd, radius);
149 }
150
151 /* 80085450 */ virtual ~cCcD_CpsAttr() {}
152 /* 80263DC0 */ virtual bool CrossAtTg(cCcD_SphAttr const&, cXyz*) const;
153 /* 80263E04 */ virtual bool CrossAtTg(cCcD_TriAttr const&, cXyz*) const;
154 /* 80084FE4 */ virtual bool CrossAtTg(cCcD_ShapeAttr const& shape, cXyz* xyz) const {
155 return shape.CrossAtTg(*this, xyz);
156 }
157 /* 80084FDC */ virtual bool CrossAtTg(cCcD_PntAttr const&, cXyz*) const { return false; }
158 /* 80084FD4 */ virtual bool CrossAtTg(cCcD_AabAttr const&, cXyz*) const { return false; }
159 /* 80263D38 */ virtual bool CrossAtTg(cCcD_CpsAttr const&, cXyz*) const;
160 /* 80263D7C */ virtual bool CrossAtTg(cCcD_CylAttr const&, cXyz*) const;
161 /* 80263F24 */ virtual bool CrossCo(cCcD_CylAttr const&, f32*) const;
162 /* 80263ED4 */ virtual bool CrossCo(cCcD_CpsAttr const&, f32*) const;
163 /* 80263F74 */ virtual bool CrossCo(cCcD_SphAttr const&, f32*) const;
164 /* 80085034 */ virtual bool CrossCo(cCcD_ShapeAttr const& shape, f32* f) const {
165 return shape.CrossCo(*this, f);
166 }
167 /* 8008502C */ virtual bool CrossCo(cCcD_PntAttr const&, f32*) const { return false; }
168 /* 80085024 */ virtual bool CrossCo(cCcD_TriAttr const&, f32*) const { return false; }
169 /* 8008501C */ virtual bool CrossCo(cCcD_AabAttr const&, f32*) const { return false; }
170 /* 80263FC4 */ virtual void CalcAabBox();
171 /* 80264014 */ virtual bool GetNVec(cXyz const&, cXyz*) const;
172};
173
175
179
180class cCcD_SphAttr : public cCcD_ShapeAttr, public cM3dGSph {
181public:
183 void Set(const cCcD_SrcSphAttr& src) { cM3dGSph::Set(src.mSph); }
184
185 /* 8008721C */ virtual ~cCcD_SphAttr() {}
186 /* 80084B44 */ virtual const cXyz& GetCoCP() const { return mCenter; }
187 /* 80037A54 */ virtual cXyz& GetCoCP() { return mCenter; }
188 /* 80084B5C */ virtual bool CrossAtTg(cCcD_ShapeAttr const& shape, cXyz* xyz) const {
189 return shape.CrossAtTg(*this, xyz);
190 }
191 /* 80084B54 */ virtual bool CrossAtTg(cCcD_PntAttr const&, cXyz*) const { return false; }
192 /* 80084B4C */ virtual bool CrossAtTg(cCcD_AabAttr const&, cXyz*) const { return false; }
193 /* 80084BAC */ virtual bool CrossCo(cCcD_ShapeAttr const& shape, f32* f) const {
194 return shape.CrossCo(*this, f);
195 }
196 /* 80084BA4 */ virtual bool CrossCo(cCcD_PntAttr const&, f32*) const { return false; }
197 /* 80084B9C */ virtual bool CrossCo(cCcD_TriAttr const&, f32*) const { return false; }
198 /* 80084B94 */ virtual bool CrossCo(cCcD_AabAttr const&, f32*) const { return false; }
199 /* 80264538 */ virtual bool CrossAtTg(cCcD_CylAttr const&, cXyz*) const;
200 /* 802645C0 */ virtual bool CrossAtTg(cCcD_TriAttr const&, cXyz*) const;
201 /* 802644EC */ virtual bool CrossAtTg(cCcD_CpsAttr const&, cXyz*) const;
202 /* 8026457C */ virtual bool CrossAtTg(cCcD_SphAttr const&, cXyz*) const;
203 /* 80264688 */ virtual bool CrossCo(cCcD_CpsAttr const&, f32*) const;
204 /* 80264644 */ virtual bool CrossCo(cCcD_SphAttr const&, f32*) const;
205 /* 802645F8 */ virtual bool CrossCo(cCcD_CylAttr const&, f32*) const;
206 /* 802646E0 */ virtual void CalcAabBox();
207 /* 8026476C */ virtual bool GetNVec(cXyz const&, cXyz*) const;
208 /* 80264808 */ virtual void getShapeAccess(cCcD_ShapeAttr::Shape*) const;
209
210}; // Size = 0x34
211
213
214class cCcD_CylAttr : public cCcD_ShapeAttr, public cM3dGCyl {
215public:
217 /* 800854E0 */ virtual ~cCcD_CylAttr() {}
218 /* 80084CC0 */ virtual const cXyz& GetCoCP() const { return mCenter; }
219 /* 8026420C */ virtual bool CrossAtTg(cCcD_SphAttr const&, cXyz*) const;
220 /* 802641C8 */ virtual bool CrossAtTg(cCcD_CylAttr const&, cXyz*) const;
221 /* 80264250 */ virtual bool CrossAtTg(cCcD_TriAttr const&, cXyz*) const;
222 /* 80084CD8 */ virtual bool CrossAtTg(cCcD_ShapeAttr const& shape, cXyz* xyz) const {
223 return shape.CrossAtTg(*this, xyz);
224 }
225 /* 80084CD0 */ virtual bool CrossAtTg(cCcD_PntAttr const&, cXyz*) const { return false; }
226 /* 80084CC8 */ virtual bool CrossAtTg(cCcD_AabAttr const&, cXyz*) const { return false; }
227 /* 8026417C */ virtual bool CrossAtTg(cCcD_CpsAttr const&, cXyz*) const;
228 /* 80264288 */ virtual bool CrossCo(cCcD_CylAttr const&, f32*) const;
229 /* 80264310 */ virtual bool CrossCo(cCcD_CpsAttr const&, f32*) const;
230 /* 80084D28 */ virtual bool CrossCo(cCcD_ShapeAttr const& shape, f32* f) const {
231 return shape.CrossCo(*this, f);
232 }
233 /* 80084D20 */ virtual bool CrossCo(cCcD_PntAttr const&, f32*) const { return false; }
234 /* 80084D18 */ virtual bool CrossCo(cCcD_TriAttr const&, f32*) const { return false; }
235 /* 80084D10 */ virtual bool CrossCo(cCcD_AabAttr const&, f32*) const { return false; }
236 /* 802642CC */ virtual bool CrossCo(cCcD_SphAttr const&, f32*) const;
237 /* 80037A4C */ virtual cXyz& GetCoCP() { return mCenter; }
238 /* 80264368 */ virtual void CalcAabBox();
239 /* 802643D0 */ virtual bool GetNVec(cXyz const&, cXyz*) const;
240 /* 802644B8 */ virtual void getShapeAccess(cCcD_ShapeAttr::Shape*) const;
241
242}; // Size = 0x38
243
245
247private:
248 /* 0x00 */ u32 mXDivInfo;
249 /* 0x04 */ u32 mYDivInfo;
250 /* 0x08 */ u32 mZDivInfo;
251 /* 0x0C vtable */
252public:
254 virtual ~cCcD_DivideInfo() {}
255 /* 80263358 */ void Set(u32, u32, u32);
256 /* 80263368 */ bool Chk(cCcD_DivideInfo const&) const;
257}; // Size = 0x10
258
260
261class cCcD_DivideArea : public cM3dGAab {
262private:
263 /* 0x1C */ bool mXDiffIsZero;
264 /* 0x20 */ f32 mScaledXDiff;
266 /* 0x28 */ bool mYDiffIsZero;
267 /* 0x2C */ f32 mScaledYDiff;
269 /* 0x34 */ bool mZDiffIsZero;
270 /* 0x38 */ f32 mScaledZDiff;
272
273public:
275 virtual ~cCcD_DivideArea() {}
276 /* 802633A8 */ void SetArea(cM3dGAab const&);
277 /* 802634D4 */ void CalcDivideInfo(cCcD_DivideInfo*, cM3dGAab const&, u32);
278 /* 802636A0 */ void CalcDivideInfoOverArea(cCcD_DivideInfo*, cM3dGAab const&);
279}; // Size = 0x40
280
281STATIC_ASSERT(0x40 == sizeof(cCcD_DivideArea));
282
284 /* 0x0 */ s32 mSPrm;
285};
286
288 /* 0x0 */ s32 mType;
290}; // Size: 0x8
291
293 /* 0x0 */ s32 mType;
294 /* 0x4 */ u8 mAtp;
296}; // Size: 0xC
297
300}; // Size: 0x4
301
306}; // Size: 0x18
307
309 /* 0x0 */ int mFlags;
311}; // Size: 0x1C
312
313class cCcD_GStts {
314public:
315 /* 800837B0 */ virtual ~cCcD_GStts() {}
316
317private:
318 /* 0x00 vtable */
319}; // Size = 0x4
320
322private:
323 /* 0x00 */ cXyz m_cc_move;
324 /* 0x0C */ fopAc_ac_c* mp_actor;
325 /* 0x10 */ fpc_ProcID m_apid;
326 /* 0x14 */ u8 m_weight;
327 /* 0x15 */ u8 field_0x15;
328 /* 0x16 */ u8 m_dmg;
329
330public:
332 /* 801410A4 vt[3] */ virtual ~cCcD_Stts() {}
333 /* 80263894 vt[4] */ virtual const cCcD_GStts* GetGStts() const;
334 /* 8026389C vt[5] */ virtual cCcD_GStts* GetGStts();
335 /* 802638A4 */ void Init(int, int, void*, fpc_ProcID);
336 /* 80263904 vt[6] */ virtual void Ct();
337 /* 80263934 */ void PlusCcMove(f32, f32, f32);
338 /* 8026395C */ void ClrCcMove();
339 /* 80263970 */ void PlusDmg(int);
340 /* 80263984 */ f32 GetWeightF() const;
341 /* 802649E8 vt[7] */ virtual void ClrAt() {}
342 /* 802649EC vt[8] */ virtual void ClrTg() { m_dmg = 0; }
343
344 u8 GetWeightUc() const { return m_weight; }
346 fopAc_ac_c* GetAc() { return mp_actor; }
347 fopAc_ac_c* GetActor() const { return mp_actor; }
348 void SetActor(void* ac) { mp_actor = (fopAc_ac_c*)ac; }
349 cXyz* GetCCMoveP() { return &m_cc_move; }
350 fpc_ProcID GetApid() const { return m_apid; }
351 u8 GetDmg() const { return m_dmg; }
352}; // Size = 0x1C
353
354STATIC_ASSERT(0x1C == sizeof(cCcD_Stts));
355
356class cCcD_Obj; // placeholder
357
359protected:
360 /* 0x00 */ u32 mSPrm;
361 /* 0x04 */ u32 mRPrm;
362 /* 0x08 */ cCcD_Obj* mHitObj;
363 /* 0x0C vtable */
364public:
371
373 /* 8008409C */ virtual ~cCcD_ObjCommonBase() {}
374 /* 802639B0 */ void ct();
375 void SetSPrm(u32 sprm) { mSPrm = sprm; }
376 s32 getSPrm() const { return mSPrm; }
377 void setRPrm(s32 rprm) { mRPrm = rprm; }
378 s32 getRPrm() const { return mRPrm; }
380 u32 MskSPrm(u32 mask) const { return mSPrm & mask; }
381 u32 MskRPrm(u32 mask) { return mRPrm & mask; }
384 u32 ChkSPrm(u32 prm) const { return MskSPrm(prm); }
385
386 void Set(cCcD_SrcObjCommonBase const& src) { mSPrm = src.mSPrm; }
387};
388
389STATIC_ASSERT(0x10 == sizeof(cCcD_ObjCommonBase));
390
391#pragma pack(1)
393public:
394 cCcD_ObjAt() { mType = 0; }
395 /* 80084040 */ virtual ~cCcD_ObjAt() {}
396 /* 8026483C */ void SetHit(cCcD_Obj*);
397 /* 8026484C */ void Set(cCcD_SrcObjAt const&);
398 /* 80264868 */ void ClrHit();
399 int GetType() const { return mType; }
400 u32 GetGrp() const { return MskSPrm(0x1E); }
401 bool ChkSet() const { return MskSPrm(1); }
402 u8 GetAtp() const { return mAtp; }
403 u32 MskType(u32 msk) const { return mType & msk; }
404 void SetType(u32 type) { mType = type; }
405 void SetAtp(int atp) { mAtp = atp; }
406 void ClrSet() { OffSPrmBit(1); }
407 u32 ChkHit() { return MskRPrm(1); }
408
409protected:
410 /* 0x10 */ int mType;
411 /* 0x14 */ u8 mAtp;
412 /* 0x15 */ u8 field_0x15[3];
413};
414#pragma pack()
415
416STATIC_ASSERT(0x18 == sizeof(cCcD_ObjAt));
417
419public:
420 cCcD_ObjTg() { ct(); }
421 /* 80083FE4 */ virtual ~cCcD_ObjTg() {}
422 /* 80264880 */ void Set(cCcD_SrcObjTg const&);
423 /* 80264894 */ void SetGrp(u32);
424 /* 802648B0 */ void ClrHit();
425 /* 802648C8 */ void SetHit(cCcD_Obj*);
426 int GetType() const { return mType; }
427 void SetType(u32 type) { mType = type; }
428 u32 GetGrp() const { return MskSPrm(0x1E); }
429 bool ChkSet() const { return MskSPrm(1); }
430 void ClrSet() { OffSPrmBit(1); }
431 u32 ChkHit() { return MskRPrm(1); }
432
433private:
434 /* 0x10 */ int mType;
435};
436
437STATIC_ASSERT(0x14 == sizeof(cCcD_ObjTg));
438
440public:
441 /* 80083F88 */ virtual ~cCcD_ObjCo() {}
442 /* 802648D8 */ void SetHit(cCcD_Obj*);
443 /* 802648E8 */ void ClrHit();
444 /* 80264900 */ void SetIGrp(u32);
445 /* 8026491C */ void SetVsGrp(u32);
446 u32 GetGrp() const { return MskSPrm(0x1E); }
447 bool ChkSet() const { return MskSPrm(1); }
448 u32 GetVsGrp() const { return MskSPrm(0x70); }
449 u32 GetIGrp() const { return MskSPrm(0xE); }
450 u32 ChkNoCrr() const { return MskSPrm(0x100); }
451 void OnNoCrrBit() { OnSPrmBit(0x100); }
452 u32 ChkSph3DCrr() const { return MskSPrm(0x80); }
453 void ClrSet() { OffSPrmBit(1); }
454 u32 ChkHit() { return MskRPrm(1); }
455
457};
458
459STATIC_ASSERT(0x10 == sizeof(cCcD_ObjCo));
460
462protected:
463 /* 0x000 */ cCcD_ObjAt mObjAt;
464 /* 0x018 */ cCcD_ObjTg mObjTg;
465 /* 0x02C */ cCcD_ObjCo mObjCo;
466 /* 0x03C vtable */
467public:
468 /* 80083EC8 */ virtual ~cCcD_ObjHitInf() {}
469 /* 802639C4 */ void Set(cCcD_SrcObjHitInf const&);
473 u32 GetTgGrp() const { return mObjTg.GetGrp(); }
474 u32 GetAtGrp() const { return mObjAt.GetGrp(); }
475 u32 GetCoGrp() const { return mObjCo.GetGrp(); }
476 int GetTgType() const { return mObjTg.GetType(); }
477 u32 GetAtType() const { return mObjAt.GetType(); }
478 bool ChkTgSet() const { return mObjTg.ChkSet(); }
479 bool ChkAtSet() const { return mObjAt.ChkSet(); }
480 bool ChkCoSet() const { return mObjCo.ChkSet(); }
481 u32 ChkCoSameActorHit() const { return mObjCo.MskSPrm(0x400); }
482 u32 GetCoVsGrp() const { return mObjCo.GetVsGrp(); }
483 u32 GetCoIGrp() const { return mObjCo.GetIGrp(); }
484 u8 GetAtAtp() const { return mObjAt.GetAtp(); }
485 u32 ChkAtNoTgHitInfSet() const { return mObjAt.MskSPrm(0x20); }
486 u32 ChkTgNoAtHitInfSet() const { return mObjTg.MskSPrm(0x20); }
487 u32 ChkCoNoCoHitInfSet() const { return mObjCo.MskSPrm(0x200); }
488 bool ChkTgNoSlingHitInfSet() const { return mObjTg.MskSPrm(0x40); }
492 u32 ChkAtType(u32 type) const { return mObjAt.MskType(type); }
493 u32 ChkCoNoCrr() const { return mObjCo.ChkNoCrr(); }
495 u32 ChkCoSph3DCrr() const { return mObjCo.ChkSph3DCrr(); }
500 void SetAtType(u32 type) { mObjAt.SetType(type); }
504 u32 MskTgSPrm(u32 mask) const { return mObjTg.MskSPrm(mask); }
505 void SetAtAtp(int atp) { mObjAt.SetAtp(atp); }
507 void SetTgType(u32 type) { mObjTg.SetType(type); }
521 void ClrAtHit() { mObjAt.ClrHit(); }
522 void ClrTgHit() { mObjTg.ClrHit(); }
523 void ClrCoHit() { mObjCo.ClrHit(); }
524 u32 ChkAtHit() { return mObjAt.ChkHit(); }
525 u32 ChkTgHit() { return mObjTg.ChkHit(); }
526 u32 ChkCoHit() { return mObjCo.ChkHit(); }
531
532}; // Size = 0x40
533
534STATIC_ASSERT(0x40 == sizeof(cCcD_ObjHitInf));
535
536class cCcD_GObjInf;
537
538class cCcD_Obj : public cCcD_ObjHitInf {
539public:
540 cCcD_Obj() { ct(); }
541 /* 80083DE0 */ virtual ~cCcD_Obj() {}
542 /* 800851A4 */ virtual cCcD_GObjInf const* GetGObjInf() const { return NULL; }
543 /* 800847C8 */ virtual cCcD_GObjInf* GetGObjInf() { return NULL; }
544 /* 80084BE8 */ virtual cCcD_ShapeAttr const* GetShapeAttr() const { return NULL; }
545 /* 80085130 */ virtual cCcD_ShapeAttr* GetShapeAttr() { return NULL; }
546 /* 80084BF0 */ virtual void Draw(_GXColor const&) {}
547 /* 80263A10 */ void ct();
548 /* 80263A1C */ void Set(cCcD_SrcObj const&);
550
551 cCcD_Stts* GetStts() { return mStts; }
555 int ChkBsRevHit() const { return mFlags & 2; }
556
557private:
558 /* 0x040 */ int mFlags;
559 /* 0x044 */ cCcD_Stts* mStts;
561}; // Size = 0x58
562
563STATIC_ASSERT(0x58 == sizeof(cCcD_Obj));
564
565class cCcD_GObjInf : public cCcD_Obj {
566public:
568 /* 80083CE8 */ virtual ~cCcD_GObjInf() {}
569 /* 80085138 */ virtual void ClrAtHit() { mObjAt.ClrHit(); }
570 /* 80085158 */ virtual void ClrTgHit() { mObjTg.ClrHit(); }
571 /* 8008517C */ virtual void ClrCoHit() { mObjCo.ClrHit(); }
572 /* 80084BE4 */ virtual cCcD_GObjInf const* GetGObjInf() const { return this; }
573 /* 800851A0 */ virtual cCcD_GObjInf* GetGObjInf() { return this; }
574};
575
576STATIC_ASSERT(0x58 == sizeof(cCcD_GObjInf));
577
578#endif /* C_CC_D_H */
cCcD_ObjAtType
Definition c_cc_d.h:29
@ AT_TYPE_ARROW
Definition c_cc_d.h:43
@ AT_TYPE_MIDNA_LOCK
Definition c_cc_d.h:55
@ AT_TYPE_800
Definition c_cc_d.h:41
@ AT_TYPE_CSTATUE_BOSS_SWING
Definition c_cc_d.h:49
@ AT_TYPE_1000000
Definition c_cc_d.h:53
@ AT_TYPE_HORSE
Definition c_cc_d.h:33
@ AT_TYPE_CSTATUE_SWING
Definition c_cc_d.h:40
@ AT_TYPE_SPINNER
Definition c_cc_d.h:48
@ AT_TYPE_1000
Definition c_cc_d.h:42
@ AT_TYPE_WOLF_ATTACK
Definition c_cc_d.h:58
@ AT_TYPE_8000
Definition c_cc_d.h:45
@ AT_TYPE_WOLF_CUT_TURN
Definition c_cc_d.h:57
@ AT_TYPE_0
Definition c_cc_d.h:30
@ AT_TYPE_1
Definition c_cc_d.h:31
@ AT_TYPE_NORMAL_SWORD
Definition c_cc_d.h:32
@ AT_TYPE_LANTERN_SWING
Definition c_cc_d.h:39
@ AT_TYPE_IRON_BALL
Definition c_cc_d.h:51
@ AT_TYPE_SHIELD_ATTACK
Definition c_cc_d.h:35
@ AT_TYPE_40
Definition c_cc_d.h:37
@ AT_TYPE_40000
Definition c_cc_d.h:47
@ AT_TYPE_HOOKSHOT
Definition c_cc_d.h:44
@ AT_TYPE_10000000
Definition c_cc_d.h:56
@ AT_TYPE_HEAVY_BOOTS
Definition c_cc_d.h:50
@ AT_TYPE_COPY_ROD
Definition c_cc_d.h:52
@ AT_TYPE_UNK
Definition c_cc_d.h:59
@ AT_TYPE_SLINGSHOT
Definition c_cc_d.h:38
@ AT_TYPE_THROW_OBJ
Definition c_cc_d.h:34
@ AT_TYPE_BOMB
Definition c_cc_d.h:36
@ AT_TYPE_BOOMERANG
Definition c_cc_d.h:46
@ AT_TYPE_MASTER_SWORD
Definition c_cc_d.h:54
STATIC_ASSERT(0x20==sizeof(cCcD_ShapeAttr))
CcG_Tg_HitMark
Definition c_cc_d.h:14
@ CcG_Tg_UNK_MARK_6
Definition c_cc_d.h:18
@ CcG_Tg_UNK_MARK_3
Definition c_cc_d.h:17
@ CcG_Tg_UNK_MARK_2
Definition c_cc_d.h:16
@ CcG_Tg_UNK_MARK_8
Definition c_cc_d.h:19
@ CcG_Tg_UNK_MARK_0
Definition c_cc_d.h:15
T cLib_calcTimer(T *value)
Definition c_lib.h:74
Definition c_cc_d.h:143
virtual bool CrossCo(cCcD_TriAttr const &, f32 *) const
Definition c_cc_d.h:168
virtual bool CrossAtTg(cCcD_ShapeAttr const &shape, cXyz *xyz) const
Definition c_cc_d.h:154
cCcD_CpsAttr()
Definition c_cc_d.h:145
virtual bool CrossAtTg(cCcD_AabAttr const &, cXyz *) const
Definition c_cc_d.h:158
virtual bool GetNVec(cXyz const &, cXyz *) const
Definition c_cc_d.cpp:446
virtual bool CrossAtTg(cCcD_PntAttr const &, cXyz *) const
Definition c_cc_d.h:157
void Set(const cXyz &pStart, const cXyz &pEnd, float radius)
Definition c_cc_d.h:147
virtual bool CrossCo(cCcD_ShapeAttr const &shape, f32 *f) const
Definition c_cc_d.h:164
virtual ~cCcD_CpsAttr()
Definition c_cc_d.h:151
virtual bool CrossCo(cCcD_CylAttr const &, f32 *) const
Definition c_cc_d.cpp:415
virtual bool CrossCo(cCcD_PntAttr const &, f32 *) const
Definition c_cc_d.h:167
virtual bool CrossAtTg(cCcD_SphAttr const &, cXyz *) const
Definition c_cc_d.cpp:383
void Set(const cCcD_SrcCpsAttr &pSrc)
Definition c_cc_d.h:146
virtual void CalcAabBox()
Definition c_cc_d.cpp:438
virtual bool CrossCo(cCcD_AabAttr const &, f32 *) const
Definition c_cc_d.h:169
Definition c_cc_d.h:214
virtual bool CrossCo(cCcD_ShapeAttr const &shape, f32 *f) const
Definition c_cc_d.h:230
virtual ~cCcD_CylAttr()
Definition c_cc_d.h:217
virtual const cXyz & GetCoCP() const
Definition c_cc_d.h:218
virtual bool CrossCo(cCcD_TriAttr const &, f32 *) const
Definition c_cc_d.h:234
virtual bool CrossCo(cCcD_AabAttr const &, f32 *) const
Definition c_cc_d.h:235
virtual bool CrossCo(cCcD_PntAttr const &, f32 *) const
Definition c_cc_d.h:233
virtual bool GetNVec(cXyz const &, cXyz *) const
Definition c_cc_d.cpp:566
virtual bool CrossAtTg(cCcD_ShapeAttr const &shape, cXyz *xyz) const
Definition c_cc_d.h:222
virtual void getShapeAccess(cCcD_ShapeAttr::Shape *) const
Definition c_cc_d.cpp:595
virtual bool CrossCo(cCcD_CylAttr const &, f32 *) const
Definition c_cc_d.cpp:522
virtual bool CrossAtTg(cCcD_AabAttr const &, cXyz *) const
Definition c_cc_d.h:226
virtual void CalcAabBox()
Definition c_cc_d.cpp:553
virtual bool CrossAtTg(cCcD_SphAttr const &, cXyz *) const
Definition c_cc_d.cpp:502
cCcD_CylAttr()
Definition c_cc_d.h:216
virtual bool CrossAtTg(cCcD_PntAttr const &, cXyz *) const
Definition c_cc_d.h:225
virtual cXyz & GetCoCP()
Definition c_cc_d.h:237
Definition c_cc_d.h:261
void CalcDivideInfoOverArea(cCcD_DivideInfo *, cM3dGAab const &)
Definition c_cc_d.cpp:128
bool mYDiffIsZero
Definition c_cc_d.h:266
virtual ~cCcD_DivideArea()
Definition c_cc_d.h:275
bool mZDiffIsZero
Definition c_cc_d.h:269
bool mXDiffIsZero
Definition c_cc_d.h:263
f32 mInvScaledYDiff
Definition c_cc_d.h:268
void SetArea(cM3dGAab const &)
Definition c_cc_d.cpp:36
f32 mInvScaledXDiff
Definition c_cc_d.h:265
f32 mScaledZDiff
Definition c_cc_d.h:270
f32 mInvScaledZDiff
Definition c_cc_d.h:271
void CalcDivideInfo(cCcD_DivideInfo *, cM3dGAab const &, u32)
Definition c_cc_d.cpp:68
f32 mScaledYDiff
Definition c_cc_d.h:267
cCcD_DivideArea()
Definition c_cc_d.h:274
f32 mScaledXDiff
Definition c_cc_d.h:264
Definition c_cc_d.h:246
u32 mZDivInfo
Definition c_cc_d.h:250
virtual ~cCcD_DivideInfo()
Definition c_cc_d.h:254
u32 mYDivInfo
Definition c_cc_d.h:249
cCcD_DivideInfo()
Definition c_cc_d.h:253
u32 mXDivInfo
Definition c_cc_d.h:248
bool Chk(cCcD_DivideInfo const &) const
Definition c_cc_d.cpp:25
void Set(u32, u32, u32)
Definition c_cc_d.cpp:17
Definition c_cc_d.h:565
virtual void ClrCoHit()
Definition c_cc_d.h:571
cCcD_GObjInf()
Definition c_cc_d.h:567
virtual cCcD_GObjInf const * GetGObjInf() const
Definition c_cc_d.h:572
virtual cCcD_GObjInf * GetGObjInf()
Definition c_cc_d.h:573
virtual void ClrTgHit()
Definition c_cc_d.h:570
virtual ~cCcD_GObjInf()
Definition c_cc_d.h:568
virtual void ClrAtHit()
Definition c_cc_d.h:569
Definition c_cc_d.h:392
void ClrSet()
Definition c_cc_d.h:406
u32 GetGrp() const
Definition c_cc_d.h:400
u8 mAtp
Definition c_cc_d.h:411
int GetType() const
Definition c_cc_d.h:399
void SetHit(cCcD_Obj *)
Definition c_cc_d.cpp:727
virtual ~cCcD_ObjAt()
Definition c_cc_d.h:395
int mType
Definition c_cc_d.h:410
u8 GetAtp() const
Definition c_cc_d.h:402
void Set(cCcD_SrcObjAt const &)
Definition c_cc_d.cpp:734
void SetType(u32 type)
Definition c_cc_d.h:404
void SetAtp(int atp)
Definition c_cc_d.h:405
u32 MskType(u32 msk) const
Definition c_cc_d.h:403
u8 field_0x15[3]
Definition c_cc_d.h:412
cCcD_ObjAt()
Definition c_cc_d.h:394
bool ChkSet() const
Definition c_cc_d.h:401
void ClrHit()
Definition c_cc_d.cpp:741
u32 ChkHit()
Definition c_cc_d.h:407
Definition c_cc_d.h:439
void ClrHit()
Definition c_cc_d.cpp:778
u32 GetGrp() const
Definition c_cc_d.h:446
void Set(cCcD_SrcObjCo const &src)
Definition c_cc_d.h:456
u32 ChkNoCrr() const
Definition c_cc_d.h:450
u32 GetIGrp() const
Definition c_cc_d.h:449
void ClrSet()
Definition c_cc_d.h:453
virtual ~cCcD_ObjCo()
Definition c_cc_d.h:441
void OnNoCrrBit()
Definition c_cc_d.h:451
u32 GetVsGrp() const
Definition c_cc_d.h:448
void SetHit(cCcD_Obj *)
Definition c_cc_d.cpp:772
u32 ChkSph3DCrr() const
Definition c_cc_d.h:452
bool ChkSet() const
Definition c_cc_d.h:447
void SetVsGrp(u32)
Definition c_cc_d.cpp:790
void SetIGrp(u32)
Definition c_cc_d.cpp:784
u32 ChkHit()
Definition c_cc_d.h:454
Definition c_cc_d.h:358
u32 mRPrm
Definition c_cc_d.h:361
s32 getRPrm() const
Definition c_cc_d.h:378
void ct()
Definition c_cc_d.cpp:257
u32 mSPrm
Definition c_cc_d.h:360
u32 MskSPrm(u32 mask) const
Definition c_cc_d.h:380
void Set(cCcD_SrcObjCommonBase const &src)
Definition c_cc_d.h:386
cCcD_ObjCommonBase()
Definition c_cc_d.h:372
cCcD_Obj * mHitObj
Definition c_cc_d.h:362
cCcD_Obj * GetHitObj()
Definition c_cc_d.h:379
s32 getSPrm() const
Definition c_cc_d.h:376
u32 ChkSPrm(u32 prm) const
Definition c_cc_d.h:384
u32 MskRPrm(u32 mask)
Definition c_cc_d.h:381
void OffSPrmBit(u32 flag)
Definition c_cc_d.h:383
virtual ~cCcD_ObjCommonBase()
Definition c_cc_d.h:373
void SetSPrm(u32 sprm)
Definition c_cc_d.h:375
CoSPrm_e
Definition c_cc_d.h:365
@ CO_SPRM_NO_CO_HIT_INF_SET
Definition c_cc_d.h:368
@ CO_SPRM_NO_CRR
Definition c_cc_d.h:367
@ CO_SPRM_SET
Definition c_cc_d.h:366
@ CO_SPRM_SAME_ACTOR_HIT
Definition c_cc_d.h:369
void OnSPrmBit(u32 flag)
Definition c_cc_d.h:382
void setRPrm(s32 rprm)
Definition c_cc_d.h:377
Definition c_cc_d.h:461
u32 ChkAtType(u32 type) const
Definition c_cc_d.h:492
u32 ChkCoNoCoHitInfSet() const
Definition c_cc_d.h:487
void OnTgSPrmBit(u32 flag)
Definition c_cc_d.h:508
void OnAtSetBit()
Definition c_cc_d.h:501
u32 GetAtGrp() const
Definition c_cc_d.h:474
void ClrAtHit()
Definition c_cc_d.h:521
u32 ChkAtSPrm(u32 prm)
Definition c_cc_d.h:530
void OffAtSPrmBit(u32 flag)
Definition c_cc_d.h:497
bool ChkTgNoSlingHitInfSet() const
Definition c_cc_d.h:488
cCcD_Obj * GetTgHitObj()
Definition c_cc_d.h:528
void ClrCoHit()
Definition c_cc_d.h:523
void OnAtNoTgHitInfSet()
Definition c_cc_d.h:502
u32 GetCoGrp() const
Definition c_cc_d.h:475
u32 ChkCoSameActorHit() const
Definition c_cc_d.h:481
void SetAtAtp(int atp)
Definition c_cc_d.h:505
void OnAtVsPlayerBit()
Definition c_cc_d.h:514
void OnAtSPrmBit(u32 flag)
Definition c_cc_d.h:496
u32 GetCoVsGrp() const
Definition c_cc_d.h:482
void OffTgSPrmBit(u32 flag)
Definition c_cc_d.h:498
void SetCoVsGrp(u32 grp)
Definition c_cc_d.h:516
void SetCoSPrm(u32 prm)
Definition c_cc_d.h:520
u32 GetTgGrp() const
Definition c_cc_d.h:473
int GetTgType() const
Definition c_cc_d.h:476
bool ChkAtSet() const
Definition c_cc_d.h:479
void SetTgSPrm(u32 prm)
Definition c_cc_d.h:519
void OffAtNoTgHitInfSet()
Definition c_cc_d.h:503
void SetCoIGrp(u32 grp)
Definition c_cc_d.h:517
void OnTgSetBit()
Definition c_cc_d.h:510
u32 ChkAtNoTgHitInfSet() const
Definition c_cc_d.h:485
void Set(cCcD_SrcObjHitInf const &)
Definition c_cc_d.cpp:265
u32 GetAtType() const
Definition c_cc_d.h:477
u32 MskTgSPrm(u32 mask) const
Definition c_cc_d.h:504
virtual ~cCcD_ObjHitInf()
Definition c_cc_d.h:468
void SetTgType(u32 type)
Definition c_cc_d.h:507
void OnCoSPrmBit(u32 flag)
Definition c_cc_d.h:515
u32 ChkAtHit()
Definition c_cc_d.h:524
cCcD_Obj * GetCoHitObj()
Definition c_cc_d.h:529
u32 ChkCoSph3DCrr() const
Definition c_cc_d.h:495
void ClrTgHit()
Definition c_cc_d.h:522
void SetAtHit(cCcD_Obj *obj)
Definition c_cc_d.h:489
u32 ChkCoHit()
Definition c_cc_d.h:526
cCcD_Obj * GetAtHitObj()
Definition c_cc_d.h:527
void OffTgSetBit()
Definition c_cc_d.h:511
void SetAtType(u32 type)
Definition c_cc_d.h:500
void SetTgHit(cCcD_Obj *obj)
Definition c_cc_d.h:490
void SetCoHit(cCcD_Obj *obj)
Definition c_cc_d.h:491
void OffAtSetBit()
Definition c_cc_d.h:509
void OffAtVsPlayerBit()
Definition c_cc_d.h:513
void OffCoSetBit()
Definition c_cc_d.h:506
void OffCoSPrmBit(u32 flag)
Definition c_cc_d.h:499
u32 GetCoIGrp() const
Definition c_cc_d.h:483
u8 GetAtAtp() const
Definition c_cc_d.h:484
u32 ChkTgHit()
Definition c_cc_d.h:525
u32 ChkCoNoCrr() const
Definition c_cc_d.h:493
cCcD_ObjAt mObjAt
Definition c_cc_d.h:463
void OnCoSetBit()
Definition c_cc_d.h:512
cCcD_ObjCo mObjCo
Definition c_cc_d.h:465
cCcD_ObjTg & GetObjTg()
Definition c_cc_d.h:471
cCcD_ObjAt & GetObjAt()
Definition c_cc_d.h:470
void OnCoNoCrrBit()
Definition c_cc_d.h:494
cCcD_ObjTg mObjTg
Definition c_cc_d.h:464
bool ChkCoSet() const
Definition c_cc_d.h:480
bool ChkTgSet() const
Definition c_cc_d.h:478
u32 ChkTgNoAtHitInfSet() const
Definition c_cc_d.h:486
void SetAtSPrm(u32 prm)
Definition c_cc_d.h:518
cCcD_ObjCo & GetObjCo()
Definition c_cc_d.h:472
Definition c_cc_d.h:418
void SetHit(cCcD_Obj *)
Definition c_cc_d.cpp:766
u32 ChkHit()
Definition c_cc_d.h:431
void ClrHit()
Definition c_cc_d.cpp:760
cCcD_ObjTg()
Definition c_cc_d.h:420
u32 GetGrp() const
Definition c_cc_d.h:428
int GetType() const
Definition c_cc_d.h:426
void SetType(u32 type)
Definition c_cc_d.h:427
bool ChkSet() const
Definition c_cc_d.h:429
int mType
Definition c_cc_d.h:434
void ClrSet()
Definition c_cc_d.h:430
void Set(cCcD_SrcObjTg const &)
Definition c_cc_d.cpp:748
void SetGrp(u32)
Definition c_cc_d.cpp:754
virtual ~cCcD_ObjTg()
Definition c_cc_d.h:421
Definition c_cc_d.h:62
virtual bool CrossAtTg(cCcD_CpsAttr const &, cXyz *) const =0
virtual const cXyz & GetCoCP() const
Definition c_cc_d.h:95
cM3dGAab mAab
Definition c_cc_d.h:64
virtual bool CrossAtTg(cCcD_TriAttr const &, cXyz *) const =0
virtual void CalcAabBox()=0
virtual bool CrossCo(cCcD_CpsAttr const &, f32 *) const =0
cM3dGAab const & GetWorkAab() const
Definition c_cc_d.h:102
virtual bool CrossCo(cCcD_ShapeAttr const &, f32 *) const
Definition c_cc_d.h:88
cCcD_ShapeAttr()
Definition c_cc_d.h:77
virtual bool CrossAtTg(cCcD_SphAttr const &, cXyz *) const =0
virtual bool CrossCo(cCcD_SphAttr const &, f32 *) const =0
virtual bool CrossAtTg(cCcD_PntAttr const &, cXyz *) const =0
virtual ~cCcD_ShapeAttr()
Definition c_cc_d.h:78
virtual bool CrossAtTg(cCcD_AabAttr const &, cXyz *) const =0
static cXyz m_virtual_center
Definition c_cc_d.h:104
virtual bool CrossCo(cCcD_AabAttr const &, f32 *) const =0
virtual cXyz & GetCoCP()
Definition c_cc_d.h:96
virtual bool CrossAtTg(cCcD_ShapeAttr const &, cXyz *) const
Definition c_cc_d.h:79
virtual bool CrossCo(cCcD_PntAttr const &, f32 *) const =0
virtual void getShapeAccess(cCcD_ShapeAttr::Shape *) const
Definition c_cc_d.cpp:293
virtual bool CrossCo(cCcD_CylAttr const &, f32 *) const =0
virtual bool GetNVec(cXyz const &, cXyz *) const =0
cM3dGAab & GetWorkAab()
Definition c_cc_d.h:101
virtual bool CrossCo(cCcD_TriAttr const &, f32 *) const =0
virtual bool CrossAtTg(cCcD_CylAttr const &, cXyz *) const =0
Definition c_cc_d.h:180
cCcD_SphAttr()
Definition c_cc_d.h:182
virtual ~cCcD_SphAttr()
Definition c_cc_d.h:185
virtual bool CrossAtTg(cCcD_ShapeAttr const &shape, cXyz *xyz) const
Definition c_cc_d.h:188
virtual void getShapeAccess(cCcD_ShapeAttr::Shape *) const
Definition c_cc_d.cpp:717
virtual bool CrossAtTg(cCcD_AabAttr const &, cXyz *) const
Definition c_cc_d.h:192
virtual bool CrossAtTg(cCcD_PntAttr const &, cXyz *) const
Definition c_cc_d.h:191
virtual bool GetNVec(cXyz const &, cXyz *) const
Definition c_cc_d.cpp:699
virtual const cXyz & GetCoCP() const
Definition c_cc_d.h:186
virtual bool CrossCo(cCcD_AabAttr const &, f32 *) const
Definition c_cc_d.h:198
virtual void CalcAabBox()
Definition c_cc_d.cpp:681
void Set(const cCcD_SrcSphAttr &src)
Definition c_cc_d.h:183
virtual bool CrossCo(cCcD_ShapeAttr const &shape, f32 *f) const
Definition c_cc_d.h:193
virtual bool CrossCo(cCcD_PntAttr const &, f32 *) const
Definition c_cc_d.h:196
virtual cXyz & GetCoCP()
Definition c_cc_d.h:187
virtual bool CrossCo(cCcD_TriAttr const &, f32 *) const
Definition c_cc_d.h:197
Definition c_cc_d.h:321
virtual void ClrTg()
Definition c_cc_d.h:342
fopAc_ac_c * GetAc()
Definition c_cc_d.h:346
cCcD_Stts()
Definition c_cc_d.h:331
virtual ~cCcD_Stts()
Definition c_cc_d.h:332
u8 field_0x15
Definition c_cc_d.h:327
void PlusCcMove(f32, f32, f32)
Definition c_cc_d.cpp:222
void SetWeight(u8 weight)
Definition c_cc_d.h:345
virtual const cCcD_GStts * GetGStts() const
Definition c_cc_d.cpp:191
void ClrCcMove()
Definition c_cc_d.cpp:237
void Init(int, int, void *, fpc_ProcID)
Definition c_cc_d.cpp:201
void PlusDmg(int)
Definition c_cc_d.cpp:244
cXyz m_cc_move
Definition c_cc_d.h:323
u8 GetWeightUc() const
Definition c_cc_d.h:344
fpc_ProcID m_apid
Definition c_cc_d.h:325
fpc_ProcID GetApid() const
Definition c_cc_d.h:350
cXyz * GetCCMoveP()
Definition c_cc_d.h:349
u8 m_weight
Definition c_cc_d.h:326
fopAc_ac_c * GetActor() const
Definition c_cc_d.h:347
f32 GetWeightF() const
Definition c_cc_d.cpp:252
u8 GetDmg() const
Definition c_cc_d.h:351
virtual void Ct()
Definition c_cc_d.cpp:210
u8 m_dmg
Definition c_cc_d.h:328
virtual void ClrAt()
Definition c_cc_d.h:341
void SetActor(void *ac)
Definition c_cc_d.h:348
fopAc_ac_c * mp_actor
Definition c_cc_d.h:324
Definition c_cc_d.h:113
virtual void CalcAabBox()
Definition c_cc_d.cpp:343
virtual bool CrossAtTg(cCcD_PntAttr const &, cXyz *) const
Definition c_cc_d.h:123
cCcD_TriAttr()
Definition c_cc_d.h:136
virtual ~cCcD_TriAttr()
Definition c_cc_d.h:135
virtual bool GetNVec(cXyz const &, cXyz *) const
Definition c_cc_d.cpp:351
virtual bool CrossCo(cCcD_TriAttr const &, f32 *) const
Definition c_cc_d.h:131
virtual bool CrossAtTg(cCcD_ShapeAttr const &shape, cXyz *xyz) const
Definition c_cc_d.h:120
virtual bool CrossCo(cCcD_PntAttr const &, f32 *) const
Definition c_cc_d.h:129
virtual bool CrossCo(cCcD_CpsAttr const &, f32 *) const
Definition c_cc_d.h:130
virtual bool CrossCo(cCcD_CylAttr const &, f32 *) const
Definition c_cc_d.h:133
virtual bool CrossCo(cCcD_ShapeAttr const &shape, f32 *f) const
Definition c_cc_d.h:126
virtual bool CrossAtTg(cCcD_AabAttr const &, cXyz *) const
Definition c_cc_d.h:124
virtual bool CrossCo(cCcD_AabAttr const &, f32 *) const
Definition c_cc_d.h:132
virtual bool CrossAtTg(cCcD_CpsAttr const &, cXyz *) const
Definition c_cc_d.cpp:304
virtual bool CrossCo(cCcD_SphAttr const &, f32 *) const
Definition c_cc_d.h:134
Definition c_m3d_g_cps.h:13
void Set(const cXyz &, const cXyz &, f32)
Definition c_m3d_g_cps.cpp:15
Definition c_m3d_g_tri.h:14
static volatile BOOL flag
Definition dspproc.cpp:20
unsigned int fpc_ProcID
Definition f_pc_base.h:10
Definition d_a_ep.cpp:68
Definition d_a_npc_fguard.cpp:147
virtual ~cCcD_GStts()
Definition c_cc_d.h:315
Definition d_a_npc_fguard.cpp:141
void SetStts(cCcD_Stts *stts)
Definition c_cc_d.h:552
int mFlags
Definition c_cc_d.h:558
cCcD_Obj()
Definition c_cc_d.h:540
int ChkBsRevHit() const
Definition c_cc_d.h:555
virtual ~cCcD_Obj()
Definition c_cc_d.h:541
void Set(cCcD_SrcObj const &)
Definition c_cc_d.cpp:277
virtual void Draw(_GXColor const &)
Definition c_cc_d.h:546
cCcD_Stts * mStts
Definition c_cc_d.h:559
cCcD_DivideInfo & GetDivideInfo()
Definition c_cc_d.h:553
virtual cCcD_ShapeAttr * GetShapeAttr()
Definition c_cc_d.h:545
virtual cCcD_ShapeAttr const * GetShapeAttr() const
Definition c_cc_d.h:544
cCcD_DivideInfo * GetPDivideInfo()
Definition c_cc_d.h:554
cCcD_DivideInfo mDivideInfo
Definition c_cc_d.h:560
virtual cCcD_GObjInf const * GetGObjInf() const
Definition c_cc_d.h:542
fopAc_ac_c * GetAc()
virtual cCcD_GObjInf * GetGObjInf()
Definition c_cc_d.h:543
cCcD_Stts * GetStts()
Definition c_cc_d.h:551
void ct()
Definition c_cc_d.cpp:272
Definition c_cc_d.h:67
f32 _4
Definition c_cc_d.h:71
f32 _8
Definition c_cc_d.h:72
~Shape()
Definition d_camera.cpp:3431
f32 _14
Definition c_cc_d.h:75
int _0
Definition c_cc_d.h:70
f32 _10
Definition c_cc_d.h:74
f32 _C
Definition c_cc_d.h:73
Definition c_cc_d.h:139
cM3dGCpsS mCps
Definition c_cc_d.h:140
Definition c_cc_d.h:292
s32 mType
Definition c_cc_d.h:293
u8 mAtp
Definition c_cc_d.h:294
cCcD_SrcObjCommonBase mBase
Definition c_cc_d.h:295
Definition c_cc_d.h:298
cCcD_SrcObjCommonBase mBase
Definition c_cc_d.h:299
Definition c_cc_d.h:283
s32 mSPrm
Definition c_cc_d.h:284
Definition c_cc_d.h:302
cCcD_SrcObjTg mObjTg
Definition c_cc_d.h:304
cCcD_SrcObjAt mObjAt
Definition c_cc_d.h:303
cCcD_SrcObjCo mObjCo
Definition c_cc_d.h:305
Definition c_cc_d.h:287
cCcD_SrcObjCommonBase mBase
Definition c_cc_d.h:289
s32 mType
Definition c_cc_d.h:288
Definition c_cc_d.h:308
int mFlags
Definition c_cc_d.h:309
cCcD_SrcObjHitInf mSrcObjHitInf
Definition c_cc_d.h:310
Definition c_cc_d.h:176
cM3dGSphS mSph
Definition c_cc_d.h:177
Definition c_cc_d.h:109
cM3dGTriS mTri
Definition c_cc_d.h:110
Definition d_a_npc_fguard.cpp:137
Definition c_m3d_g_cps.h:7
Definition d_a_npc_fguard.cpp:126
cXyz mCenter
Definition c_m3d_g_cyl.h:18
Definition c_m3d_g_sph.h:10
Definition d_a_tag_allmato.cpp:94
cXyz mCenter
Definition c_m3d_g_sph.h:18
void Set(cXyz const &, f32)
Definition c_m3d_g_sph.cpp:15
Definition c_m3d_g_tri.h:8
Definition d_a_hozelda.cpp:20
Definition d_a_ep.cpp:19
unsigned long u32
Definition types.h:10
float f32
Definition types.h:22
signed long s32
Definition types.h:6
unsigned char u8
Definition types.h:8