mirror of
https://github.com/zeldaret/tww.git
synced 2026-07-10 22:31:52 -04:00
d_drawlist work
This commit is contained in:
@@ -31,6 +31,7 @@ public:
|
||||
};
|
||||
|
||||
J3DDrawBuffer() { initialize(); }
|
||||
J3DDrawBuffer(u32 size) { initialize(); allocBuffer(size); }
|
||||
~J3DDrawBuffer();
|
||||
void initialize();
|
||||
J3DError allocBuffer(u32);
|
||||
@@ -49,8 +50,9 @@ public:
|
||||
u32 getEntryTableSize() { return mBufSize; }
|
||||
|
||||
inline void calcZRatio();
|
||||
void setNonSort() { mSortType = 5; }
|
||||
void setZSort() { mSortType = 2; }
|
||||
void setNonSort() { mSortType = (u32)SORT_NON; }
|
||||
void setZSort() { mSortType = (u32)SORT_Z; }
|
||||
void setInvalidSort() { mSortType = (u32)SORT_INVALID; }
|
||||
void setZMtx(MtxP mtx) { mpZMtx = mtx; }
|
||||
void setCallBackPacket(J3DCallBackPacket* pPacket);
|
||||
|
||||
|
||||
@@ -221,6 +221,8 @@ public:
|
||||
|
||||
class J3DCallBackPacket : public J3DPacket {
|
||||
public:
|
||||
J3DCallBackPacket()
|
||||
: mpCallBack(NULL) {}
|
||||
virtual ~J3DCallBackPacket() {}
|
||||
virtual void draw();
|
||||
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
#ifndef C_RND_H
|
||||
#define C_RND_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
struct cM_rnd_c {
|
||||
/* 0x0 */ int m0;
|
||||
/* 0x4 */ int m4;
|
||||
/* 0x8 */ int m8;
|
||||
|
||||
void init(int a, int b, int c) {
|
||||
m0 = a;
|
||||
m4 = b;
|
||||
m8 = c;
|
||||
}
|
||||
int get();
|
||||
f32 getF(f32);
|
||||
f32 getFX(f32);
|
||||
f32 getValue(f32, f32);
|
||||
};
|
||||
|
||||
#endif /* C_RND_H */
|
||||
@@ -68,7 +68,12 @@ public:
|
||||
dCcMassS_Mng();
|
||||
virtual ~dCcMassS_Mng() {}
|
||||
void Ct();
|
||||
void SetAttr(f32 radius, f32 height, u8 param_2, u8 param_3);
|
||||
void SetAttr(f32 radius, f32 height, u8 param_2, u8 param_3) {
|
||||
mCylAttr.SetR(radius);
|
||||
mCylAttr.SetH(height);
|
||||
field_0x200 = param_2;
|
||||
mResultCamBit = param_3;
|
||||
}
|
||||
void Prepare();
|
||||
u32 Chk(cXyz* p_xyz, fopAc_ac_c** p_actor, dCcMassS_HitInf* p_hitInf);
|
||||
void Clear();
|
||||
|
||||
+146
-64
@@ -8,6 +8,7 @@
|
||||
#include "m_Do/m_Do_ext.h"
|
||||
|
||||
class ResTIMG;
|
||||
class cM3dGPla;
|
||||
|
||||
class dDlst_base_c {
|
||||
public:
|
||||
@@ -19,6 +20,8 @@ public:
|
||||
class dDlst_2D_c : public dDlst_base_c {
|
||||
public:
|
||||
dDlst_2D_c(ResTIMG * pTIMG, s16 w, s16 h, u8 alpha);
|
||||
virtual void draw();
|
||||
|
||||
J2DPicture * getPicture() { return &mPicture; }
|
||||
void setAlpha(u8 alpha) { mAlpha = alpha; }
|
||||
|
||||
@@ -30,6 +33,52 @@ protected:
|
||||
/* 0x12D */ u8 field_0x12e[3];
|
||||
};
|
||||
|
||||
class dDlst_2DTri_c : public dDlst_base_c {
|
||||
public:
|
||||
virtual void draw();
|
||||
};
|
||||
|
||||
class dDlst_2DPoint_c : public dDlst_base_c {
|
||||
public:
|
||||
virtual void draw();
|
||||
};
|
||||
|
||||
class dDlst_2DT_c : public dDlst_base_c {
|
||||
public:
|
||||
virtual void draw();
|
||||
};
|
||||
|
||||
class dDlst_2DT2_c : public dDlst_base_c {
|
||||
public:
|
||||
void init(ResTIMG* pTimg, f32, f32, f32, f32, u8, u8, u8, f32, f32);
|
||||
virtual void draw();
|
||||
};
|
||||
|
||||
class dDlst_2DM_c : public dDlst_base_c {
|
||||
public:
|
||||
virtual void draw();
|
||||
};
|
||||
|
||||
class dDlst_2Dm_c : public dDlst_base_c {
|
||||
public:
|
||||
void init(ResTIMG*, ResTIMG*, f32, f32);
|
||||
void setPos(s16, s16, s16, s16);
|
||||
void setScale(f32, f32);
|
||||
void setScroll(int, s16, s16);
|
||||
virtual void draw();
|
||||
};
|
||||
|
||||
class dDlst_2DMt_c : public dDlst_base_c {
|
||||
public:
|
||||
virtual void draw();
|
||||
};
|
||||
|
||||
class dDlst_effectLine_c : public dDlst_base_c {
|
||||
public:
|
||||
void update(cXyz&, GXColor&, u16, u16, u16, u16, f32, f32, f32, f32);
|
||||
virtual void draw();
|
||||
};
|
||||
|
||||
class dDlst_window_c {
|
||||
public:
|
||||
dDlst_window_c() {}
|
||||
@@ -69,7 +118,8 @@ class dDlst_shadowSimple_c {
|
||||
public:
|
||||
void draw();
|
||||
void set(cXyz*, f32, f32, cXyz*, s16, f32, GXTexObj*);
|
||||
dDlst_shadowSimple_c();
|
||||
dDlst_shadowSimple_c() {}
|
||||
~dDlst_shadowSimple_c() {}
|
||||
|
||||
/* 0x00 */ u8 mAlpha;
|
||||
/* 0x04 */ GXTexObj* mpTexObj;
|
||||
@@ -91,14 +141,15 @@ class dDlst_shadowPoly_c {
|
||||
public:
|
||||
dDlst_shadowPoly_c() { reset(); }
|
||||
|
||||
virtual dDlst_shadowTri_c* getTri() = 0;
|
||||
virtual s32 getTriMax() = 0;
|
||||
|
||||
void reset() { mCount = 0; }
|
||||
|
||||
int set(cBgD_Vtx_t*, u16, u16, u16, cM3dGPla*);
|
||||
int set(cXyz&, cXyz&, cXyz&);
|
||||
void draw();
|
||||
|
||||
virtual dDlst_shadowTri_c* getTri() = 0;
|
||||
virtual s32 getTriMax() = 0;
|
||||
|
||||
/* 0x4 */ u16 mCount;
|
||||
/* 0x6 */ u8 field_0x6[2];
|
||||
};
|
||||
@@ -118,8 +169,10 @@ public:
|
||||
void reset();
|
||||
void imageDraw(f32 (*)[4]);
|
||||
void draw();
|
||||
u32 set(u32, J3DModel*, cXyz*, f32, f32, dKy_tevstr_c*, f32, f32);
|
||||
u32 set(u32, s8, J3DModel*, cXyz*, f32, f32, dKy_tevstr_c*);
|
||||
u32 set2(u32, s8, J3DModel*, cXyz*, f32, f32, dKy_tevstr_c*);
|
||||
bool add(J3DModel*);
|
||||
void init();
|
||||
~dDlst_shadowReal_c() {}
|
||||
dDlst_shadowReal_c() { mState = 0; }
|
||||
|
||||
@@ -127,21 +180,23 @@ public:
|
||||
bool isUse() { return mState == 1; }
|
||||
bool checkKey(u32 i_key) { return mKey == i_key; }
|
||||
|
||||
enum { MODEL_MAX = 0x1A };
|
||||
|
||||
private:
|
||||
/* 0x0000 */ u8 mState;
|
||||
/* 0x0001 */ u8 field_0x1;
|
||||
/* 0x0002 */ u8 mModelNum;
|
||||
/* 0x0003 */ u8 field_0x3;
|
||||
/* 0x0002 */ u8 mAlpha;
|
||||
/* 0x0003 */ u8 mModelNum;
|
||||
/* 0x0004 */ u32 mKey;
|
||||
/* 0x0008 */ Mtx mViewMtx;
|
||||
/* 0x0038 */ Mtx44 mRenderProjMtx;
|
||||
/* 0x0078 */ Mtx mReceiverProjMtx;
|
||||
/* 0x00A8 */ void* mpTexData;
|
||||
/* 0x00AC */ dDlst_shadowRealPoly_c mShadowRealPoly;
|
||||
/* 0x24B4 */ GXTexObj mTexData;
|
||||
/* 0x24B4 */ GXTexObj mTexObj;
|
||||
/* 0x24D4 */ J3DDrawBuffer* mpDrawBuffer;
|
||||
/* 0x24D8 */ J3DCallBackPacket* mpPacket;
|
||||
/* 0x24DC */ J3DModel* mpModels[26];
|
||||
/* 0x24D8 */ J3DCallBackPacket* mpCallBack;
|
||||
/* 0x24DC */ J3DModel* mpModels[MODEL_MAX];
|
||||
}; // Size: 0x2544
|
||||
|
||||
class dDlst_shadowControl_c {
|
||||
@@ -172,6 +227,10 @@ STATIC_ASSERT(sizeof(dDlst_shadowControl_c) == 0x15E28);
|
||||
|
||||
class dDlst_mirrorPacket : public J3DPacket {
|
||||
public:
|
||||
void init(ResTIMG*);
|
||||
void update(Mtx, u8, f32);
|
||||
virtual void draw();
|
||||
|
||||
/* 0x0010 */ u8 field_0x0010[0x0040 - 0x0010];
|
||||
/* 0x0040 */ Mtx mPosMtx;
|
||||
/* 0x0070 */ u8 field_0x0070[0x0080 - 0x0070];
|
||||
@@ -185,7 +244,13 @@ struct view_port_class;
|
||||
struct view_class;
|
||||
struct camera_class;
|
||||
|
||||
struct dDlst_alphaModelData_c;
|
||||
struct dDlst_alphaModelData_c {
|
||||
public:
|
||||
dDlst_alphaModelData_c();
|
||||
~dDlst_alphaModelData_c();
|
||||
void set(u8, Mtx, u8);
|
||||
void draw(Mtx);
|
||||
};
|
||||
|
||||
struct dDlst_alphaModel_c {
|
||||
public:
|
||||
@@ -199,8 +264,8 @@ public:
|
||||
};
|
||||
|
||||
dDlst_alphaModel_c();
|
||||
void create(int);
|
||||
void set(u8 type, Mtx mtx, u8 alpha);
|
||||
static dDlst_alphaModel_c * create(int);
|
||||
BOOL set(u8 type, Mtx mtx, u8 alpha);
|
||||
void draw(MtxP);
|
||||
s32 getNum() { return mNum; }
|
||||
|
||||
@@ -211,53 +276,69 @@ public:
|
||||
/* 0x08 */ dDlst_alphaModelData_c* mpData;
|
||||
}; // Size: 0xC
|
||||
|
||||
struct dDlst_alphaModelPacket : public J3DPacket {
|
||||
public:
|
||||
virtual void draw();
|
||||
};
|
||||
|
||||
struct dDlst_alphaVolPacket : public J3DPacket {
|
||||
public:
|
||||
virtual void draw();
|
||||
};
|
||||
|
||||
struct dDlst_alphaInvVolPacket : public J3DPacket {
|
||||
public:
|
||||
virtual void draw();
|
||||
};
|
||||
|
||||
class dDlst_list_c {
|
||||
public:
|
||||
dDlst_list_c();
|
||||
~dDlst_list_c();
|
||||
|
||||
void init();
|
||||
bool init();
|
||||
void reset();
|
||||
void entryZSortXluDrawList(J3DDrawBuffer*, J3DPacket*, cXyz&);
|
||||
void set(dDlst_base_c**&, dDlst_base_c**&, dDlst_base_c*);
|
||||
bool set(dDlst_base_c**&, dDlst_base_c**&, dDlst_base_c*);
|
||||
void draw(dDlst_base_c**, dDlst_base_c**);
|
||||
void wipeIn(f32, GXColor&);
|
||||
void wipeIn(f32);
|
||||
static void wipeIn(f32, GXColor&);
|
||||
static void wipeIn(f32);
|
||||
void calcWipe();
|
||||
|
||||
J3DDrawBuffer* getOpaListFilter() { return mpWetherFxBuffer; }
|
||||
J3DDrawBuffer* getOpaListFilter() { return mpOpaListFilter; }
|
||||
|
||||
void setXluDrawList(J3DDrawBuffer* buffer) { j3dSys.setDrawBuffer(buffer, XLU_BUFFER); }
|
||||
void setOpaDrawList(J3DDrawBuffer* buffer) { j3dSys.setDrawBuffer(buffer, OPA_BUFFER); }
|
||||
void setOpaList() { setOpaDrawList(mpBufInvisibleModelOpa); }
|
||||
void setXluList() { setXluDrawList(mpBufInvisibleModelXlu); }
|
||||
void setOpaListInvisible() { setOpaDrawList(field_0x00030); }
|
||||
void setXluListInvisible() { setXluDrawList(field_0x00034); }
|
||||
void setOpaListMaskOff() { setOpaDrawList(mpBufInvisibleModelMaskOffOpa); }
|
||||
void setXluListMaskOff() { setXluDrawList(mpBufInvisibleModelMaskOffXlu); }
|
||||
void setOpaListSky() { setOpaDrawList(mpBufSkyOpa); }
|
||||
void setXluListSky() { setXluDrawList(mpBufSkyXlu); }
|
||||
void setOpaListP0() { setOpaDrawList(mpLinkBuf); }
|
||||
void setXluListP0() { setXluDrawList(mpLinkBuf); }
|
||||
void setOpaListP1() { setOpaDrawList(field_0x0000c); }
|
||||
void setXluListP1() { setXluDrawList(field_0x00010); }
|
||||
void setOpaListBG() { setOpaDrawList(mpBufWorldOpa); }
|
||||
void setXluListBG() { setXluDrawList(mpBufWorldXlu); }
|
||||
void setOpaListFilter() { setOpaDrawList(mpWetherFxBuffer); }
|
||||
void setXluListFilter() { setXluDrawList(mpWetherFxBuffer); }
|
||||
void setOpaList2D() { setOpaDrawList(field_0x00038); }
|
||||
void setXluList2D() { setXluDrawList(field_0x00038); }
|
||||
void setOpaList() { setOpaDrawList(mpOpaList); }
|
||||
void setXluList() { setXluDrawList(mpXluList); }
|
||||
void setOpaListInvisible() { setOpaDrawList(mpOpaListInvisible); }
|
||||
void setXluListInvisible() { setXluDrawList(mpXluListInvisible); }
|
||||
void setOpaListMaskOff() { setOpaDrawList(mpOpaListMaskOff); }
|
||||
void setXluListMaskOff() { setXluDrawList(mpXluListMaskOff); }
|
||||
void setOpaListSky() { setOpaDrawList(mpOpaListSky); }
|
||||
void setXluListSky() { setXluDrawList(mpXluListSky); }
|
||||
void setOpaListP0() { setOpaDrawList(mpOpaListP0); }
|
||||
void setXluListP0() { setXluDrawList(mpOpaListP0); }
|
||||
void setOpaListP1() { setOpaDrawList(mpOpaListP1); }
|
||||
void setXluListP1() { setXluDrawList(mpXluListP1); }
|
||||
void setOpaListBG() { setOpaDrawList(mpOpaListBG); }
|
||||
void setXluListBG() { setXluDrawList(mpXluListBG); }
|
||||
void setOpaListFilter() { setOpaDrawList(mpOpaListFilter); }
|
||||
void setXluListFilter() { setXluDrawList(mpOpaListFilter); }
|
||||
void setOpaList2D() { setOpaDrawList(mpOpaList2D); }
|
||||
void setXluList2D() { setXluDrawList(mpOpaList2D); }
|
||||
|
||||
void entryZSortXluList(J3DPacket* i_packet, cXyz& param_1) {
|
||||
entryZSortXluDrawList(mpBufInvisibleModelXlu, i_packet, param_1);
|
||||
void entryZSortXluList(J3DPacket* i_packet, cXyz& pos) {
|
||||
entryZSortXluDrawList(mpXluList, i_packet, pos);
|
||||
}
|
||||
|
||||
void entryZSortXluListMaskOff(J3DPacket* i_packet, cXyz& param_1) {
|
||||
entryZSortXluDrawList(mpBufInvisibleModelMaskOffXlu, i_packet, param_1);
|
||||
void entryZSortXluListMaskOff(J3DPacket* i_packet, cXyz& pos) {
|
||||
entryZSortXluDrawList(mpXluListMaskOff, i_packet, pos);
|
||||
}
|
||||
|
||||
void set2DOpa(dDlst_base_c* pList) { set(mp2DOpa, mp2DOpaEnd, pList); }
|
||||
void set2DXlu(dDlst_base_c* pList) { set(mp2DXlu, mp2DXluEnd, pList); }
|
||||
void set2DOpaTop(dDlst_base_c* pItem) { set(mp2DOpaTop, mp2DOpaTopEnd, pItem); }
|
||||
void set2DOpa(dDlst_base_c* pItem) { set(mp2DOpa, mp2DOpaEnd, pItem); }
|
||||
void set2DXlu(dDlst_base_c* pItem) { set(mp2DXlu, mp2DXluEnd, pItem); }
|
||||
|
||||
int setSimpleShadow(cXyz* param_0, f32 param_1, f32 param_2, cXyz* param_3, s16 param_4,
|
||||
f32 param_5, _GXTexObj* param_6) {
|
||||
@@ -283,30 +364,31 @@ public:
|
||||
|
||||
static bool mWipe;
|
||||
|
||||
/* 0x00000 */ J3DDrawBuffer* mpBufSkyOpa;
|
||||
/* 0x00004 */ J3DDrawBuffer* mpBufSkyXlu;
|
||||
/* 0x00008 */ J3DDrawBuffer* mpLinkBuf;
|
||||
/* 0x0000C */ J3DDrawBuffer* field_0x0000c;
|
||||
/* 0x00010 */ J3DDrawBuffer* field_0x00010;
|
||||
/* 0x00014 */ J3DDrawBuffer* mpBufWorldOpa;
|
||||
/* 0x00018 */ J3DDrawBuffer* mpBufWorldXlu;
|
||||
/* 0x0001C */ J3DDrawBuffer* mpBufInvisibleModelOpa;
|
||||
/* 0x00020 */ J3DDrawBuffer* mpBufInvisibleModelXlu;
|
||||
/* 0x00024 */ J3DDrawBuffer* mpWetherFxBuffer;
|
||||
/* 0x00028 */ J3DDrawBuffer* mpBufInvisibleModelMaskOffOpa;
|
||||
/* 0x0002C */ J3DDrawBuffer* mpBufInvisibleModelMaskOffXlu;
|
||||
/* 0x00030 */ J3DDrawBuffer* field_0x00030;
|
||||
/* 0x00034 */ J3DDrawBuffer* field_0x00034;
|
||||
/* 0x00038 */ J3DDrawBuffer* field_0x00038;
|
||||
/* 0x0003C */ u8 field_0x0003C[0x00050 - 0x0003C];
|
||||
/* 0x00050 */ void* field_0x00050;
|
||||
/* 0x00054 */ u8 field_0x00054[0x00094 - 0x00054];
|
||||
/* 0x00094 */ dDlst_base_c** field_0x00094;
|
||||
/* 0x00098 */ void* field_0x00098;
|
||||
/* 0x0009C */ dDlst_base_c* mp2DArr[64];
|
||||
/* 0x00000 */ J3DDrawBuffer* mpOpaListSky;
|
||||
/* 0x00004 */ J3DDrawBuffer* mpXluListSky;
|
||||
/* 0x00008 */ J3DDrawBuffer* mpOpaListP0;
|
||||
/* 0x0000C */ J3DDrawBuffer* mpOpaListP1;
|
||||
/* 0x00010 */ J3DDrawBuffer* mpXluListP1;
|
||||
/* 0x00014 */ J3DDrawBuffer* mpOpaListBG;
|
||||
/* 0x00018 */ J3DDrawBuffer* mpXluListBG;
|
||||
/* 0x0001C */ J3DDrawBuffer* mpOpaList;
|
||||
/* 0x00020 */ J3DDrawBuffer* mpXluList;
|
||||
/* 0x00024 */ J3DDrawBuffer* mpOpaListFilter;
|
||||
/* 0x00028 */ J3DDrawBuffer* mpOpaListMaskOff;
|
||||
/* 0x0002C */ J3DDrawBuffer* mpXluListMaskOff;
|
||||
/* 0x00030 */ J3DDrawBuffer* mpOpaListInvisible;
|
||||
/* 0x00034 */ J3DDrawBuffer* mpXluListInvisible;
|
||||
/* 0x00038 */ J3DDrawBuffer* mpOpaList2D;
|
||||
/* 0x0003C */ dDlst_base_c* field_0x3c[4];
|
||||
/* 0x0004C */ dDlst_base_c** field_0x4c;
|
||||
/* 0x00050 */ dDlst_base_c** field_0x50;
|
||||
/* 0x00054 */ dDlst_base_c* mp2DOpaTopArr[16];
|
||||
/* 0x00094 */ dDlst_base_c** mp2DOpaTop;
|
||||
/* 0x00098 */ dDlst_base_c** mp2DOpaTopEnd;
|
||||
/* 0x0009C */ dDlst_base_c* mp2DOpaArr[64];
|
||||
/* 0x0019C */ dDlst_base_c** mp2DOpa;
|
||||
/* 0x001A0 */ dDlst_base_c** mp2DOpaEnd;
|
||||
/* 0x001A4 */ u8 field_0x001A4[0x00224 - 0x001A4];
|
||||
/* 0x001A4 */ dDlst_base_c* mp2DXluArr[32];
|
||||
/* 0x00224 */ dDlst_base_c** mp2DXlu;
|
||||
/* 0x00228 */ dDlst_base_c** mp2DXluEnd;
|
||||
/* 0x0022C */ dDlst_window_c* mpWindow;
|
||||
|
||||
+11
-3
@@ -16,7 +16,14 @@ public:
|
||||
|
||||
class JntHit_c {
|
||||
public:
|
||||
void CreateInit();
|
||||
JntHit_c()
|
||||
: mpModel(NULL)
|
||||
, field_0x08(NULL)
|
||||
, field_0x0C(NULL)
|
||||
, field_0x10(NULL)
|
||||
, field_0x1C(NULL) {}
|
||||
|
||||
BOOL CreateInit();
|
||||
void CylHitPosAngleOffset(cXyz*, csXyz*, cXyz*, csXyz*, cXyz, cXyz, f32);
|
||||
void Cyl2HitPosAngleOffset(cXyz*, csXyz*, cXyz*, csXyz*, cXyz, cXyz, f32);
|
||||
void SphHitPosAngleOffset(cXyz*, csXyz*, cXyz*, csXyz*, cXyz, f32);
|
||||
@@ -28,11 +35,12 @@ public:
|
||||
/* 0x00 */ __jnt_hit_data_c* mpHitData;
|
||||
/* 0x04 */ J3DModel* mpModel;
|
||||
/* 0x08 */ cXyz* field_0x08;
|
||||
/* 0x0C */ short* field_0x0c;
|
||||
/* 0x0C */ short* field_0x0C;
|
||||
/* 0x10 */ short* field_0x10;
|
||||
/* 0x14 */ short* mpJointIndexes;
|
||||
/* 0x18 */ s16 mHitDataCount;
|
||||
/* 0x1A */ u8 field_0x1A[0x20 - 0x1A];
|
||||
/* 0x1A */ u8 field_0x1A[2];
|
||||
/* 0x1C */ void* field_0x1C;
|
||||
};
|
||||
|
||||
class JntHit_HIO_c {
|
||||
|
||||
@@ -5,6 +5,7 @@
|
||||
#include "SSystem/SComponent/c_sxyz.h"
|
||||
#include "SSystem/SComponent/c_phase.h"
|
||||
#include "SSystem/SComponent/c_angle.h"
|
||||
#include "SSystem/SComponent/c_rnd.h"
|
||||
#include "d/d_cam_param.h"
|
||||
#include "global.h"
|
||||
|
||||
@@ -47,12 +48,6 @@ class d2DBSplinePath {
|
||||
/* 0x40 */ void* vtbl;
|
||||
};
|
||||
|
||||
struct cM_rnd_c {
|
||||
/* 0x0 */ int m0;
|
||||
/* 0x4 */ int m4;
|
||||
/* 0x8 */ int m8;
|
||||
};
|
||||
|
||||
class dCamForcusLine {
|
||||
/* 0x00 */ void* vtbl;
|
||||
/* 0x04 */ cM_rnd_c mRnd;
|
||||
|
||||
@@ -403,7 +403,7 @@ public:
|
||||
|
||||
void reset() { mp3DlineMat = NULL; }
|
||||
|
||||
void setMat(mDoExt_3DlineMat_c*);
|
||||
void setMat(mDoExt_3DlineMat_c* pMat) { mp3DlineMat = pMat; }
|
||||
virtual void draw();
|
||||
virtual ~mDoExt_3DlineMatSortPacket();
|
||||
|
||||
|
||||
@@ -532,7 +532,7 @@ int dComIfG_resDelete(request_of_phase_process_class* i_phase, const char* i_res
|
||||
JUT_ASSERT(1048, i_phase->id != 1);
|
||||
|
||||
if (i_phase->id == cPhs_NEXT_e) {
|
||||
dComIfG_deleteObjectResMain(i_resName);
|
||||
dComIfG_deleteObjectRes(i_resName);
|
||||
i_phase->id = cPhs_INIT_e;
|
||||
}
|
||||
|
||||
@@ -1079,12 +1079,12 @@ int dComIfGd_setShadow(u32 id, s8 param_2, J3DModel* pModel, cXyz* pPos, f32 par
|
||||
return sid;
|
||||
}
|
||||
|
||||
static const char * dummy_str[] = {
|
||||
"0 <= cam_id && cam_id < mapc->num",
|
||||
"0 <= arrow_id && arrow_id < mapa->num",
|
||||
"0 <= room_cam_id && room_cam_id < pcam->num",
|
||||
"0 <= arrow_id && arrow_id < parr->num",
|
||||
};
|
||||
static void dummy() {
|
||||
OSReport("0 <= cam_id && cam_id < mapc->num");
|
||||
OSReport("0 <= arrow_id && arrow_id < mapa->num");
|
||||
OSReport("0 <= room_cam_id && room_cam_id < pcam->num");
|
||||
OSReport("0 <= arrow_id && arrow_id < parr->num");
|
||||
}
|
||||
|
||||
/* 8005468C-800547BC .text getSceneList__Fi */
|
||||
stage_scls_info_class* getSceneList(int i_no) {
|
||||
@@ -1205,9 +1205,7 @@ void dComIfGs_setGameStartStage() {
|
||||
room_no = scls_p->mRoom;
|
||||
point = scls_p->mStart;
|
||||
}
|
||||
} else if (stage_type == 1 || stage_type == 6 || stage_type == 3 || stage_type == 8 ||
|
||||
save_tbl == 9)
|
||||
{
|
||||
} else if (stage_type == 1 || stage_type == 6 || stage_type == 3 || stage_type == 8 || save_tbl == 9) {
|
||||
stage_scls_info_class* scls_p = getSceneList(0);
|
||||
strcpy(stage_name, scls_p->mStage);
|
||||
room_no = scls_p->mRoom;
|
||||
@@ -1226,8 +1224,7 @@ void dComIfGs_setGameStartStage() {
|
||||
stage_map_info_class* mapInfo = dComIfGp_getStage().getMapInfo();
|
||||
JUT_ASSERT(2362, mapInfo != 0);
|
||||
|
||||
room_no = dStage_mapInfo_GetOceanX(mapInfo) +
|
||||
(((dStage_mapInfo_GetOceanZ(mapInfo) + 3) * 7) + 4);
|
||||
room_no = 4 + dStage_mapInfo_GetOceanX(mapInfo) + ((dStage_mapInfo_GetOceanZ(mapInfo) + 3) * 7);
|
||||
point = 0;
|
||||
} else {
|
||||
strcpy(stage_name, "sea");
|
||||
|
||||
+164
-186
@@ -3,17 +3,29 @@
|
||||
// Translation Unit: d_drawlist.cpp
|
||||
//
|
||||
|
||||
#include "d_drawlist.h"
|
||||
#include "dolphin/types.h"
|
||||
#include "d/d_drawlist.h"
|
||||
#include "d/d_com_inf_game.h"
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
#include "JSystem/JUtility/JUTAssert.h"
|
||||
#include "SSystem/SComponent/c_rnd.h"
|
||||
#include "SSystem/SComponent/c_bg_s_shdw_draw.h"
|
||||
|
||||
/* 800804A4-800804C0 .text setViewPort__14dDlst_window_cFffffff */
|
||||
void dDlst_window_c::setViewPort(f32, f32, f32, f32, f32, f32) {
|
||||
/* Nonmatching */
|
||||
void dDlst_window_c::setViewPort(f32 x, f32 y, f32 w, f32 h, f32 n, f32 f) {
|
||||
mViewport.mXOrig = x;
|
||||
mViewport.mYOrig = y;
|
||||
mViewport.mWidth = w;
|
||||
mViewport.mHeight = h;
|
||||
mViewport.mNearZ = n;
|
||||
mViewport.mFarZ = f;
|
||||
}
|
||||
|
||||
/* 800804C0-800804D4 .text setScissor__14dDlst_window_cFffff */
|
||||
void dDlst_window_c::setScissor(f32, f32, f32, f32) {
|
||||
/* Nonmatching */
|
||||
void dDlst_window_c::setScissor(f32 x, f32 y, f32 w, f32 h) {
|
||||
mViewport.mScissor.mXOrig = x;
|
||||
mViewport.mScissor.mYOrig = y;
|
||||
mViewport.mScissor.mWidth = w;
|
||||
mViewport.mScissor.mHeight = h;
|
||||
}
|
||||
|
||||
/* 800804D4-80080694 .text draw__13dDlst_2DTri_cFv */
|
||||
@@ -86,31 +98,6 @@ void dDlst_2D_c::draw() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80082264-80082274 .text init__8cM_rnd_cFiii */
|
||||
void cM_rnd_c::init(int, int, int) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80082274-80082368 .text get__8cM_rnd_cFv */
|
||||
void cM_rnd_c::get() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80082368-800823A0 .text getF__8cM_rnd_cFf */
|
||||
void cM_rnd_c::getF(f32) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 800823A0-800823E8 .text getFX__8cM_rnd_cFf */
|
||||
void cM_rnd_c::getFX(f32) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 800823E8-80082424 .text getValue__8cM_rnd_cFff */
|
||||
void cM_rnd_c::getValue(f32, f32) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80082424-80082794 .text draw__18dDlst_effectLine_cFv */
|
||||
void dDlst_effectLine_c::draw() {
|
||||
/* Nonmatching */
|
||||
@@ -122,12 +109,12 @@ void dDlst_effectLine_c::update(cXyz&, _GXColor&, u16, u16, u16, u16, f32, f32,
|
||||
}
|
||||
|
||||
/* 80082828-80082838 .text set__22dDlst_alphaModelData_cFUcPA4_fUc */
|
||||
void dDlst_alphaModelData_c::set(u8, f32(*)[4], u8) {
|
||||
void dDlst_alphaModelData_c::set(u8, Mtx, u8) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80082838-80082E44 .text draw__22dDlst_alphaModelData_cFPA4_f */
|
||||
void dDlst_alphaModelData_c::draw(f32(*)[4]) {
|
||||
void dDlst_alphaModelData_c::draw(Mtx) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
@@ -137,7 +124,7 @@ dDlst_alphaModel_c::dDlst_alphaModel_c() {
|
||||
}
|
||||
|
||||
/* 80082E58-80082EFC .text create__18dDlst_alphaModel_cFi */
|
||||
void dDlst_alphaModel_c::create(int) {
|
||||
dDlst_alphaModel_c * dDlst_alphaModel_c::create(int) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
@@ -152,12 +139,12 @@ dDlst_alphaModelData_c::dDlst_alphaModelData_c() {
|
||||
}
|
||||
|
||||
/* 80082F3C-80082F9C .text set__18dDlst_alphaModel_cFUcPA4_fUc */
|
||||
void dDlst_alphaModel_c::set(u8, f32(*)[4], u8) {
|
||||
BOOL dDlst_alphaModel_c::set(u8 type, Mtx mtx, u8 alpha) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80082F9C-80083064 .text draw__18dDlst_alphaModel_cFPA4_f */
|
||||
void dDlst_alphaModel_c::draw(f32(*)[4]) {
|
||||
void dDlst_alphaModel_c::draw(Mtx) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
@@ -167,12 +154,12 @@ void dDlst_alphaModelPacket::draw() {
|
||||
}
|
||||
|
||||
/* 800832C4-800833CC .text set__18dDlst_shadowPoly_cFP10cBgD_Vtx_tUsUsUsP8cM3dGPla */
|
||||
void dDlst_shadowPoly_c::set(cBgD_Vtx_t*, u16, u16, u16, cM3dGPla*) {
|
||||
int dDlst_shadowPoly_c::set(cBgD_Vtx_t*, u16, u16, u16, cM3dGPla*) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 800833CC-800834A4 .text set__18dDlst_shadowPoly_cFR4cXyzR4cXyzR4cXyz */
|
||||
void dDlst_shadowPoly_c::set(cXyz&, cXyz&, cXyz&) {
|
||||
int dDlst_shadowPoly_c::set(cXyz&, cXyz&, cXyz&) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
@@ -181,33 +168,34 @@ void dDlst_shadowPoly_c::draw() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80083568-80083608 .text __dt__18dDlst_shadowReal_cFv */
|
||||
dDlst_shadowReal_c::~dDlst_shadowReal_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80083608-80083668 .text __dt__17dDlst_shadowTri_cFv */
|
||||
dDlst_shadowTri_c::~dDlst_shadowTri_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80083668-800836E0 .text J3DDrawBuffer__create__FUl */
|
||||
void J3DDrawBuffer__create__FUl {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 800836E0-800837F0 .text init__18dDlst_shadowReal_cFv */
|
||||
void dDlst_shadowReal_c::init() {
|
||||
/* Nonmatching */
|
||||
u32 texDataSize = GXGetTexBufferSize(0x80, 0x80, GX_TF_I4, GX_FALSE, 0);
|
||||
mpTexData = new(0x20) u8[texDataSize];
|
||||
|
||||
GXInitTexObj(&mTexObj, mpTexData, 0x80, 0x80, GX_TF_I4, GX_CLAMP, GX_CLAMP, GX_FALSE);
|
||||
GXInitTexObjLOD(&mTexObj, GX_LINEAR, GX_LINEAR, 0.0f, 0.0f, 0.0f, 0.0f, GX_FALSE, GX_ANISO_1);
|
||||
|
||||
mpCallBack = new J3DCallBackPacket();
|
||||
mpDrawBuffer = new J3DDrawBuffer();
|
||||
mpDrawBuffer->setInvalidSort();
|
||||
}
|
||||
|
||||
/* 800837F0-80083850 .text reset__18dDlst_shadowReal_cFv */
|
||||
void dDlst_shadowReal_c::reset() {
|
||||
/* Nonmatching */
|
||||
if (mState == 1) {
|
||||
mState = 2;
|
||||
} else {
|
||||
mState = 0;
|
||||
field_0x1 = -1;
|
||||
}
|
||||
|
||||
mpDrawBuffer->frameInit();
|
||||
mModelNum = 0;
|
||||
}
|
||||
|
||||
/* 80083850-8008398C .text imageDraw__18dDlst_shadowReal_cFPA4_f */
|
||||
void dDlst_shadowReal_c::imageDraw(f32(*)[4]) {
|
||||
void dDlst_shadowReal_c::imageDraw(Mtx) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
@@ -231,34 +219,34 @@ void realPolygonCheck(cXyz*, f32, f32, cXyz*, dDlst_shadowPoly_c*) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 800840B0-80084138 .text __dt__14ShdwDrawPoly_cFv */
|
||||
ShdwDrawPoly_c::~ShdwDrawPoly_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80084138-800841B0 .text __dt__13cBgS_ShdwDrawFv */
|
||||
cBgS_ShdwDraw::~cBgS_ShdwDraw() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 800841B0-8008450C .text setShadowRealMtx__FPA4_fPA4_fPA4_fP4cXyzP4cXyzffP18dDlst_shadowPoly_cf */
|
||||
void setShadowRealMtx(f32(*)[4], f32(*)[4], f32(*)[4], cXyz*, cXyz*, f32, f32, dDlst_shadowPoly_c*, f32) {
|
||||
void setShadowRealMtx(Mtx, Mtx, Mtx, cXyz*, cXyz*, f32, f32, dDlst_shadowPoly_c*, f32) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8008450C-800846C8 .text set__18dDlst_shadowReal_cFUlScP8J3DModelP4cXyzffP12dKy_tevstr_c */
|
||||
void dDlst_shadowReal_c::set(u32, s8, J3DModel*, cXyz*, f32, f32, dKy_tevstr_c*) {
|
||||
u32 dDlst_shadowReal_c::set(u32, s8, J3DModel*, cXyz*, f32, f32, dKy_tevstr_c*) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 800846C8-80084844 .text set2__18dDlst_shadowReal_cFUlScP8J3DModelP4cXyzffP12dKy_tevstr_c */
|
||||
void dDlst_shadowReal_c::set2(u32, s8, J3DModel*, cXyz*, f32, f32, dKy_tevstr_c*) {
|
||||
u32 dDlst_shadowReal_c::set2(u32, s8, J3DModel*, cXyz*, f32, f32, dKy_tevstr_c*) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80084844-800848E8 .text add__18dDlst_shadowReal_cFP8J3DModel */
|
||||
void dDlst_shadowReal_c::add(J3DModel*) {
|
||||
/* Nonmatching */
|
||||
bool dDlst_shadowReal_c::add(J3DModel* model) {
|
||||
if (mModelNum == 0 || model == NULL)
|
||||
return false;
|
||||
|
||||
JUT_ASSERT(0xfe0, mModelNum < MODEL_MAX);
|
||||
mpModels[mModelNum++] = model;
|
||||
return true;
|
||||
}
|
||||
|
||||
/* 800848E8-80084AC8 .text draw__20dDlst_shadowSimple_cFv */
|
||||
@@ -282,32 +270,32 @@ void dDlst_shadowControl_c::reset() {
|
||||
}
|
||||
|
||||
/* 80084DEC-80084EF0 .text imageDraw__21dDlst_shadowControl_cFPA4_f */
|
||||
void dDlst_shadowControl_c::imageDraw(f32(*)[4]) {
|
||||
void dDlst_shadowControl_c::imageDraw(Mtx) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80084EF0-800850D4 .text draw__21dDlst_shadowControl_cFPA4_f */
|
||||
void dDlst_shadowControl_c::draw(f32(*)[4]) {
|
||||
void dDlst_shadowControl_c::draw(Mtx) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 800850D4-80085170 .text setReal__21dDlst_shadowControl_cFUlScP8J3DModelP4cXyzffP12dKy_tevstr_c */
|
||||
void dDlst_shadowControl_c::setReal(u32, s8, J3DModel*, cXyz*, f32, f32, dKy_tevstr_c*) {
|
||||
int dDlst_shadowControl_c::setReal(u32, s8, J3DModel*, cXyz*, f32, f32, dKy_tevstr_c*) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80085170-8008520C .text setReal2__21dDlst_shadowControl_cFUlScP8J3DModelP4cXyzffP12dKy_tevstr_c */
|
||||
void dDlst_shadowControl_c::setReal2(u32, s8, J3DModel*, cXyz*, f32, f32, dKy_tevstr_c*) {
|
||||
int dDlst_shadowControl_c::setReal2(u32, s8, J3DModel*, cXyz*, f32, f32, dKy_tevstr_c*) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8008520C-80085274 .text addReal__21dDlst_shadowControl_cFUlP8J3DModel */
|
||||
void dDlst_shadowControl_c::addReal(u32, J3DModel*) {
|
||||
bool dDlst_shadowControl_c::addReal(u32, J3DModel*) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80085274-800852D8 .text setSimple__21dDlst_shadowControl_cFP4cXyzffP4cXyzsfP9_GXTexObj */
|
||||
void dDlst_shadowControl_c::setSimple(cXyz*, f32, f32, cXyz*, s16, f32, _GXTexObj*) {
|
||||
int dDlst_shadowControl_c::setSimple(cXyz*, f32, f32, cXyz*, s16, f32, _GXTexObj*) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
@@ -332,7 +320,7 @@ void mirrorPolygonCheck(cXyz*, cXyz*, f32, dDlst_shadowPoly_c*) {
|
||||
}
|
||||
|
||||
/* 80085808-800859DC .text update__18dDlst_mirrorPacketFPA4_fUcf */
|
||||
void dDlst_mirrorPacket::update(f32(*)[4], u8, f32) {
|
||||
void dDlst_mirrorPacket::update(Mtx, u8, f32) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
@@ -347,7 +335,7 @@ void dDlst_alphaInvVolPacket::draw() {
|
||||
}
|
||||
|
||||
/* 80085BBC-80085BFC .text newData__13dDlst_peekZ_cFssPUl */
|
||||
void dDlst_peekZ_c::newData(s16, s16, u32*) {
|
||||
int dDlst_peekZ_c::newData(s16, s16, u32*) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
@@ -361,44 +349,57 @@ dDlst_list_c::dDlst_list_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80085D74-80085DA4 .text __ct__26mDoExt_3DlineMatSortPacketFv */
|
||||
mDoExt_3DlineMatSortPacket::mDoExt_3DlineMatSortPacket() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80085DA4-80085E18 .text __ct__18dDlst_shadowReal_cFv */
|
||||
dDlst_shadowReal_c::dDlst_shadowReal_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80085E18-80085E9C .text __dt__22dDlst_shadowRealPoly_cFv */
|
||||
dDlst_shadowRealPoly_c::~dDlst_shadowRealPoly_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80085E9C-80085EE4 .text __ct__17dDlst_shadowTri_cFv */
|
||||
dDlst_shadowTri_c::dDlst_shadowTri_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80085EE4-80085F2C .text __dt__18dDlst_shadowPoly_cFv */
|
||||
dDlst_shadowPoly_c::~dDlst_shadowPoly_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80085F2C-80085F68 .text __dt__20dDlst_shadowSimple_cFv */
|
||||
dDlst_shadowSimple_c::~dDlst_shadowSimple_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80085F68-80085F6C .text __ct__20dDlst_shadowSimple_cFv */
|
||||
dDlst_shadowSimple_c::dDlst_shadowSimple_c() {
|
||||
/* Nonmatching */
|
||||
static J3DDrawBuffer * J3DDrawBuffer__create(u32 size) {
|
||||
return new J3DDrawBuffer(size);
|
||||
}
|
||||
|
||||
/* 80085F6C-800861F4 .text init__12dDlst_list_cFv */
|
||||
void dDlst_list_c::init() {
|
||||
/* Nonmatching */
|
||||
bool dDlst_list_c::init() {
|
||||
mpOpaListSky = J3DDrawBuffer__create(0x20);
|
||||
mpXluListSky = J3DDrawBuffer__create(0x20);
|
||||
mpOpaListP0 = J3DDrawBuffer__create(1);
|
||||
mpOpaListP1 = J3DDrawBuffer__create(0x20);
|
||||
mpXluListP1 = J3DDrawBuffer__create(0x20);
|
||||
mpOpaListBG = J3DDrawBuffer__create(0x80);
|
||||
mpXluListBG = J3DDrawBuffer__create(0x80);
|
||||
mpOpaList = J3DDrawBuffer__create(0x100);
|
||||
mpXluList = J3DDrawBuffer__create(0x100);
|
||||
mpOpaListFilter = J3DDrawBuffer__create(0x20);
|
||||
mpOpaListMaskOff = J3DDrawBuffer__create(0x20);
|
||||
mpXluListMaskOff = J3DDrawBuffer__create(0x100);
|
||||
mpOpaListInvisible = J3DDrawBuffer__create(0x20);
|
||||
mpXluListInvisible = J3DDrawBuffer__create(0x20);
|
||||
mpOpaList2D = J3DDrawBuffer__create(1);
|
||||
|
||||
if (mpOpaListSky == NULL || mpXluListSky == NULL || mpOpaListP0 == NULL || mpOpaListP1 == NULL || mpXluListP1 == NULL || mpOpaListBG == NULL || mpXluListBG == NULL || mpOpaList == NULL || mpXluList == NULL || mpOpaListFilter == NULL || mpOpaListMaskOff == NULL || mpXluListMaskOff == NULL || mpOpaListInvisible == NULL || mpXluListInvisible == NULL || mpOpaList2D == NULL)
|
||||
return false;
|
||||
|
||||
mpOpaListSky->setNonSort();
|
||||
mpXluListSky->setNonSort();
|
||||
mpOpaListP0->setNonSort();
|
||||
mpOpaListP1->setNonSort();
|
||||
mpXluListP1->setNonSort();
|
||||
mpXluListBG->setNonSort();
|
||||
mpXluList->setZSort();
|
||||
mpOpaListFilter->setZSort();
|
||||
mpXluListMaskOff->setZSort();
|
||||
mpXluListInvisible->setZSort();
|
||||
mpOpaList2D->setNonSort();
|
||||
setOpaList();
|
||||
setXluList();
|
||||
field_0x4c = &field_0x3c[0];
|
||||
mp2DOpaTop = &mp2DOpaTopArr[0];
|
||||
mp2DOpa = &mp2DOpaArr[0];
|
||||
mp2DXlu = &mp2DXluArr[0];
|
||||
mShadowControl.init();
|
||||
mpAlphaModel = dDlst_alphaModel_c::create(0x40);
|
||||
mpSpotModel = dDlst_alphaModel_c::create(0x08);
|
||||
mpLightModel = dDlst_alphaModel_c::create(0x10);
|
||||
|
||||
if (mpAlphaModel == NULL || mpSpotModel == NULL || mpLightModel == NULL)
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/* 800861F4-80086368 .text __dt__12dDlst_list_cFv */
|
||||
@@ -408,22 +409,64 @@ dDlst_list_c::~dDlst_list_c() {
|
||||
|
||||
/* 80086368-80086490 .text reset__12dDlst_list_cFv */
|
||||
void dDlst_list_c::reset() {
|
||||
/* Nonmatching */
|
||||
mpOpaListSky->frameInit();
|
||||
mpXluListSky->frameInit();
|
||||
mpOpaListP0->frameInit();
|
||||
mpOpaListP1->frameInit();
|
||||
mpXluListP1->frameInit();
|
||||
mpOpaListBG->frameInit();
|
||||
mpXluListBG->frameInit();
|
||||
mpOpaList->frameInit();
|
||||
mpXluList->frameInit();
|
||||
mpOpaListFilter->frameInit();
|
||||
mpOpaListMaskOff->frameInit();
|
||||
mpXluListMaskOff->frameInit();
|
||||
mpOpaListInvisible->frameInit();
|
||||
mpXluListInvisible->frameInit();
|
||||
mpOpaList2D->frameInit();
|
||||
setOpaList();
|
||||
setXluList();
|
||||
field_0x4c = &field_0x3c[0];
|
||||
mp2DOpaTop = &mp2DOpaTopArr[0];
|
||||
mp2DOpa = &mp2DOpaArr[0];
|
||||
mp2DXlu = &mp2DXluArr[0];
|
||||
g_dComIfG_gameInfo.drawlist.mpAlphaModel->mNum = 0;
|
||||
g_dComIfG_gameInfo.drawlist.mpSpotModel->mNum = 0;
|
||||
g_dComIfG_gameInfo.drawlist.mpLightModel->mNum = 0;
|
||||
mShadowControl.reset();
|
||||
for (u32 i = 0; i < ARRAY_SIZE(m3DLineMatSortPacket); i++)
|
||||
m3DLineMatSortPacket[i].setMat(NULL);
|
||||
}
|
||||
|
||||
/* 80086490-80086540 .text entryZSortXluDrawList__12dDlst_list_cFP13J3DDrawBufferP9J3DPacketR4cXyz */
|
||||
void dDlst_list_c::entryZSortXluDrawList(J3DDrawBuffer*, J3DPacket*, cXyz&) {
|
||||
void dDlst_list_c::entryZSortXluDrawList(J3DDrawBuffer* pBuffer, J3DPacket* pPacket, cXyz& pos) {
|
||||
/* Nonmatching */
|
||||
f32 z = -J3DCalcZValue(j3dSys.getViewMtx(), pos);
|
||||
u16 idx;
|
||||
if (z <= 40.05859) {
|
||||
idx = 0;
|
||||
} else if (z >= 9960.941f) {
|
||||
idx = 0xFF;
|
||||
} else {
|
||||
idx = z / 39.05859;
|
||||
}
|
||||
pBuffer->entryImm(pPacket, 0xFF - z);
|
||||
}
|
||||
|
||||
/* 80086540-80086570 .text set__12dDlst_list_cFRPP12dDlst_base_cRPP12dDlst_base_cP12dDlst_base_c */
|
||||
void dDlst_list_c::set(dDlst_base_c**&, dDlst_base_c**&, dDlst_base_c*) {
|
||||
/* Nonmatching */
|
||||
bool dDlst_list_c::set(dDlst_base_c**& pList, dDlst_base_c**& pEnd, dDlst_base_c* pItem) {
|
||||
if (pList >= pEnd)
|
||||
return false;
|
||||
|
||||
*pList = pItem;
|
||||
pList++;
|
||||
return true;
|
||||
}
|
||||
|
||||
/* 80086570-800865C8 .text draw__12dDlst_list_cFPP12dDlst_base_cPP12dDlst_base_c */
|
||||
void dDlst_list_c::draw(dDlst_base_c**, dDlst_base_c**) {
|
||||
/* Nonmatching */
|
||||
void dDlst_list_c::draw(dDlst_base_c** pList, dDlst_base_c** pEnd) {
|
||||
for (; pList < pEnd; pList++)
|
||||
(*pList)->draw();
|
||||
}
|
||||
|
||||
/* 800865C8-800866C8 .text wipeIn__12dDlst_list_cFfR8_GXColor */
|
||||
@@ -432,8 +475,8 @@ void dDlst_list_c::wipeIn(f32, _GXColor&) {
|
||||
}
|
||||
|
||||
/* 800866C8-800866F0 .text wipeIn__12dDlst_list_cFf */
|
||||
void dDlst_list_c::wipeIn(f32) {
|
||||
/* Nonmatching */
|
||||
void dDlst_list_c::wipeIn(f32 time) {
|
||||
wipeIn(-time, g_blackColor);
|
||||
}
|
||||
|
||||
/* 800866F0-80086790 .text calcWipe__12dDlst_list_cFv */
|
||||
@@ -446,77 +489,12 @@ void dDlst_texSpecmapST(const cXyz*, const dKy_tevstr_c*, J3DModelData*, f32) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 8008696C-800869C8 .text __dt__23dDlst_alphaInvVolPacketFv */
|
||||
dDlst_alphaInvVolPacket::~dDlst_alphaInvVolPacket() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 800869C8-80086A24 .text __dt__20dDlst_alphaVolPacketFv */
|
||||
dDlst_alphaVolPacket::~dDlst_alphaVolPacket() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80086A24-80086AD0 .text __dt__18dDlst_mirrorPacketFv */
|
||||
dDlst_mirrorPacket::~dDlst_mirrorPacket() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80086AD0-80086AD8 .text getTri__22dDlst_shadowRealPoly_cFv */
|
||||
void dDlst_shadowRealPoly_c::getTri() {
|
||||
/* Nonmatching */
|
||||
dDlst_shadowTri_c * dDlst_shadowRealPoly_c::getTri() {
|
||||
return mShadowTri;
|
||||
}
|
||||
|
||||
/* 80086AD8-80086AE0 .text getTriMax__22dDlst_shadowRealPoly_cFv */
|
||||
void dDlst_shadowRealPoly_c::getTriMax() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80086AE0-80086B3C .text __dt__22dDlst_alphaModelPacketFv */
|
||||
dDlst_alphaModelPacket::~dDlst_alphaModelPacket() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80086B3C-80086B98 .text __dt__18dDlst_effectLine_cFv */
|
||||
dDlst_effectLine_c::~dDlst_effectLine_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80086B98-80086C10 .text __dt__10dDlst_2D_cFv */
|
||||
dDlst_2D_c::~dDlst_2D_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80086C10-80086C6C .text __dt__12dDlst_2DMt_cFv */
|
||||
dDlst_2DMt_c::~dDlst_2DMt_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80086C6C-80086CC8 .text __dt__11dDlst_2Dm_cFv */
|
||||
dDlst_2Dm_c::~dDlst_2Dm_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80086CC8-80086D24 .text __dt__11dDlst_2DM_cFv */
|
||||
dDlst_2DM_c::~dDlst_2DM_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80086D24-80086D80 .text __dt__12dDlst_2DT2_cFv */
|
||||
dDlst_2DT2_c::~dDlst_2DT2_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80086D80-80086DDC .text __dt__11dDlst_2DT_cFv */
|
||||
dDlst_2DT_c::~dDlst_2DT_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80086DDC-80086E38 .text __dt__15dDlst_2DPoint_cFv */
|
||||
dDlst_2DPoint_c::~dDlst_2DPoint_c() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
/* 80086E38-80086E94 .text __dt__13dDlst_2DTri_cFv */
|
||||
dDlst_2DTri_c::~dDlst_2DTri_c() {
|
||||
/* Nonmatching */
|
||||
s32 dDlst_shadowRealPoly_c::getTriMax() {
|
||||
return ARRAY_SIZE(mShadowTri);
|
||||
}
|
||||
|
||||
+12
-2
@@ -12,7 +12,7 @@ JntHit_HIO_c::JntHit_HIO_c() {
|
||||
}
|
||||
|
||||
/* 80060C44-80060EC4 .text CreateInit__8JntHit_cFv */
|
||||
void JntHit_c::CreateInit() {
|
||||
BOOL JntHit_c::CreateInit() {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
@@ -43,7 +43,17 @@ s32 JntHit_c::searchJntHitPosAngleOffset(cXyz*, csXyz*, cXyz*, csXyz*) {
|
||||
|
||||
/* 800627DC-8006286C .text JntHit_create__FP8J3DModelP16__jnt_hit_data_cs */
|
||||
JntHit_c* JntHit_create(J3DModel* model, __jnt_hit_data_c* jntHitData, s16 hitDataCount) {
|
||||
/* Nonmatching */
|
||||
JntHit_c * pJntHit = new JntHit_c();
|
||||
|
||||
if (pJntHit != NULL) {
|
||||
pJntHit->mpHitData = jntHitData;
|
||||
pJntHit->mpModel = model;
|
||||
pJntHit->mHitDataCount = hitDataCount;
|
||||
if (pJntHit->CreateInit())
|
||||
return pJntHit;
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* 8006286C-800628B4 .text __dt__12JntHit_HIO_cFv */
|
||||
|
||||
+21
-13
@@ -12,7 +12,7 @@
|
||||
#include "m_Do/m_Do_lib.h"
|
||||
#include "JSystem/JKernel/JKRHeap.h"
|
||||
|
||||
static u32 now_room;
|
||||
static u32 now_room = -1;
|
||||
|
||||
/* 8008AA30-8008AB3C .text vectle_calc__FP10DOUBLE_POSP4cXyz */
|
||||
void vectle_calc(DOUBLE_POS* i_pos, cXyz* o_out) {
|
||||
@@ -202,8 +202,9 @@ void dKyr_rain_init() {
|
||||
}
|
||||
|
||||
/* 8008D0B4-8008D0DC .text rain_bg_chk__FP19dKankyo_rain_Packeti */
|
||||
void rain_bg_chk(dKankyo_rain_Packet*, int) {
|
||||
/* Nonmatching */
|
||||
void rain_bg_chk(dKankyo_rain_Packet* pPkt, int idx) {
|
||||
camera_class * pCamera = g_dComIfG_gameInfo.play.mCameraInfo[0].mpCamera;
|
||||
pPkt->mRainEff[idx].field_0x30 = pCamera->mLookat.mCenter.y + -800.0f;
|
||||
}
|
||||
|
||||
/* 8008D0DC-8008D53C .text overhead_bg_chk__Fv */
|
||||
@@ -236,11 +237,12 @@ void dKyr_snow_init() {
|
||||
} else {
|
||||
g_env_light.mpSnowPacket->mpTexture = (u8*)dComIfG_getStageRes("Stage", "ak_kazanbai00.bti");
|
||||
}
|
||||
|
||||
for (u32 i = 0; i < ARRAY_SIZE(g_env_light.mpSnowPacket->mEff); i++)
|
||||
g_env_light.mpSnowPacket->mEff[i].mStatus = 0;
|
||||
g_env_light.mpSnowPacket->mEffCount = 0;
|
||||
g_env_light.mpSnowPacket->mOldEyePos = pCamera->mLookat.mEye;
|
||||
}
|
||||
for (u32 i = 0; i < ARRAY_SIZE(g_env_light.mpSnowPacket->mEff); i++)
|
||||
g_env_light.mpSnowPacket->mEff[i].mStatus = 0;
|
||||
g_env_light.mpSnowPacket->mEffCount = 0;
|
||||
g_env_light.mpSnowPacket->mOldEyePos = pCamera->mLookat.mEye;
|
||||
}
|
||||
|
||||
/* 8008F23C-8008F9FC .text dKyr_snow_move__Fv */
|
||||
@@ -297,12 +299,17 @@ void light_at_hit_check(cXyz*) {
|
||||
|
||||
/* 80092310-80092330 .text dKyr_poison_live_check__Fv */
|
||||
BOOL dKyr_poison_live_check() {
|
||||
/* Nonmatching */
|
||||
BOOL ret = FALSE;
|
||||
if (g_env_light.mPoisonCount != 0)
|
||||
ret = TRUE;
|
||||
return ret;
|
||||
}
|
||||
|
||||
/* 80092330-80092448 .text dKyr_poison_light_colision__Fv */
|
||||
void dKyr_poison_light_colision() {
|
||||
/* Nonmatching */
|
||||
if (!dKyr_poison_live_check())
|
||||
return;
|
||||
}
|
||||
|
||||
/* 80092448-8009258C .text poison_init__Fv */
|
||||
@@ -333,19 +340,20 @@ void vrkumo_move() {
|
||||
|
||||
/* 800940D4-80094144 .text dKy_wave_chan_init__Fv */
|
||||
void dKy_wave_chan_init() {
|
||||
g_env_light.mWaveChan.mWaveCount = 0;
|
||||
g_env_light.mWaveChan.field_0x0 = -1.0f;
|
||||
g_env_light.mWaveChan.field_0x4 = 0.0f;
|
||||
g_env_light.mWaveChan.field_0x8 = 0.0f;
|
||||
g_env_light.mWaveChan.mWaveSpeed = 0.1f;
|
||||
g_env_light.mWaveChan.mWaveSpeed = 0.3f;
|
||||
g_env_light.mWaveChan.mWaveSpawnDist = 3000.0f;
|
||||
g_env_light.mWaveChan.mWaveSpawnRadius = 3150.0f;
|
||||
g_env_light.mWaveChan.mWaveReset = 0;
|
||||
g_env_light.mWaveChan.mWaveScale = 250.0f;
|
||||
g_env_light.mWaveChan.mWaveScaleBottom = 5.0f;
|
||||
g_env_light.mWaveChan.mWaveScaleRand = 0.217f;
|
||||
g_env_light.mWaveChan.mWaveCounterSpeedScale = 1.6f;
|
||||
g_env_light.mWaveChan.mWaveScaleBottom = 5.0f;
|
||||
g_env_light.mWaveChan.mWaveCount = 0;
|
||||
g_env_light.mWaveChan.mWaveReset = 0;
|
||||
g_env_light.mWaveChan.field_0x2f = 0;
|
||||
g_env_light.mWaveChan.mWaveSpeed = 0.1f;
|
||||
}
|
||||
|
||||
/* 80094144-8009428C .text snap_sunmoon_proc__FP4cXyzi */
|
||||
@@ -466,7 +474,7 @@ void dKyr_drawSibuki(Mtx drawMtx, u8** pImg) {
|
||||
}
|
||||
|
||||
GXSetClipMode(GX_CLIP_ENABLE);
|
||||
J3DShape::sOldVcdVatCmd = NULL;
|
||||
J3DShape::resetVcdVatCache();
|
||||
}
|
||||
|
||||
/* 80096D18-800973CC .text drawPoison__FPA4_fPPUc */
|
||||
|
||||
Reference in New Issue
Block a user