Twilight Princess
Decompilation of The Legend of Zelda: Twilight Princess
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
m_Do_ext.h
Go to the documentation of this file.
1#ifndef M_DO_M_DO_EXT_H
2#define M_DO_M_DO_EXT_H
3
7#include "m_Do/m_Do_audio.h"
8#include "m_Do/m_Do_mtx.h"
9
10class JKRArchive;
11class JKRAssertHeap;
12class JKRExpHeap;
13class JKRHeap;
14class JKRSolidHeap;
15struct ResTIMG;
16class Z2Creature;
17
18class mDoExt_baseAnm {
19public:
21 /* 8000D320 */ int initPlay(s16 i_frameMax, int i_attribute, f32 i_rate, s16 i_startF,
22 s16 i_endF);
23 /* 8000D428 */ int play();
24
27 void setPlaySpeed(f32 speed) { mFrameCtrl.setRate(speed); }
31 void setEndFrame(f32 frame) { mFrameCtrl.setEnd(frame); }
32 void setFrame(f32 frame) { mFrameCtrl.setFrame(frame); }
33 void setPlayMode(int i_mode) { mFrameCtrl.setAttribute(i_mode); }
34 void setLoopFrame(f32 i_frame) { mFrameCtrl.setLoop(i_frame); }
35 bool isStop() { return mFrameCtrl.checkState(1) || mFrameCtrl.getRate() == 0.0f; }
36 bool isLoop() { return mFrameCtrl.checkState(2); }
37 void reset() { mFrameCtrl.reset(); }
38 BOOL checkFrame(f32 frame) { return mFrameCtrl.checkPass(frame); }
39
40private:
42}; // Size: 0x14
43
45public:
46 mDoExt_transAnmBas(void* bas) { mBas = bas; }
48
49 void* getBas() { return mBas; }
50
51private:
52 /* 0x28 */ void* mBas;
53};
54
55class mDoExt_btkAnm : public mDoExt_baseAnm {
56public:
58 /* 8000D63C */ int init(J3DMaterialTable* i_matTable, J3DAnmTextureSRTKey* i_btk, int i_anmPlay,
59 int i_attribute, f32 i_rate, s16 i_start, s16 param_6);
60 /* 8000D6D8 */ void entry(J3DMaterialTable* i_matTable, f32 i_frame);
61
62 void entry(J3DModelData* i_modelData) { entry(i_modelData, getFrame()); }
63 void entry(J3DModelData* i_modelData, f32 i_frame) {
64 entry(&i_modelData->getMaterialTable(), i_frame);
65 }
66 int init(J3DModelData* i_modelData, J3DAnmTextureSRTKey* i_btk, int i_anmPlay, int i_attribute,
67 f32 i_rate, s16 i_start, s16 param_6) {
68 return init(&i_modelData->getMaterialTable(), i_btk, i_anmPlay, i_attribute, i_rate,
69 i_start, param_6);
70 }
71
72 int remove(J3DModelData* i_modelData) { return i_modelData->removeTexMtxAnimator(mpAnm); }
74 void entryFrame(f32 frame) { mpAnm->setFrame(frame); }
75
76 J3DAnmTextureSRTKey* getBtkAnm() const { return mpAnm; }
77
78private:
80}; // Size: 0x18
81
83
85public:
87 /* 8000D70C */ int init(J3DMaterialTable* i_matTable, J3DAnmTevRegKey* i_brk, int i_anmPlay,
88 int i_attribute, f32 i_rate, s16 i_start, s16 param_6);
89 /* 8000D7A8 */ void entry(J3DMaterialTable* i_matTable, f32 i_frame);
90
91 void entry(J3DModelData* i_modelData) { entry(i_modelData, getFrame()); }
92 void entry(J3DModelData* i_modelData, f32 i_frame) {
93 entry(&i_modelData->getMaterialTable(), i_frame);
94 }
95
96 int init(J3DModelData* i_modelData, J3DAnmTevRegKey* i_brk, int i_anmPlay, int i_attribute,
97 f32 i_rate, s16 i_start, s16 param_6) {
98 return init(&i_modelData->getMaterialTable(), i_brk, i_anmPlay, i_attribute, i_rate,
99 i_start, param_6);
100 }
101
102 int remove(J3DModelData* i_modelData) { return i_modelData->removeTevRegAnimator(mpAnm); }
104 void entryFrame(f32 frame) { mpAnm->setFrame(frame); }
105
106 J3DAnmTevRegKey* getBrkAnm() const { return mpAnm; }
107
108private:
110}; // Size: 0x18
111
113
115public:
117 /* 8000D47C */ int init(J3DMaterialTable* i_matTable, J3DAnmColor* i_bpk, int i_anmPlay,
118 int i_attribute, f32 i_rate, s16 i_start, s16 param_6);
119 /* 8000D518 */ void entry(J3DMaterialTable* i_matTable, f32 i_frame);
120
121 void entry(J3DModelData* i_modelData) { entry(i_modelData, getFrame()); }
122 void entry(J3DModelData* i_modelData, f32 i_frame) {
123 entry(&i_modelData->getMaterialTable(), i_frame);
124 }
125
126 int init(J3DModelData* i_modelData, J3DAnmColor* i_bpk, int i_anmPlay, int i_attribute,
127 f32 i_rate, s16 i_start, s16 param_6) {
128 return init(&i_modelData->getMaterialTable(), i_bpk, i_anmPlay, i_attribute, i_rate,
129 i_start, param_6);
130 }
131
132 int remove(J3DModelData* i_modelData) { return i_modelData->removeMatColorAnimator(mpAnm); }
134
135private:
136 /* 0x14 */ J3DAnmColor* mpAnm;
137}; // Size: 0x18
138
140
141class mDoExt_bckAnm : public mDoExt_baseAnm {
142public:
144 /* 8000D7DC */ int init(J3DAnmTransform* i_bck, int i_play, int i_attr, f32 i_rate,
145 s16 i_startF, s16 i_endF, bool i_modify);
146 /* 8000D990 */ void changeBckOnly(J3DAnmTransform* i_bck);
147 /* 8000D9CC */ void entry(J3DModelData* i_modelData, f32 i_frame);
148 /* 8000D9E8 */ void entryJoint(J3DModelData* i_modelData, u16 i_jntNo, f32 i_frame);
149
150 void entry(J3DModelData* i_modelData) { entry(i_modelData, getFrame()); }
151
152 void remove(J3DModelData* i_modelData) {
153 i_modelData->getJointNodePointer(0)->setMtxCalc(NULL);
154 }
155
157
158 void removeJoint(J3DModelData* i_modelData, u16 i_idx) {
159 J3DJoint* mpJnt = i_modelData->getJointNodePointer(i_idx);
160 mpJnt->setMtxCalc(0);
161 }
162
163private:
166}; // Size: 0x1C
167
169
170class mDoExt_btpAnm : public mDoExt_baseAnm {
171public:
172 mDoExt_btpAnm() { mpAnm = NULL; }
173 /* 8000D54C */ int init(J3DMaterialTable* i_matTable, J3DAnmTexPattern* i_btk, int i_anmPlay,
174 int i_attribute, f32 i_rate, s16 i_start, s16 param_6);
175 /* 8000D5E8 */ void entry(J3DMaterialTable* i_matTable, s16 i_frame);
176
177 void entry(J3DModelData* i_modelData) { entry(i_modelData, getFrame()); }
178 void entry(J3DModelData* i_modelData, s16 i_frame) {
179 entry(&i_modelData->getMaterialTable(), i_frame);
180 }
181
182 int init(J3DModelData* i_modelData, J3DAnmTexPattern* i_btk, int i_anmPlay, int i_attribute,
183 f32 i_rate, s16 i_start, s16 param_6) {
184 return init(&i_modelData->getMaterialTable(), i_btk, i_anmPlay, i_attribute, i_rate,
185 i_start, param_6);
186 }
187
188 int remove(J3DModelData* i_modelData) { return i_modelData->removeTexNoAnimator(mpAnm); }
189
190 J3DAnmTexPattern* getBtpAnm() const { return mpAnm; }
191
192private:
194};
195
197public:
199 mpAnm = NULL;
200 }
201
202 /* 8000DA08 */ int init(J3DDeformData* i_deformData, J3DAnmCluster* i_blk, int i_anmPlay,
203 int i_attribute, f32 i_rate, s16 i_start, s16 param_6);
204
206
207private:
208 /* 0x14 */ J3DAnmCluster* mpAnm;
209};
210
211class J3DTransformInfo;
212
214public:
217 mRatio = 0.0f;
218 mAnmTransform = NULL;
219 }
220
221 void setRatio(f32 ratio) { mRatio = ratio; }
222 f32 getRatio() { return mRatio; }
225
226private:
227 /* 0x0 */ f32 mRatio;
229}; // Size: 0x8
230
232public:
233 /* 8000E654 */ mDoExt_invJntPacket() {}
234
235 /* 80012220 */ virtual void draw();
236 /* 8000E5F8 */ virtual ~mDoExt_invJntPacket() {}
237
238 void setJoint(J3DModel* i_model, u16 param_1, u8 param_2) {
239 field_0x10 = i_model;
240 field_0x14 = param_1;
241 field_0x16 = param_2;
242 }
243
244private:
245 /* 0x10 */ J3DModel* field_0x10;
246 /* 0x14 */ u16 field_0x14;
247 /* 0x16 */ u8 field_0x16;
248}; // Size: 0x18
249
251public:
252 /* 8000E53C */ int create(J3DModel* i_model, u8 param_1);
253 /* 8000E6C8 */ void entryJoint(cXyz*);
254 /* 8000E7C0 */ void entryDL(cXyz*);
255
256 /* 0x0 */ J3DModel* mModel;
258};
259
261public:
263};
264
266public:
267 virtual int execute(u16, J3DTransformInfo*) = 0;
268};
269
271public:
272 virtual void execute(u16) = 0;
273};
274
275class mDoExt_morf_c
276 : public J3DMtxCalcNoAnm<J3DMtxCalcCalcTransformMaya, J3DMtxCalcJ3DSysInitMaya> {
277public:
278 /* 8000F950 */ mDoExt_morf_c();
279 /* 8000FB7C */ void setMorf(f32 i_morf);
280 /* 8000FBC0 */ void frameUpdate();
281
282 /* 8000FAE8 */ virtual ~mDoExt_morf_c();
283
285 void changeAnm(J3DAnmTransform* anm) { mpAnm = anm; }
288 BOOL isStop() { return mFrameCtrl.checkState(1) || mFrameCtrl.getRate() == 0.0f; }
289 bool isLoop() { return mFrameCtrl.checkState(2); }
291 void setStartFrame(f32 frame) { mFrameCtrl.setStart(frame); }
293 void setEndFrame(f32 frame) { mFrameCtrl.setEnd(frame); }
295 void setLoopFrame(f32 frame) { mFrameCtrl.setLoop(frame); }
297 void setPlaySpeed(f32 speed) { mFrameCtrl.setRate(speed); }
299 void setFrame(f32 frame) { mFrameCtrl.setFrame((s16)frame); }
300 void setFrameF(f32 frame) { mFrameCtrl.setFrame(frame); }
301 BOOL checkFrame(f32 frame) { return mFrameCtrl.checkPass(frame); }
303
304 /* 0x04 */ J3DModel* mpModel;
308 /* 0x24 */ Quaternion* mpQuat;
309 /* 0x28 */ f32 mCurMorf;
310 /* 0x2C */ f32 mPrevMorf;
311 /* 0x30 */ f32 mMorfStep;
312 /* 0x34 */ f32 field_0x34;
313};
314
315class mDoExt_McaMorfSO : public mDoExt_morf_c {
316public:
319 int, Z2Creature*, u32, u32);
321 J3DAnmTransform*, int, f32, int, int, Z2Creature*, u32, u32);
322 /* 80010E70 */ void setAnm(J3DAnmTransform* i_anm, int i_attr, f32 i_morf, f32 i_rate,
323 f32 i_start, f32 i_end);
324 /* 800110B0 */ int play(u32, s8);
325 /* 80011154 */ void updateDL();
326 /* 800111C0 */ void entryDL();
327 /* 800111EC */ void modelCalc();
328 /* 80011250 */ void getTransform(u16, J3DTransformInfo*);
329 /* 80011310 */ void stopZelAnime();
330
331 /* 80010888 */ virtual ~mDoExt_McaMorfSO();
332 /* 80010B68 */ virtual void calc();
333
334 J3DModel* getModel() { return mpModel; }
335 void offMorfNone() { mMorfNone = false; }
336 void onMorfNone() { mMorfNone = true; }
337 inline void setTranslateScale(cXyz& i_scale) { mTranslateScale = i_scale; }
340 void offTranslate() { mTranslate = true; }
341 void setTranslateScale(const cXyz& scale) { mTranslateScale = scale; }
342
343private:
347 /* 0x4C */ Z2Creature* mpSound;
348 /* 0x50 */ void* mpBas;
349 /* 0x54 */ bool mTranslate;
350 /* 0x55 */ bool mMorfNone;
351};
352
354public:
357 int, void*, u32, u32);
359 J3DAnmTransform*, int, f32, int, int, int, void*, u32, u32);
360 /* 8001037C */ void setAnm(J3DAnmTransform* i_bck, int i_mode, f32 i_morf, f32 i_speed, f32 i_startF, f32 i_endF, void* i_bas);
361 /* 800105C8 */ u32 play(Vec*, u32, s8);
362 /* 80010680 */ void entryDL();
363 /* 800106AC */ void modelCalc();
364 /* 80010710 */ void getTransform(u16, J3DTransformInfo*);
365
366 /* 8000FD10 */ virtual ~mDoExt_McaMorf();
367 /* 80010074 */ virtual void calc();
368
369 J3DModel* getModel() { return mpModel; }
370
371private:
376 /* 0x50 */ bool field_0x50;
377 /* 0x51 */ bool field_0x51;
378 /* 0x52 */ bool field_0x52;
379};
380
382public:
385 int, f32, int, int, Z2Creature*, u32, u32);
386 /* 80011464 */ int create(J3DModelData*, mDoExt_McaMorfCallBack1_c*,
388 f32, int, int, Z2Creature*, u32, u32);
389 /* 800116B4 */ void ERROR_EXIT();
390 /* 80011D70 */ void setAnm(J3DAnmTransform*, J3DAnmTransform*, f32, int, f32, f32, f32, f32);
391 /* 80011FCC */ void setAnmRate(f32);
392 /* 800120A0 */ int play(u32, s8);
393 /* 80012144 */ void entryDL();
394 /* 80012170 */ void modelCalc();
395 /* 800121E8 */ void stopZelAnime();
396
397 /* 800113FC */ virtual ~mDoExt_McaMorf2();
398 /* 800116F4 */ virtual void calc();
399
400private:
404 /* 0x44 */ f32 field_0x44;
405 /* 0x48 */ Z2Creature* mpSound;
406 /* 0x4C */ void* mpBas;
407};
408
410public:
411 /* 8000F848 */ void initOldFrameMorf(f32, u16, u16);
412 /* 8000F8CC */ void decOldFrameMorfCounter();
413
415 mOldFrameTransInfo = i_transinf;
416 mOldFrameQuaternion = i_quat;
417 mOldFrameRate = 0.0f;
418 mOldFrameFlg = false;
422 field_0x8 = 0.0f;
423 field_0x10 = 0.0f;
424 field_0x14 = 0.0f;
425 }
426
427 bool getOldFrameFlg() { return mOldFrameFlg; }
428 void onOldFrameFlg() { mOldFrameFlg = true; }
429 void offOldFrameFlg() { mOldFrameFlg = false; }
436
437private:
438 /* 0x00 */ bool mOldFrameFlg;
440 /* 0x08 */ f32 field_0x8;
441 /* 0x0C */ f32 mOldFrameRate;
442 /* 0x10 */ f32 field_0x10;
443 /* 0x14 */ f32 field_0x14;
448}; // Size: 0x24
449
451 : public J3DMtxCalcNoAnm<J3DMtxCalcCalcTransformMaya, J3DMtxCalcJ3DSysInitMaya> {
453 mNum = num;
454 mAnmRatio = anmRatio;
455 for (int i = 0; i < mNum; i++) {
456 if (!mAnmRatio[i].getAnmTransform()) {
457 mAnmRatio[i].setRatio(0.0f);
458 }
459 }
460 }
461
463 f32 getRatio(int i) { return mAnmRatio[i].getRatio(); }
464
465 /* 80014F3C */ virtual ~mDoExt_MtxCalcAnmBlendTbl() {}
466 /* 8000F26C */ virtual void calc();
467
468 /* 0x4 */ int mNum;
470}; // Size: 0x0C
471
473
476 mDoExt_AnmRatioPack* anmRatio)
477 : mDoExt_MtxCalcAnmBlendTbl(num, anmRatio) {
478 mOldFrame = oldFrame;
479 }
480 /* 80014EB0 */ virtual ~mDoExt_MtxCalcAnmBlendTblOld() {}
481 /* 8000F4B0 */ virtual void calc();
482
484}; // Size: 0x10
485
487
489public:
490 /* 800123D0 */ int init(u16, int, int);
491 /* 800126BC */ mDoExt_3Dline_c();
492
493 /* 0x00 */ cXyz* field_0x0;
494 /* 0x04 */ f32* field_0x4;
495 /* 0x08 */ cXyz* field_0x8;
496 /* 0x0C */ cXyz* field_0xc;
497 /* 0x10 */ u8* field_0x10;
498 /* 0x14 */ void* field_0x14;
499 /* 0x18 */ f32* field_0x18;
500 /* 0x1C */ f32* field_0x1c;
501};
502
504public:
505 virtual int getMaterialID() = 0;
506 virtual void setMaterial() = 0;
507 virtual void draw() = 0;
508
510};
511
513public:
515
516 void reset() { mp3DlineMat = NULL; }
517 void setMatDark(mDoExt_3DlineMat_c* i_mat) { setMat(i_mat); }
518
519 /* 80014738 */ void setMat(mDoExt_3DlineMat_c*);
520 virtual void draw();
522
523private:
525};
526
527class dKy_tevstr_c;
529public:
530 /* 80013360 */ int init(u16, u16, ResTIMG*, int);
531 /* 80013FB0 */ void update(int, GXColor&, dKy_tevstr_c*);
532 /* 8001373C */ void update(int, f32, GXColor&, u16, dKy_tevstr_c*);
533 /* 80014E7C */ int getMaterialID();
534 /* 800134F8 */ void setMaterial();
535 /* 800135D0 */ void draw();
536
537 cXyz* getPos(int i_idx) { return mpLines[i_idx].field_0x0; }
538 f32* getSize(int i_idx) { return mpLines[i_idx].field_0x4; }
539
540private:
542 /* 0x28 */ GXColor mColor;
544 /* 0x30 */ u16 mNumLines;
545 /* 0x32 */ u16 field_0x32;
546 /* 0x34 */ u16 field_0x34;
547 /* 0x36 */ u8 mIsDrawn;
549};
550
552public:
553 /* 800125E0 */ int init(u16, u16, int);
554 /* 80012874 */ void update(int, f32, _GXColor&, u16, dKy_tevstr_c*);
555 /* 80012E3C */ void update(int, _GXColor&, dKy_tevstr_c*);
556
557 /* 80014E84 */ virtual int getMaterialID();
558 /* 800126C0 */ virtual void setMaterial();
559 /* 80012774 */ virtual void draw();
560
561 cXyz* getPos(int param_0) { return field_0x18[param_0].field_0x0; }
562 f32* getSize(int param_0) { return field_0x18[param_0].field_0x4; }
563
564private:
565 /* 0x08 */ GXColor field_0x8;
567 /* 0x10 */ u16 field_0x10;
568 /* 0x12 */ u16 field_0x12;
569 /* 0x14 */ u16 field_0x14;
570 /* 0x16 */ u8 field_0x16;
572};
573
575public:
576 mDoExt_cubePacket(cXyz& i_position, cXyz& i_size, csXyz& i_angle, const GXColor& i_color) {
577 mPosition = i_position;
578 mSize = i_size;
579 mAngle = i_angle;
580 mColor = i_color;
581 }
582
583 virtual void draw();
585
586 /* 0x10 */ cXyz mPosition;
587 /* 0x1C */ cXyz mSize;
588 /* 0x28 */ csXyz mAngle;
589 /* 0x2E */ GXColor mColor;
590};
591
593public:
594 mDoExt_cylinderPacket(cXyz& i_position, f32 i_radius, f32 i_height, const GXColor& i_color, u8 i_clipZ) {
595 mPosition = i_position;
596 mRadius = i_radius;
597 mHeight = i_height;
598 mColor = i_color;
599 mClipZ = i_clipZ;
600 }
601
602 virtual void draw();
604
605 /* 0x10 */ cXyz mPosition;
606 /* 0x1C */ f32 mRadius;
607 /* 0x20 */ f32 mHeight;
608 /* 0x24 */ GXColor mColor;
609 /* 0x28 */ u8 mClipZ;
610};
611
613public:
614 mDoExt_spherePacket(cXyz& i_position, f32 i_size, const GXColor& i_color, u8 i_clipZ) {
615 mPosition = i_position;
616 mSize = i_size;
617 mColor = i_color;
618 mClipZ = i_clipZ;
619 }
620
621 virtual void draw();
623
624 /* 0x10 */ cXyz mPosition;
625 /* 0x1C */ f32 mSize;
626 /* 0x20 */ GXColor mColor;
627 /* 0x24 */ u8 mClipZ;
628};
629
631public:
632 mDoExt_cube8pPacket(cXyz* i_points, const GXColor& i_color) {
633 cXyz* pnt_array = i_points;
634
635 for (int i = 0; i < 8; i++) {
636 mPoints[i] = *pnt_array;
637 pnt_array++;
638 }
639
640 DCStoreRangeNoSync(mPoints, sizeof(cXyz) * 8);
641 mColor = i_color;
642 }
643
644 virtual void draw();
646
647 /* 0x10 */ cXyz mPoints[8];
648 /* 0x70 */ GXColor mColor;
649};
650
652public:
653 mDoExt_trianglePacket(cXyz* i_points, const GXColor& i_color, u8 i_clipZ) {
654 cXyz* pnt_array = i_points;
655
656 for (int i = 0; i < 3; i++) {
657 mPoints[i] = *pnt_array;
658 pnt_array++;
659 }
660
661 DCStoreRangeNoSync(mPoints, sizeof(cXyz) * 3);
662 mColor = i_color;
663 mClipZ = i_clipZ;
664 }
665
666 virtual void draw();
668
669 /* 0x10 */ cXyz mPoints[3];
670 /* 0x34 */ GXColor mColor;
671 /* 0x38 */ u8 mClipZ;
672};
673
675public:
676 mDoExt_quadPacket(cXyz* i_points, const GXColor& i_color, u8 i_clipZ) {
677 cXyz* pnt_array = i_points;
678
679 for (int i = 0; i < 4; i++) {
680 mPoints[i] = *pnt_array;
681 pnt_array++;
682 }
683
684 DCStoreRangeNoSync(mPoints, sizeof(cXyz) * 4);
685 mColor = i_color;
686 mClipZ = i_clipZ;
687 }
688
689 virtual void draw();
691
692 /* 0x10 */ cXyz mPoints[4];
693 /* 0x40 */ GXColor mColor;
694 /* 0x44 */ u8 mClipZ;
695};
696
698public:
699 mDoExt_linePacket(cXyz& i_start, cXyz& i_end, const GXColor& i_color, u8 i_clipZ, u8 i_width) {
700 mStart = i_start;
701 mEnd = i_end;
702 mColor = i_color;
703 mClipZ = i_clipZ;
704 mWidth = i_width;
705 }
706
707 virtual void draw();
709
710 /* 0x10 */ cXyz mStart;
711 /* 0x1C */ cXyz mEnd;
712 /* 0x28 */ GXColor mColor;
713 /* 0x2C */ u8 mClipZ;
714 /* 0x2D */ u8 mWidth;
715};
716
718public:
719 mDoExt_cylinderMPacket(Mtx i_mtx, const GXColor& i_color, u8 i_clipZ) {
720 PSMTXCopy(i_mtx, mMatrix);
721 mColor = i_color;
722 mClipZ = i_clipZ;
723 }
724
725 virtual void draw();
727
728 /* 0x10 */ Mtx mMatrix;
729 /* 0x40 */ GXColor mColor;
730 /* 0x44 */ u8 mClipZ;
731};
732
734public:
735 mDoExt_circlePacket(cXyz& i_position, f32 i_radius, const GXColor& i_color, u8 i_clipZ, u8 i_lineWidth) {
736 mPosition = i_position;
737 mRadius = i_radius;
738 mColor = i_color;
739 mClipZ = i_clipZ;
740 mLineWidth = i_lineWidth;
741 }
742
743 virtual void draw();
745
746 /* 0x10 */ cXyz mPosition;
747 /* 0x1C */ f32 mRadius;
748 /* 0x20 */ GXColor mColor;
749 /* 0x24 */ u8 mClipZ;
750 /* 0x25 */ u8 mLineWidth;
751};
752
754public:
755 mDoExt_ArrowPacket(cXyz& i_position, cXyz& param_1, const GXColor& i_color, u8 i_clipZ, u8 i_lineWidth) {
756 mPosition = i_position;
757 field_0x1c = param_1;
758 mColor = i_color;
759 mClipZ = i_clipZ;
760 m_lineWidth = i_lineWidth;
761 }
762
763 virtual void draw();
765
766 /* 0x10 */ cXyz mPosition;
767 /* 0x1C */ cXyz field_0x1c;
768 /* 0x28 */ GXColor mColor;
769 /* 0x2C */ u8 mClipZ;
770 /* 0x2D */ u8 m_lineWidth;
771};
772
774public:
775 mDoExt_pointPacket(cXyz& i_position, const GXColor& i_color, u8 i_clipZ, u8 i_lineWidth) {
776 mPosition = i_position;
777 mColor = i_color;
778 mClipZ = i_clipZ;
779 mLineWidth = i_lineWidth;
780 }
781
782 virtual void draw();
784
785 /* 0x10 */ cXyz mPosition;
786 /* 0x1C */ GXColor mColor;
787 /* 0x20 */ u8 mClipZ;
788 /* 0x21 */ u8 mLineWidth;
789};
790
791inline void mDoExt_bckAnmRemove(J3DModelData* i_modelData) {
792 i_modelData->getJointNodePointer(0)->setMtxCalc(NULL);
793}
794
819 u32 i_alignment);
820JKRSolidHeap* mDoExt_createSolidHeapToCurrent(u32 i_size, JKRHeap* i_parent, u32 i_alignment);
823 u32 i_alignment);
828void mDoExt_modelUpdate(J3DModel* i_model);
829void mDoExt_modelUpdateDL(J3DModel* i_model);
830J3DModel* mDoExt_J3DModel__create(J3DModelData* i_modelData, u32 i_modelFlag,
831 u32 i_differedDlistFlag);
833int mDoExt_resIDToIndex(JKRArchive* p_archive, u16 id);
834void mDoExt_modelEntryDL(J3DModel* i_model);
835void mDoExt_brkAnmRemove(J3DModelData* i_modelData);
836void mDoExt_setupStageTexture(J3DModelData* i_modelData);
838void mDoExt_setupShareTexture(J3DModelData* i_modelData, J3DModelData* i_shareModelData);
839void mDoExt_btkAnmRemove(J3DModelData* i_modelData);
840
841#if VERSION == VERSION_SHIELD_DEBUG
844#endif
845
846struct JUTFont;
851
852extern JKRExpHeap* zeldaHeap;
853extern JKRExpHeap* gameHeap;
854extern JKRExpHeap* archiveHeap;
855extern JKRExpHeap* commandHeap;
856
857#endif /* M_DO_M_DO_EXT_H */
u32 mode
Definition GXTev.c:56
asm void DCStoreRangeNoSync(register void *addr, register u32 nBytes)
Definition OSCache.c:157
unsigned int size
Definition __os.h:106
void setFrame(f32 frame)
Definition J3DAnimation.h:491
Definition J3DAnimation.h:829
Definition J3DAnimation.h:711
Definition J3DAnimation.h:658
Definition J3DCluster.h:74
Definition J3DPacket.h:100
Definition JKRArchive.h:57
Definition JKRAssertHeap.h:10
Definition JKRHeap.h:16
Definition JKRSolidHeap.h:10
Definition JUTFont.h:69
Definition Z2SoundObject.h:47
Definition m_Do_ext.h:551
u16 field_0x12
Definition m_Do_ext.h:568
u16 field_0x10
Definition m_Do_ext.h:567
dKy_tevstr_c * field_0xc
Definition m_Do_ext.h:566
virtual void setMaterial()
Definition m_Do_ext.cpp:2174
void update(int, f32, _GXColor &, u16, dKy_tevstr_c *)
Definition m_Do_ext.cpp:2224
cXyz * getPos(int param_0)
Definition m_Do_ext.h:561
GXColor field_0x8
Definition m_Do_ext.h:565
virtual int getMaterialID()
Definition m_Do_ext.cpp:2731
u16 field_0x14
Definition m_Do_ext.h:569
u8 field_0x16
Definition m_Do_ext.h:570
virtual void draw()
Definition m_Do_ext.cpp:2191
mDoExt_3Dline_c * field_0x18
Definition m_Do_ext.h:571
f32 * getSize(int param_0)
Definition m_Do_ext.h:562
Definition m_Do_ext.h:528
GXTexObj mTextureObject
Definition m_Do_ext.h:541
void draw()
Definition m_Do_ext.cpp:2363
GXColor mColor
Definition m_Do_ext.h:542
u8 mIsDrawn
Definition m_Do_ext.h:547
void update(int, GXColor &, dKy_tevstr_c *)
Definition m_Do_ext.cpp:2404
int getMaterialID()
Definition m_Do_ext.cpp:2726
u16 field_0x34
Definition m_Do_ext.h:546
u16 mNumLines
Definition m_Do_ext.h:544
f32 * getSize(int i_idx)
Definition m_Do_ext.h:538
u16 field_0x32
Definition m_Do_ext.h:545
cXyz * getPos(int i_idx)
Definition m_Do_ext.h:537
mDoExt_3Dline_c * mpLines
Definition m_Do_ext.h:548
dKy_tevstr_c * mpTevStr
Definition m_Do_ext.h:543
void setMaterial()
Definition m_Do_ext.cpp:2344
Definition m_Do_ext.h:512
mDoExt_3DlineMatSortPacket()
Definition m_Do_ext.h:514
virtual ~mDoExt_3DlineMatSortPacket()
Definition m_Do_ext.cpp:2721
void setMatDark(mDoExt_3DlineMat_c *i_mat)
Definition m_Do_ext.h:517
void reset()
Definition m_Do_ext.h:516
mDoExt_3DlineMat_c * mp3DlineMat
Definition m_Do_ext.h:524
virtual void draw()
Definition m_Do_ext.cpp:2419
void setMat(mDoExt_3DlineMat_c *)
Definition m_Do_ext.cpp:2410
Definition m_Do_ext.h:503
virtual int getMaterialID()=0
mDoExt_3DlineMat_c * field_0x4
Definition m_Do_ext.h:509
virtual void draw()=0
virtual void setMaterial()=0
Definition m_Do_ext.h:488
f32 * field_0x18
Definition m_Do_ext.h:499
cXyz * field_0xc
Definition m_Do_ext.h:496
cXyz * field_0x0
Definition m_Do_ext.h:493
mDoExt_3Dline_c()
Definition m_Do_ext.cpp:2145
u8 * field_0x10
Definition m_Do_ext.h:497
cXyz * field_0x8
Definition m_Do_ext.h:495
f32 * field_0x1c
Definition m_Do_ext.h:500
f32 * field_0x4
Definition m_Do_ext.h:494
void * field_0x14
Definition m_Do_ext.h:498
Definition m_Do_ext.h:753
u8 mClipZ
Definition m_Do_ext.h:769
virtual ~mDoExt_ArrowPacket()
Definition m_Do_ext.h:764
virtual void draw()
u8 m_lineWidth
Definition m_Do_ext.h:770
cXyz field_0x1c
Definition m_Do_ext.h:767
GXColor mColor
Definition m_Do_ext.h:768
cXyz mPosition
Definition m_Do_ext.h:766
mDoExt_ArrowPacket(cXyz &i_position, cXyz &param_1, const GXColor &i_color, u8 i_clipZ, u8 i_lineWidth)
Definition m_Do_ext.h:755
Definition m_Do_ext.h:381
virtual void calc()
Definition m_Do_ext.cpp:1705
int play(u32, s8)
Definition m_Do_ext.cpp:1945
void setAnmRate(f32)
Definition m_Do_ext.cpp:1922
void ERROR_EXIT()
Definition m_Do_ext.cpp:1689
void modelCalc()
Definition m_Do_ext.cpp:1967
f32 field_0x44
Definition m_Do_ext.h:404
void entryDL()
Definition m_Do_ext.cpp:1960
void stopZelAnime()
Definition m_Do_ext.cpp:1984
virtual ~mDoExt_McaMorf2()
Definition m_Do_ext.cpp:1613
mDoExt_McaMorfCallBack1_c * mpCallback1
Definition m_Do_ext.h:401
J3DAnmTransform * field_0x40
Definition m_Do_ext.h:403
int create(J3DModelData *, mDoExt_McaMorfCallBack1_c *, mDoExt_McaMorfCallBack2_c *, J3DAnmTransform *, J3DAnmTransform *, int, f32, int, int, Z2Creature *, u32, u32)
Definition m_Do_ext.cpp:1620
mDoExt_McaMorfCallBack2_c * mpCallback2
Definition m_Do_ext.h:402
void setAnm(J3DAnmTransform *, J3DAnmTransform *, f32, int, f32, f32, f32, f32)
Definition m_Do_ext.cpp:1874
void * mpBas
Definition m_Do_ext.h:406
Z2Creature * mpSound
Definition m_Do_ext.h:405
mDoExt_McaMorf2(J3DModelData *, mDoExt_McaMorfCallBack1_c *, mDoExt_McaMorfCallBack2_c *, J3DAnmTransform *, J3DAnmTransform *, int, f32, int, int, Z2Creature *, u32, u32)
Definition m_Do_ext.cpp:1604
Definition m_Do_ext.h:265
virtual int execute(u16, J3DTransformInfo *)=0
Definition m_Do_ext.h:270
virtual void execute(u16)=0
Definition m_Do_ext.h:353
J3DModel * getModel()
Definition m_Do_ext.h:369
void modelCalc()
Definition m_Do_ext.cpp:1263
mDoExt_McaMorfCallBack2_c * mpCallback2
Definition m_Do_ext.h:373
virtual ~mDoExt_McaMorf()
Definition m_Do_ext.cpp:1038
cXyz mTranslateScale
Definition m_Do_ext.h:374
virtual void calc()
Definition m_Do_ext.cpp:1127
void entryDL()
Definition m_Do_ext.cpp:1256
mDoExt_McaMorf(J3DModelData *, mDoExt_McaMorfCallBack1_c *, mDoExt_McaMorfCallBack2_c *, J3DAnmTransform *, int, f32, int, int, int, void *, u32, u32)
Definition m_Do_ext.cpp:1027
mDoExt_McaMorfCallBack1_c * mpCallback1
Definition m_Do_ext.h:372
bool field_0x52
Definition m_Do_ext.h:378
int create(J3DModelData *, mDoExt_McaMorfCallBack1_c *, mDoExt_McaMorfCallBack2_c *, J3DAnmTransform *, int, f32, int, int, int, void *, u32, u32)
Definition m_Do_ext.cpp:1047
void setAnm(J3DAnmTransform *i_bck, int i_mode, f32 i_morf, f32 i_speed, f32 i_startF, f32 i_endF, void *i_bas)
Definition m_Do_ext.cpp:1205
mDoExt_zelAnime * mpSound
Definition m_Do_ext.h:375
void getTransform(u16, J3DTransformInfo *)
Definition m_Do_ext.cpp:1276
u32 play(Vec *, u32, s8)
Definition m_Do_ext.cpp:1245
bool field_0x51
Definition m_Do_ext.h:377
bool field_0x50
Definition m_Do_ext.h:376
Definition m_Do_ext.h:196
J3DAnmCluster * mpAnm
Definition m_Do_ext.h:208
J3DAnmCluster * getBlkAnm()
Definition m_Do_ext.h:205
mDoExt_blkAnm()
Definition m_Do_ext.h:198
Definition m_Do_ext.h:114
int init(J3DModelData *i_modelData, J3DAnmColor *i_bpk, int i_anmPlay, int i_attribute, f32 i_rate, s16 i_start, s16 param_6)
Definition m_Do_ext.h:126
void entry(J3DModelData *i_modelData, f32 i_frame)
Definition m_Do_ext.h:122
int remove(J3DModelData *i_modelData)
Definition m_Do_ext.h:132
void entry(J3DMaterialTable *i_matTable, f32 i_frame)
Definition m_Do_ext.cpp:130
J3DAnmColor * mpAnm
Definition m_Do_ext.h:136
J3DAnmColor * getBpkAnm()
Definition m_Do_ext.h:133
void entry(J3DModelData *i_modelData)
Definition m_Do_ext.h:121
mDoExt_bpkAnm()
Definition m_Do_ext.h:116
Definition m_Do_ext.h:84
int init(J3DModelData *i_modelData, J3DAnmTevRegKey *i_brk, int i_anmPlay, int i_attribute, f32 i_rate, s16 i_start, s16 param_6)
Definition m_Do_ext.h:96
mDoExt_brkAnm()
Definition m_Do_ext.h:86
void entry(J3DModelData *i_modelData, f32 i_frame)
Definition m_Do_ext.h:92
void entryFrame(f32 frame)
Definition m_Do_ext.h:104
J3DAnmTevRegKey * mpAnm
Definition m_Do_ext.h:109
void entry(J3DMaterialTable *i_matTable, f32 i_frame)
Definition m_Do_ext.cpp:214
void entry(J3DModelData *i_modelData)
Definition m_Do_ext.h:91
void entryFrame()
Definition m_Do_ext.h:103
J3DAnmTevRegKey * getBrkAnm() const
Definition m_Do_ext.h:106
int remove(J3DModelData *i_modelData)
Definition m_Do_ext.h:102
Definition m_Do_ext.h:733
virtual ~mDoExt_circlePacket()
Definition m_Do_ext.h:744
mDoExt_circlePacket(cXyz &i_position, f32 i_radius, const GXColor &i_color, u8 i_clipZ, u8 i_lineWidth)
Definition m_Do_ext.h:735
cXyz mPosition
Definition m_Do_ext.h:746
u8 mLineWidth
Definition m_Do_ext.h:750
f32 mRadius
Definition m_Do_ext.h:747
GXColor mColor
Definition m_Do_ext.h:748
u8 mClipZ
Definition m_Do_ext.h:749
virtual void draw()
Definition m_Do_ext.h:630
virtual ~mDoExt_cube8pPacket()
Definition m_Do_ext.h:645
cXyz mPoints[8]
Definition m_Do_ext.h:647
mDoExt_cube8pPacket(cXyz *i_points, const GXColor &i_color)
Definition m_Do_ext.h:632
virtual void draw()
GXColor mColor
Definition m_Do_ext.h:648
Definition m_Do_ext.h:574
csXyz mAngle
Definition m_Do_ext.h:588
cXyz mSize
Definition m_Do_ext.h:587
cXyz mPosition
Definition m_Do_ext.h:586
GXColor mColor
Definition m_Do_ext.h:589
virtual ~mDoExt_cubePacket()
Definition m_Do_ext.h:584
virtual void draw()
Definition m_Do_ext.cpp:2472
mDoExt_cubePacket(cXyz &i_position, cXyz &i_size, csXyz &i_angle, const GXColor &i_color)
Definition m_Do_ext.h:576
Definition m_Do_ext.h:717
virtual void draw()
GXColor mColor
Definition m_Do_ext.h:729
u8 mClipZ
Definition m_Do_ext.h:730
virtual ~mDoExt_cylinderMPacket()
Definition m_Do_ext.h:726
mDoExt_cylinderMPacket(Mtx i_mtx, const GXColor &i_color, u8 i_clipZ)
Definition m_Do_ext.h:719
Mtx mMatrix
Definition m_Do_ext.h:728
Definition m_Do_ext.h:592
f32 mHeight
Definition m_Do_ext.h:607
cXyz mPosition
Definition m_Do_ext.h:605
virtual void draw()
Definition m_Do_ext.cpp:2486
u8 mClipZ
Definition m_Do_ext.h:609
virtual ~mDoExt_cylinderPacket()
Definition m_Do_ext.h:603
f32 mRadius
Definition m_Do_ext.h:606
mDoExt_cylinderPacket(cXyz &i_position, f32 i_radius, f32 i_height, const GXColor &i_color, u8 i_clipZ)
Definition m_Do_ext.h:594
GXColor mColor
Definition m_Do_ext.h:608
Definition m_Do_ext.h:231
virtual ~mDoExt_invJntPacket()
Definition m_Do_ext.h:236
u8 field_0x16
Definition m_Do_ext.h:247
void setJoint(J3DModel *i_model, u16 param_1, u8 param_2)
Definition m_Do_ext.h:238
mDoExt_invJntPacket()
Definition m_Do_ext.h:233
u16 field_0x14
Definition m_Do_ext.h:246
J3DModel * field_0x10
Definition m_Do_ext.h:245
virtual void draw()
Definition m_Do_ext.cpp:1991
Definition m_Do_ext.h:250
mDoExt_invJntPacket * mpPackets
Definition m_Do_ext.h:257
J3DModel * mModel
Definition m_Do_ext.h:256
void entryJoint(cXyz *)
Definition m_Do_ext.cpp:422
void entryDL(cXyz *)
Definition m_Do_ext.cpp:443
int create(J3DModel *i_model, u8 param_1)
Definition m_Do_ext.cpp:401
Definition m_Do_ext.h:697
cXyz mEnd
Definition m_Do_ext.h:711
u8 mWidth
Definition m_Do_ext.h:714
u8 mClipZ
Definition m_Do_ext.h:713
GXColor mColor
Definition m_Do_ext.h:712
mDoExt_linePacket(cXyz &i_start, cXyz &i_end, const GXColor &i_color, u8 i_clipZ, u8 i_width)
Definition m_Do_ext.h:699
cXyz mStart
Definition m_Do_ext.h:710
virtual ~mDoExt_linePacket()
Definition m_Do_ext.h:708
virtual void draw()
Definition m_Do_ext.h:773
GXColor mColor
Definition m_Do_ext.h:786
virtual ~mDoExt_pointPacket()
Definition m_Do_ext.h:783
u8 mClipZ
Definition m_Do_ext.h:787
u8 mLineWidth
Definition m_Do_ext.h:788
virtual void draw()
cXyz mPosition
Definition m_Do_ext.h:785
mDoExt_pointPacket(cXyz &i_position, const GXColor &i_color, u8 i_clipZ, u8 i_lineWidth)
Definition m_Do_ext.h:775
Definition m_Do_ext.h:674
GXColor mColor
Definition m_Do_ext.h:693
cXyz mPoints[4]
Definition m_Do_ext.h:692
mDoExt_quadPacket(cXyz *i_points, const GXColor &i_color, u8 i_clipZ)
Definition m_Do_ext.h:676
u8 mClipZ
Definition m_Do_ext.h:694
virtual void draw()
virtual ~mDoExt_quadPacket()
Definition m_Do_ext.h:690
Definition m_Do_ext.h:612
cXyz mPosition
Definition m_Do_ext.h:624
GXColor mColor
Definition m_Do_ext.h:626
f32 mSize
Definition m_Do_ext.h:625
u8 mClipZ
Definition m_Do_ext.h:627
mDoExt_spherePacket(cXyz &i_position, f32 i_size, const GXColor &i_color, u8 i_clipZ)
Definition m_Do_ext.h:614
virtual void draw()
virtual ~mDoExt_spherePacket()
Definition m_Do_ext.h:622
Definition m_Do_ext.h:44
void * getBas()
Definition m_Do_ext.h:49
void * mBas
Definition m_Do_ext.h:52
mDoExt_transAnmBas(void *bas)
Definition m_Do_ext.h:46
virtual ~mDoExt_transAnmBas()
Definition m_Do_ext.h:47
Definition m_Do_ext.h:651
virtual ~mDoExt_trianglePacket()
Definition m_Do_ext.h:667
u8 mClipZ
Definition m_Do_ext.h:671
mDoExt_trianglePacket(cXyz *i_points, const GXColor &i_color, u8 i_clipZ)
Definition m_Do_ext.h:653
cXyz mPoints[3]
Definition m_Do_ext.h:669
GXColor mColor
Definition m_Do_ext.h:670
virtual void draw()
Definition m_Do_ext.h:260
void * field_0x48
Definition m_Do_ext.h:262
static SECTION_RODATA u8 const heapSize[20]
Definition d_a_cstatue.cpp:582
void PSMTXCopy()
static initFunc init[]
Definition d_menu_collect.cpp:42
int i
Definition e_pow.c:165
JKRExpHeap * mDoExt_getZeldaHeap()
Definition m_Do_ext.cpp:616
JKRExpHeap * mDoExt_getArchiveHeap()
Definition m_Do_ext.cpp:652
JKRExpHeap * archiveHeap
Definition m_Do_ext.cpp:642
void mDoExt_setupStageTexture(J3DModelData *i_modelData)
Definition m_Do_ext.cpp:516
void mDoExt_restoreCurrentHeap()
Definition m_Do_ext.cpp:821
void mDoExt_removeSubFont()
Definition m_Do_ext.cpp:2650
JKRSolidHeap * mDoExt_createSolidHeapToCurrent(JKRHeap **o_heap, u32 i_size, JKRHeap *i_parent, u32 i_alignment)
Definition m_Do_ext.cpp:723
JKRExpHeap * mDoExt_createCommandHeap(u32 heapSize, JKRHeap *i_heap)
Definition m_Do_ext.cpp:632
JKRExpHeap * mDoExt_getJ2dHeap()
Definition m_Do_ext.cpp:673
s32 mDoExt_getSafeZeldaHeapSize()
Definition m_Do_ext.cpp:623
JKRExpHeap * mDoExt_createGameHeap(u32 heapSize, JKRHeap *i_heap)
Definition m_Do_ext.cpp:596
J3DModel * mDoExt_J3DModel__create(J3DModelData *i_modelData, u32 i_modelFlag, u32 i_differedDlistFlag)
Definition m_Do_ext.cpp:2668
OSThread * mDoExt_GetCurrentRunningThread()
Definition m_Do_ext.cpp:2711
JUTFont * mDoExt_getSubFont()
Definition m_Do_ext.cpp:2640
JKRHeap * mDoExt_setCurrentHeap(JKRHeap *i_heap)
Definition m_Do_ext.cpp:811
void mDoExt_bckAnmRemove(J3DModelData *i_modelData)
Definition m_Do_ext.h:791
JKRSolidHeap * mDoExt_createSolidHeapFromGame(u32 i_size, u32 i_alignment)
Definition m_Do_ext.cpp:712
JKRExpHeap * mDoExt_createDbPrintHeap(u32 heapSize, JKRHeap *i_heap)
Definition m_Do_ext.cpp:582
JKRExpHeap * gameHeap
Definition m_Do_ext.cpp:592
JKRHeap * mDoExt_getCurrentHeap()
Definition m_Do_ext.cpp:816
STATIC_ASSERT(sizeof(mDoExt_btkAnm)==0x18)
void mDoExt_addSafeZeldaHeapSize(s32)
void mDoExt_setAraCacheSize(u32 size)
Definition m_Do_ext.cpp:2705
JKRExpHeap * zeldaHeap
Definition m_Do_ext.cpp:608
JKRExpHeap * commandHeap
Definition m_Do_ext.cpp:629
JKRSolidHeap * mDoExt_createSolidHeapFromGameToCurrent(u32 i_size, u32 i_alignment)
Definition m_Do_ext.cpp:755
JUTFont * mDoExt_getMesgFont()
Definition m_Do_ext.cpp:2571
JKRExpHeap * mDoExt_getHostIOHeap()
Definition m_Do_ext.cpp:681
JKRExpHeap * mDoExt_getDbPrintHeap()
Definition m_Do_ext.cpp:587
JKRExpHeap * mDoExt_getGameHeap()
Definition m_Do_ext.cpp:603
JKRExpHeap * mDoExt_getArchiveHeapPtr()
Definition m_Do_ext.cpp:657
void mDoExt_brkAnmRemove(J3DModelData *i_modelData)
Definition m_Do_ext.cpp:386
JKRAssertHeap * mDoExt_getAssertHeap()
Definition m_Do_ext.cpp:574
void mDoExt_destroyExpHeap(JKRExpHeap *i_heap)
Definition m_Do_ext.cpp:805
JKRExpHeap * mDoExt_createArchiveHeap(u32 heapSize, JKRHeap *i_heap)
Definition m_Do_ext.cpp:645
void mDoExt_btkAnmRemove(J3DModelData *i_modelData)
Definition m_Do_ext.cpp:373
u32 mDoExt_adjustSolidHeapToSystem(JKRSolidHeap *i_heap)
Definition m_Do_ext.cpp:792
void mDoExt_destroySolidHeap(JKRSolidHeap *i_heap)
Definition m_Do_ext.cpp:800
void mDoExt_removeMesgFont()
Definition m_Do_ext.cpp:2581
void mDoExt_modelEntryDL(J3DModel *i_model)
Definition m_Do_ext.cpp:356
int mDoExt_resIDToIndex(JKRArchive *p_archive, u16 id)
Definition m_Do_ext.cpp:827
void mDoExt_modelUpdate(J3DModel *i_model)
Definition m_Do_ext.cpp:320
JKRExpHeap * mDoExt_getCommandHeap()
Definition m_Do_ext.cpp:637
JKRAssertHeap * mDoExt_createAssertHeap(JKRHeap *i_heap)
Definition m_Do_ext.cpp:569
JKRExpHeap * mDoExt_createJ2dHeap(u32 heapSize, JKRHeap *i_heap)
Definition m_Do_ext.cpp:666
void mDoExt_setupShareTexture(J3DModelData *i_modelData, J3DModelData *i_shareModelData)
Definition m_Do_ext.cpp:455
JUTFont * mDoExt_getRubyFont()
Definition m_Do_ext.cpp:2614
JKRSolidHeap * mDoExt_createSolidHeapFromSystem(u32 i_size, u32 i_alignment)
Definition m_Do_ext.cpp:717
void mDoExt_modelUpdateDL(J3DModel *i_model)
Definition m_Do_ext.cpp:337
JKRExpHeap * mDoExt_createZeldaHeap(u32 heapSize, JKRHeap *i_heap)
Definition m_Do_ext.cpp:611
u32 mDoExt_adjustSolidHeap(JKRSolidHeap *i_heap)
Definition m_Do_ext.cpp:761
f32 Mtx[3][4]
Definition mtx.h:22
Definition d_a_hozelda.cpp:36
Definition d_a_hozelda.cpp:45
Definition d_a_npc_fguard.cpp:44
Definition d_a_hozelda.cpp:54
Definition d_a_hozelda.cpp:241
void setLoop(s16 loop)
Definition J3DAnimation.h:924
void setFrame(f32 frame)
Definition J3DAnimation.h:928
u8 getAttribute() const
Definition J3DAnimation.h:912
BOOL checkPass(f32)
Definition J3DAnimation.cpp:24
void setStart(s16 start)
Definition J3DAnimation.h:917
f32 getFrame() const
Definition J3DAnimation.h:927
bool checkState(u8 state) const
Definition J3DAnimation.h:915
s16 getStart() const
Definition J3DAnimation.h:916
s16 getEnd() const
Definition J3DAnimation.h:921
void setAttribute(u8 attr)
Definition J3DAnimation.h:913
void setRate(f32 rate)
Definition J3DAnimation.h:926
s32 getLoop()
Definition J3DAnimation.h:923
void setEnd(s16 end)
Definition J3DAnimation.h:922
void reset()
Definition J3DAnimation.h:929
f32 getRate() const
Definition J3DAnimation.h:925
Definition d_a_hozelda.cpp:239
void setMtxCalc(J3DMtxCalc *i_mtxCalc)
Definition J3DJoint.h:63
Definition d_a_hozelda.cpp:34
Definition d_a_hozelda.cpp:52
int removeMatColorAnimator(J3DAnmColor *anm)
Definition J3DModelData.h:87
int removeTexNoAnimator(J3DAnmTexPattern *anm)
Definition J3DModelData.h:78
int removeTevRegAnimator(J3DAnmTevRegKey *anm)
Definition J3DModelData.h:84
int removeTexMtxAnimator(J3DAnmTextureSRTKey *anm)
Definition J3DModelData.h:81
J3DMaterialTable & getMaterialTable()
Definition J3DModelData.h:32
J3DJoint * getJointNodePointer(u16 idx) const
Definition J3DModelData.h:49
Definition d_a_hozelda.cpp:146
Definition d_a_hozelda.cpp:201
Definition d_a_hozelda.cpp:217
bool getAnmTransform()
Definition d_a_hozelda.cpp:1032
Definition d_a_hozelda.cpp:169
Definition d_a_balloon_2D.h:178
Definition OSThread.h:39
Definition d_a_hozelda.cpp:16
Image data header.
Definition d_menu_dmap_map.cpp:109
Definition d_a_hozelda.cpp:18
Definition d_a_hozelda.cpp:163
Definition d_menu_dmap_map.cpp:90
Definition GXStruct.h:35
Definition d_a_hozelda.cpp:20
Definition d_a_hozelda.cpp:161
Definition d_a_hozelda.cpp:133
Definition d_a_hozelda.cpp:69
f32 getRatio()
Definition m_Do_ext.h:222
void setAnmTransform(J3DAnmTransform *anm)
Definition m_Do_ext.h:224
~mDoExt_AnmRatioPack()
Definition m_Do_ext.h:215
J3DAnmTransform * mAnmTransform
Definition m_Do_ext.h:228
f32 mRatio
Definition m_Do_ext.h:227
mDoExt_AnmRatioPack()
Definition m_Do_ext.h:216
void setRatio(f32 ratio)
Definition m_Do_ext.h:221
J3DAnmTransform * getAnmTransform()
Definition m_Do_ext.h:223
Definition d_a_npc_fguard.cpp:23
mDoExt_McaMorfCallBack1_c * mpCallback1
Definition m_Do_ext.h:344
void setTranslateScale(const cXyz &scale)
Definition m_Do_ext.h:341
void setTranslateScale(cXyz &i_scale)
Definition m_Do_ext.h:337
void setAnm(J3DAnmTransform *i_anm, int i_attr, f32 i_morf, f32 i_rate, f32 i_start, f32 i_end)
Definition m_Do_ext.cpp:1482
J3DModel * getModel()
Definition m_Do_ext.h:334
void offTranslate()
Definition m_Do_ext.h:340
int create(J3DModelData *, mDoExt_McaMorfCallBack1_c *, mDoExt_McaMorfCallBack2_c *, J3DAnmTransform *, int, f32, int, int, Z2Creature *, u32, u32)
Definition m_Do_ext.cpp:1313
bool mMorfNone
Definition m_Do_ext.h:350
Quaternion * getOldQuaternion()
Definition m_Do_ext.h:339
bool mTranslate
Definition m_Do_ext.h:349
Z2Creature * mpSound
Definition m_Do_ext.h:347
void updateDL()
Definition m_Do_ext.cpp:1543
int play(u32, s8)
Definition m_Do_ext.cpp:1528
J3DTransformInfo * getOldTransInfo()
Definition m_Do_ext.h:338
void offMorfNone()
Definition m_Do_ext.h:335
mDoExt_McaMorfSO(J3DModelData *, mDoExt_McaMorfCallBack1_c *, mDoExt_McaMorfCallBack2_c *, J3DAnmTransform *, int, f32, int, int, Z2Creature *, u32, u32)
Definition m_Do_ext.cpp:1295
mDoExt_McaMorfCallBack2_c * mpCallback2
Definition m_Do_ext.h:345
void getTransform(u16, J3DTransformInfo *)
Definition m_Do_ext.cpp:1578
void * mpBas
Definition m_Do_ext.h:348
void entryDL()
Definition m_Do_ext.cpp:1557
cXyz mTranslateScale
Definition m_Do_ext.h:346
virtual void calc()
Definition m_Do_ext.cpp:1394
void onMorfNone()
Definition m_Do_ext.h:336
virtual ~mDoExt_McaMorfSO()
Definition m_Do_ext.cpp:1306
Definition m_Do_ext.h:474
virtual void calc()
Definition m_Do_ext.cpp:880
mDoExt_MtxCalcOldFrame * mOldFrame
Definition m_Do_ext.h:483
mDoExt_MtxCalcAnmBlendTblOld(mDoExt_MtxCalcOldFrame *oldFrame, int num, mDoExt_AnmRatioPack *anmRatio)
Definition m_Do_ext.h:475
virtual ~mDoExt_MtxCalcAnmBlendTblOld()
Definition m_Do_ext.h:480
Definition m_Do_ext.h:451
virtual void calc()
Definition m_Do_ext.cpp:839
f32 getRatio(int i)
Definition m_Do_ext.h:463
virtual ~mDoExt_MtxCalcAnmBlendTbl()
Definition m_Do_ext.h:465
int mNum
Definition m_Do_ext.h:468
mDoExt_MtxCalcAnmBlendTbl(int num, mDoExt_AnmRatioPack *anmRatio)
Definition m_Do_ext.h:452
J3DAnmTransform * getAnm(int i)
Definition m_Do_ext.h:462
mDoExt_AnmRatioPack * mAnmRatio
Definition m_Do_ext.h:469
Definition d_a_hozelda.cpp:65
Quaternion * mOldFrameQuaternion
Definition m_Do_ext.h:447
f32 field_0x14
Definition m_Do_ext.h:443
f32 getOldFrameRate()
Definition m_Do_ext.h:430
f32 getOldFrameMorfCounter()
Definition m_Do_ext.h:435
Quaternion * getOldFrameQuaternion(int i_no)
Definition m_Do_ext.h:434
u16 mOldFrameEndJoint
Definition m_Do_ext.h:445
void onOldFrameFlg()
Definition m_Do_ext.h:428
f32 mOldFrameRate
Definition m_Do_ext.h:441
J3DTransformInfo * getOldFrameTransInfo(int i)
Definition m_Do_ext.h:431
bool getOldFrameFlg()
Definition m_Do_ext.h:427
J3DTransformInfo * mOldFrameTransInfo
Definition m_Do_ext.h:446
void decOldFrameMorfCounter()
Definition m_Do_ext.cpp:961
u16 getOldFrameStartJoint()
Definition m_Do_ext.h:432
bool mOldFrameFlg
Definition m_Do_ext.h:438
u16 mOldFrameStartJoint
Definition m_Do_ext.h:444
f32 mOldFrameMorfCounter
Definition m_Do_ext.h:439
void offOldFrameFlg()
Definition m_Do_ext.h:429
u16 getOldFrameEndJoint()
Definition m_Do_ext.h:433
mDoExt_MtxCalcOldFrame(J3DTransformInfo *i_transinf, Quaternion *i_quat)
Definition m_Do_ext.h:414
void initOldFrameMorf(f32, u16, u16)
f32 field_0x8
Definition m_Do_ext.h:440
f32 field_0x10
Definition m_Do_ext.h:442
Definition d_a_hozelda.cpp:61
J3DFrameCtrl mFrameCtrl
Definition m_Do_ext.h:41
void setPlayMode(int i_mode)
Definition m_Do_ext.h:33
J3DFrameCtrl * getFrameCtrl()
Definition m_Do_ext.h:25
void setFrame(f32 frame)
Definition m_Do_ext.h:32
bool isStop()
Definition m_Do_ext.h:35
int initPlay(s16 i_frameMax, int i_attribute, f32 i_rate, s16 i_startF, s16 i_endF)
Definition m_Do_ext.cpp:77
void setEndFrame(f32 frame)
Definition m_Do_ext.h:31
bool isLoop()
Definition m_Do_ext.h:36
f32 getPlaySpeed()
Definition m_Do_ext.h:26
mDoExt_baseAnm()
Definition m_Do_ext.h:20
void setLoopFrame(f32 i_frame)
Definition m_Do_ext.h:34
BOOL checkFrame(f32 frame)
Definition m_Do_ext.h:38
f32 getEndFrame()
Definition m_Do_ext.h:29
f32 getStartFrame()
Definition m_Do_ext.h:30
void reset()
Definition m_Do_ext.h:37
void setPlaySpeed(f32 speed)
Definition m_Do_ext.h:27
f32 getFrame()
Definition m_Do_ext.h:28
Definition d_a_hozelda.cpp:56
void remove(J3DModelData *i_modelData)
Definition m_Do_ext.h:152
void entryJoint(J3DModelData *i_modelData, u16 i_jntNo, f32 i_frame)
Definition m_Do_ext.cpp:256
void entry(J3DModelData *i_modelData, f32 i_frame)
J3DMtxCalc * mpMtxCalc
Definition m_Do_ext.h:165
int init(J3DAnmTransform *i_bck, int i_play, int i_attr, f32 i_rate, s16 i_startF, s16 i_endF, bool i_modify)
void changeBckOnly(J3DAnmTransform *i_bck)
Definition m_Do_ext.cpp:242
void entry(J3DModelData *i_modelData)
Definition m_Do_ext.h:150
J3DAnmTransform * mAnm
Definition m_Do_ext.h:164
J3DAnmTransform * getBckAnm()
Definition m_Do_ext.h:156
void removeJoint(J3DModelData *i_modelData, u16 i_idx)
Definition m_Do_ext.h:158
mDoExt_bckAnm()
Definition m_Do_ext.h:143
Definition d_a_hozelda.cpp:47
mDoExt_btkAnm()
Definition m_Do_ext.h:57
void entry(J3DModelData *i_modelData)
Definition m_Do_ext.h:62
int remove(J3DModelData *i_modelData)
Definition m_Do_ext.h:72
void entry(J3DMaterialTable *i_matTable, f32 i_frame)
void entryFrame()
Definition m_Do_ext.h:73
void entryFrame(f32 frame)
Definition m_Do_ext.h:74
void entry(J3DMaterialTable *, f32)
Definition m_Do_ext.cpp:186
void entry(J3DModelData *i_modelData, f32 i_frame)
Definition m_Do_ext.h:63
J3DAnmTextureSRTKey * getBtkAnm() const
Definition m_Do_ext.h:76
int init(J3DModelData *i_modelData, J3DAnmTextureSRTKey *i_btk, int i_anmPlay, int i_attribute, f32 i_rate, s16 i_start, s16 param_6)
Definition m_Do_ext.h:66
J3DAnmTextureSRTKey * mpAnm
Definition m_Do_ext.h:79
int init(J3DMaterialTable *i_matTable, J3DAnmTextureSRTKey *i_btk, int i_anmPlay, int i_attribute, f32 i_rate, s16 i_start, s16 param_6)
Definition d_a_hozelda.cpp:40
int init(J3DModelData *i_modelData, J3DAnmTexPattern *i_btk, int i_anmPlay, int i_attribute, f32 i_rate, s16 i_start, s16 param_6)
Definition m_Do_ext.h:182
void entry(J3DModelData *i_modelData, s16 i_frame)
Definition m_Do_ext.h:178
int remove(J3DModelData *i_modelData)
Definition m_Do_ext.h:188
int init(J3DMaterialTable *i_matTable, J3DAnmTexPattern *i_btk, int i_anmPlay, int i_attribute, f32 i_rate, s16 i_start, s16 param_6)
void entry(J3DMaterialTable *, s16)
Definition m_Do_ext.cpp:158
mDoExt_btpAnm()
Definition m_Do_ext.h:172
void entry(J3DMaterialTable *i_matTable, s16 i_frame)
J3DAnmTexPattern * getBtpAnm() const
Definition m_Do_ext.h:190
J3DAnmTexPattern * mpAnm
Definition m_Do_ext.h:193
void entry(J3DModelData *i_modelData)
Definition m_Do_ext.h:177
Definition d_a_npc_fguard.cpp:19
BOOL checkFrame(f32 frame)
Definition m_Do_ext.h:301
Quaternion * mpQuat
Definition m_Do_ext.h:308
f32 getPlaySpeed()
Definition m_Do_ext.h:296
void changeAnm(J3DAnmTransform *anm)
Definition m_Do_ext.h:285
f32 getFrame()
Definition m_Do_ext.h:298
void setPlaySpeed(f32 speed)
Definition m_Do_ext.h:297
void setLoopFrame(f32 frame)
Definition m_Do_ext.h:295
f32 field_0x34
Definition m_Do_ext.h:312
void setFrame(f32 frame)
Definition m_Do_ext.h:299
void setPlayMode(int mode)
Definition m_Do_ext.h:287
virtual ~mDoExt_morf_c()
Definition m_Do_ext.cpp:991
f32 getLoopFrame()
Definition m_Do_ext.h:294
BOOL isStop()
Definition m_Do_ext.h:288
J3DAnmTransform * getAnm()
Definition m_Do_ext.h:284
J3DModel * mpModel
Definition m_Do_ext.h:304
J3DAnmTransform * mpAnm
Definition m_Do_ext.h:305
f32 mPrevMorf
Definition m_Do_ext.h:310
f32 getMorfRatio()
Definition m_Do_ext.h:302
f32 getStartFrame()
Definition m_Do_ext.h:290
void frameUpdate()
Definition m_Do_ext.cpp:1009
mDoExt_morf_c()
Definition m_Do_ext.cpp:983
J3DTransformInfo * mpTransformInfo
Definition m_Do_ext.h:307
u8 getPlayMode()
Definition m_Do_ext.h:286
f32 mMorfStep
Definition m_Do_ext.h:311
void setFrameF(f32 frame)
Definition m_Do_ext.h:300
void setStartFrame(f32 frame)
Definition m_Do_ext.h:291
f32 getEndFrame()
Definition m_Do_ext.h:292
void setEndFrame(f32 frame)
Definition m_Do_ext.h:293
J3DFrameCtrl mFrameCtrl
Definition m_Do_ext.h:306
void setMorf(f32 i_morf)
bool isLoop()
Definition m_Do_ext.h:289
f32 mCurMorf
Definition m_Do_ext.h:309
int BOOL
Definition types.h:30
signed char s8
Definition types.h:4
unsigned long u32
Definition types.h:9
signed short int s16
Definition types.h:6
float f32
Definition types.h:22
unsigned short int u16
Definition types.h:7
signed long s32
Definition types.h:8
unsigned char u8
Definition types.h:5