summaryrefslogtreecommitdiff
path: root/include/JSystem
diff options
context:
space:
mode:
Diffstat (limited to 'include/JSystem')
-rw-r--r--include/JSystem/J2DGraph/J2DAnimation.h6
-rw-r--r--include/JSystem/J2DGraph/J2DPane.h10
-rw-r--r--include/JSystem/J2DGraph/J2DPicture.h16
-rw-r--r--include/JSystem/J2DGraph/J2DScreen.h2
-rw-r--r--include/JSystem/J2DGraph/J2DTextBox.h2
-rw-r--r--include/JSystem/J3DGraphAnimator/J3DAnimation.h211
-rw-r--r--include/JSystem/J3DGraphAnimator/J3DJoint.h12
-rw-r--r--include/JSystem/J3DGraphBase/J3DMatBlock.h100
-rw-r--r--include/JSystem/J3DGraphBase/J3DTevs.h8
-rw-r--r--include/JSystem/J3DGraphLoader/J3DAnmLoader.h54
-rw-r--r--include/JSystem/JGeometry.h4
-rw-r--r--include/JSystem/JParticle/JPAParticle.h6
-rw-r--r--include/JSystem/JUtility/JUTFont.h6
-rw-r--r--include/JSystem/JUtility/JUTResFont.h2
14 files changed, 279 insertions, 160 deletions
diff --git a/include/JSystem/J2DGraph/J2DAnimation.h b/include/JSystem/J2DGraph/J2DAnimation.h
index a4bd2fb07d..fe36766b7a 100644
--- a/include/JSystem/J2DGraph/J2DAnimation.h
+++ b/include/JSystem/J2DGraph/J2DAnimation.h
@@ -151,12 +151,8 @@ public:
mTranslateValues = pTranslateValues;
mKind = KIND_TRANSFORM;
}
- #ifdef __dt__15J2DAnmTransformFv_DEFINED
- /* 80184370 */ virtual ~J2DAnmTransform();
- #else
/* 80184370 */ virtual ~J2DAnmTransform() {}
- #endif
- /* 80191130 */ virtual void getTransform(u16, J3DTransformInfo*) const;
+ /* 80191130 */ virtual void getTransform(u16, J3DTransformInfo*) const; // {} (should be inline)
/* 0x10 */ f32* mScaleValues;
/* 0x14 */ s16* mRotationValues;
diff --git a/include/JSystem/J2DGraph/J2DPane.h b/include/JSystem/J2DGraph/J2DPane.h
index db868228b1..61989f4f58 100644
--- a/include/JSystem/J2DGraph/J2DPane.h
+++ b/include/JSystem/J2DGraph/J2DPane.h
@@ -88,13 +88,19 @@ public:
/* vt 0x20 */ virtual void setCullBack(_GXCullMode cmode);
/* vt 0x24 */ virtual void setAlpha(u8);
/* vt 0x28 */ virtual bool setConnectParent(bool connected);
- /* vt 0x2C */ virtual void calcMtx();
+ /* vt 0x2C */ virtual void calcMtx() {
+ if (mPaneTree.getParent() != NULL) {
+ makeMatrix(mTranslateX, mTranslateY);
+ }
+ }
/* vt 0x30 */ virtual void update();
/* vt 0x34 */ virtual void drawSelf(f32 arg1, f32 arg2);
/* vt 0x38 */ virtual void drawSelf(f32 arg1, f32 arg2, Mtx* mtx);
/* vt 0x3C */ virtual J2DPane* search(u64 tag);
/* vt 0x40 */ virtual J2DPane* searchUserInfo(u64 tag);
- /* vt 0x44 */ virtual void makeMatrix(f32, f32);
+ /* vt 0x44 */ virtual void makeMatrix(f32 a, f32 b) {
+ makeMatrix(a, b, -mBounds.i.x, -mBounds.i.y);
+ }
/* vt 0x48 */ virtual void makeMatrix(f32 a, f32 b, f32 c, f32 d);
/* vt 0x4C */ virtual bool isUsed(const ResTIMG* timg);
/* vt 0x50 */ virtual bool isUsed(const ResFONT* font);
diff --git a/include/JSystem/J2DGraph/J2DPicture.h b/include/JSystem/J2DGraph/J2DPicture.h
index 4bad6b8019..e391869896 100644
--- a/include/JSystem/J2DGraph/J2DPicture.h
+++ b/include/JSystem/J2DGraph/J2DPicture.h
@@ -106,9 +106,19 @@ public:
/* 802FDAC8 */ virtual const ResTIMG* changeTexture(char const*, u8, JUTPalette*);
/* 800539DC */ virtual JUTTexture* getTexture(u8) const;
/* 802FF634 */ virtual u8 getTextureCount() const;
- /* 80053C6C */ virtual bool setBlack(JUtility::TColor);
- /* 80053C44 */ virtual bool setWhite(JUtility::TColor);
- /* 8018BEE0 */ virtual bool setBlackWhite(JUtility::TColor i_black, JUtility::TColor i_white);
+ /* 80053C6C */ virtual bool setBlack(JUtility::TColor i_black) {
+ mBlack = i_black;
+ return true;
+ }
+ /* 80053C44 */ virtual bool setWhite(JUtility::TColor i_white) {
+ mWhite = i_white;
+ return true;
+ }
+ /* 8018BEE0 */ virtual bool setBlackWhite(JUtility::TColor i_black, JUtility::TColor i_white) {
+ mBlack = i_black;
+ mWhite = i_white;
+ return true;
+ }
/* 801DFA4C */ virtual JUtility::TColor getBlack() const;
/* 801DFA40 */ virtual JUtility::TColor getWhite() const;
/* 8025603C */ virtual J2DMaterial* getMaterial() const { return NULL; }
diff --git a/include/JSystem/J2DGraph/J2DScreen.h b/include/JSystem/J2DGraph/J2DScreen.h
index 29d41577b9..ed4a0311a5 100644
--- a/include/JSystem/J2DGraph/J2DScreen.h
+++ b/include/JSystem/J2DGraph/J2DScreen.h
@@ -55,7 +55,7 @@ public:
/* 802F90E0 */ virtual J2DPane* searchUserInfo(u64);
/* 802F9600 */ virtual bool isUsed(ResTIMG const*);
/* 802F9620 */ virtual bool isUsed(ResFONT const*);
- /* 80053BA0 */ virtual void clearAnmTransform();
+ /* 80053BA0 */ virtual void clearAnmTransform() { J2DPane::clearAnmTransform(); }
/* 802F9704 */ virtual void setAnimation(J2DAnmColor*);
/* 80192414 */ virtual void setAnimation(J2DAnmTransform* i_bck) { J2DPane::setAnimation(i_bck); }
/* 802F9798 */ virtual void setAnimation(J2DAnmTextureSRTKey*);
diff --git a/include/JSystem/J2DGraph/J2DTextBox.h b/include/JSystem/J2DGraph/J2DTextBox.h
index 55b0a6a641..3a2e94a17a 100644
--- a/include/JSystem/J2DGraph/J2DTextBox.h
+++ b/include/JSystem/J2DGraph/J2DTextBox.h
@@ -75,7 +75,7 @@ public:
/* 80300278 */ virtual void setFont(JUTFont*);
/* 8021C7F4 */ virtual JUTFont* getFont() const { return mFont; }
/* 80254408 */ virtual bool setBlack(JUtility::TColor);
- /* 80186C84 */ virtual bool setWhite(JUtility::TColor);
+ /* 80186C84 */ virtual bool setWhite(JUtility::TColor white) { mWhiteColor = white; return true; }
/* 8019230C */ virtual bool setBlackWhite(JUtility::TColor, JUtility::TColor);
/* 801DFA34 */ virtual JUtility::TColor getBlack() const;
/* 801DFA28 */ virtual JUtility::TColor getWhite() const;
diff --git a/include/JSystem/J3DGraphAnimator/J3DAnimation.h b/include/JSystem/J3DGraphAnimator/J3DAnimation.h
index fa1c4e66b7..2d6107db5c 100644
--- a/include/JSystem/J3DGraphAnimator/J3DAnimation.h
+++ b/include/JSystem/J3DGraphAnimator/J3DAnimation.h
@@ -174,13 +174,13 @@ struct J3DAnmVtxColorFullData {
/* 0x0A */ s16 mFrameMax;
/* 0x0C */ u16 mAnmTableNum[2];
/* 0x10 */ u8 field_0x10[0x18 - 0x10];
- /* 0x18 */ s32 mTableOffsets[2];
- /* 0x20 */ s32 mVtxColorIndexDataOffsets[2];
- /* 0x28 */ s32 mVtxColorIndexPointerOffsets[2];
- /* 0x30 */ s32 mRValuesOffset;
- /* 0x34 */ s32 mGValuesOffset;
- /* 0x38 */ s32 mBValuesOffset;
- /* 0x3C */ s32 mAValuesOffset;
+ /* 0x18 */ void* mTableOffsets[2];
+ /* 0x20 */ void* mVtxColorIndexDataOffsets[2];
+ /* 0x28 */ void* mVtxColorIndexPointerOffsets[2];
+ /* 0x30 */ void* mRValuesOffset;
+ /* 0x34 */ void* mGValuesOffset;
+ /* 0x38 */ void* mBValuesOffset;
+ /* 0x3C */ void* mAValuesOffset;
}; // Size = 0x40
STATIC_ASSERT(sizeof(J3DAnmVtxColorFullData) == 0x40);
@@ -196,8 +196,8 @@ struct J3DAnmVisibilityFullData {
/* 0x0A */ s16 mFrameMax;
/* 0x0C */ u16 field_0xc;
/* 0x0E */ u16 field_0xe;
- /* 0x10 */ s32 mTableOffset;
- /* 0x14 */ s32 mValuesOffset;
+ /* 0x10 */ void* mTableOffset;
+ /* 0x14 */ void* mValuesOffset;
}; // Size = 0x18
STATIC_ASSERT(sizeof(J3DAnmVisibilityFullData) == 0x18);
@@ -213,10 +213,10 @@ struct J3DAnmTransformFullData {
/* 0x0A */ s16 mFrameMax;
/* 0x0C */ u16 field_0xc;
/* 0x0E */ u8 field_0xe[0x14 - 0xe];
- /* 0x14 */ s32 mTableOffset;
- /* 0x18 */ s32 mScaleValOffset;
- /* 0x1C */ s32 mRotValOffset;
- /* 0x20 */ s32 mTransValOffset;
+ /* 0x14 */ void* mTableOffset;
+ /* 0x18 */ void* mScaleValOffset;
+ /* 0x1C */ void* mRotValOffset;
+ /* 0x20 */ void* mTransValOffset;
}; // Size = 0x24
STATIC_ASSERT(sizeof(J3DAnmTransformFullData) == 0x24);
@@ -235,13 +235,13 @@ struct J3DAnmColorKeyData {
/* 0x12 */ u16 field_0x12;
/* 0x14 */ u16 field_0x14;
/* 0x16 */ u16 field_0x16;
- /* 0x18 */ s32 mTableOffset; /* Created by retype action */
- /* 0x1C */ s32 mUpdateMaterialIDOffset;
- /* 0x20 */ s32 mNameTabOffset; /* Created by retype action */
- /* 0x24 */ s32 mRValOffset;
- /* 0x28 */ s32 mGValOffset;
- /* 0x2C */ s32 mBValOffset;
- /* 0x30 */ s32 mAValOffset;
+ /* 0x18 */ void* mTableOffset;
+ /* 0x1C */ void* mUpdateMaterialIDOffset;
+ /* 0x20 */ void* mNameTabOffset;
+ /* 0x24 */ void* mRValOffset;
+ /* 0x28 */ void* mGValOffset;
+ /* 0x2C */ void* mBValOffset;
+ /* 0x30 */ void* mAValOffset;
}; // Size = 0x34
STATIC_ASSERT(sizeof(J3DAnmColorKeyData) == 0x34);
@@ -259,26 +259,26 @@ struct J3DAnmTextureSRTKeyData {
/* 0x0E */ u16 field_0xe;
/* 0x10 */ u16 field_0x10;
/* 0x12 */ u16 field_0x12;
- /* 0x14 */ s32 mTableOffset;
- /* 0x18 */ s32 mUpdateMatIDOffset;
- /* 0x1C */ s32 mNameTab1Offset;
- /* 0x20 */ s32 mUpdateTexMtxIDOffset;
- /* 0x24 */ s32 unkOffset;
- /* 0x28 */ s32 mScaleValOffset;
- /* 0x2C */ s32 mRotValOffset;
- /* 0x30 */ s32 mTransValOffset;
+ /* 0x14 */ void* mTableOffset;
+ /* 0x18 */ void* mUpdateMatIDOffset;
+ /* 0x1C */ void* mNameTab1Offset;
+ /* 0x20 */ void* mUpdateTexMtxIDOffset;
+ /* 0x24 */ void* unkOffset;
+ /* 0x28 */ void* mScaleValOffset;
+ /* 0x2C */ void* mRotValOffset;
+ /* 0x30 */ void* mTransValOffset;
/* 0x34 */ u16 field_0x34;
/* 0x36 */ u16 field_0x36;
/* 0x38 */ u16 field_0x38;
/* 0x3A */ u16 field_0x3a;
- /* 0x3C */ s32 mInfoTable2Offset;
- /* 0x40 */ s32 field_0x40;
- /* 0x44 */ u32 mNameTab2Offset;
- /* 0x48 */ s32 field_0x48;
- /* 0x4C */ s32 field_0x4c;
- /* 0x50 */ s32 field_0x50;
- /* 0x54 */ s32 field_0x54;
- /* 0x58 */ s32 field_0x58;
+ /* 0x3C */ void* mInfoTable2Offset;
+ /* 0x40 */ void* field_0x40;
+ /* 0x44 */ void* mNameTab2Offset;
+ /* 0x48 */ void* field_0x48;
+ /* 0x4C */ void* field_0x4c;
+ /* 0x50 */ void* field_0x50;
+ /* 0x54 */ void* field_0x54;
+ /* 0x58 */ void* field_0x58;
/* 0x5C */ s32 field_0x5c;
}; // Size = 0x60
@@ -295,13 +295,13 @@ struct J3DAnmVtxColorKeyData {
/* 0x0A */ s16 mFrameMax;
/* 0x0C */ u16 mAnmTableNum[2];
/* 0x10 */ u8 field_0x10[0x18 - 0x10];
- /* 0x18 */ s32 mTableOffsets[2];
- /* 0x20 */ s32 mVtxColoIndexDataOffset[2];
- /* 0x28 */ s32 mVtxColoIndexPointerOffset[2];
- /* 0x30 */ s32 mRValOffset;
- /* 0x34 */ s32 mGValOffset;
- /* 0x38 */ s32 mBValOffset;
- /* 0x3C */ s32 mAValOffset;
+ /* 0x18 */ void* mTableOffsets[2];
+ /* 0x20 */ void* mVtxColoIndexDataOffset[2];
+ /* 0x28 */ void* mVtxColoIndexPointerOffset[2];
+ /* 0x30 */ void* mRValOffset;
+ /* 0x34 */ void* mGValOffset;
+ /* 0x38 */ void* mBValOffset;
+ /* 0x3C */ void* mAValOffset;
}; // Size = 0x40
STATIC_ASSERT(sizeof(J3DAnmVtxColorKeyData) == 0x40);
@@ -317,10 +317,10 @@ struct J3DAnmTexPatternFullData {
/* 0x0A */ s16 mFrameMax;
/* 0x0C */ u16 field_0xc;
/* 0x0E */ u16 field_0xe;
- /* 0x10 */ s32 mTableOffset;
- /* 0x14 */ s32 mValuesOffset;
- /* 0x18 */ s32 mUpdateMaterialIDOffset;
- /* 0x1C */ s32 mNameTabOffset;
+ /* 0x10 */ void* mTableOffset;
+ /* 0x14 */ void* mValuesOffset;
+ /* 0x18 */ void* mUpdateMaterialIDOffset;
+ /* 0x1C */ void* mNameTabOffset;
}; // Size = 0x20
STATIC_ASSERT(sizeof(J3DAnmTexPatternFullData) == 0x20);
@@ -344,20 +344,20 @@ struct J3DAnmTevRegKeyData {
/* 0x1A */ u16 field_0x1a;
/* 0x1C */ u16 field_0x1c;
/* 0x1E */ u16 field_0x1e;
- /* 0x20 */ s32 mCRegTableOffset;
- /* 0x24 */ s32 mKRegTableOffset;
- /* 0x28 */ s32 mCRegUpdateMaterialIDOffset;
- /* 0x2C */ s32 mKRegUpdateMaterialIDOffset;
- /* 0x30 */ s32 mCRegNameTabOffset;
- /* 0x34 */ s32 mKRegNameTabOffset;
- /* 0x38 */ s32 mCRValuesOffset;
- /* 0x3C */ s32 mCGValuesOffset;
- /* 0x40 */ s32 mCBValuesOffset;
- /* 0x44 */ s32 mCAValuesOffset;
- /* 0x48 */ s32 mKRValuesOffset;
- /* 0x4C */ s32 mKGValuesOffset;
- /* 0x50 */ s32 mKBValuesOffset;
- /* 0x54 */ s32 mKAValuesOffset;
+ /* 0x20 */ void* mCRegTableOffset;
+ /* 0x24 */ void* mKRegTableOffset;
+ /* 0x28 */ void* mCRegUpdateMaterialIDOffset;
+ /* 0x2C */ void* mKRegUpdateMaterialIDOffset;
+ /* 0x30 */ void* mCRegNameTabOffset;
+ /* 0x34 */ void* mKRegNameTabOffset;
+ /* 0x38 */ void* mCRValuesOffset;
+ /* 0x3C */ void* mCGValuesOffset;
+ /* 0x40 */ void* mCBValuesOffset;
+ /* 0x44 */ void* mCAValuesOffset;
+ /* 0x48 */ void* mKRValuesOffset;
+ /* 0x4C */ void* mKGValuesOffset;
+ /* 0x50 */ void* mKBValuesOffset;
+ /* 0x54 */ void* mKAValuesOffset;
}; // Size = 0x58
STATIC_ASSERT(sizeof(J3DAnmTevRegKeyData) == 0x58);
@@ -373,13 +373,13 @@ struct J3DAnmColorFullData { /* PlaceHolder Structure */
/* 0x0C */ s16 mFrameMax;
/* 0x0E */ u16 mUpdateMaterialNum;
/* 0x10 */ u8 field_0x10[0x18 - 0x10];
- /* 0x18 */ s32 mTableOffset;
- /* 0x1C */ s32 mUpdateMaterialIDOffset;
- /* 0x20 */ s32 mNameTabOffset;
- /* 0x24 */ s32 mRValuesOffset;
- /* 0x28 */ s32 mGValuesOffset;
- /* 0x2C */ s32 mBValuesOffset;
- /* 0x30 */ s32 mAValuesOffset;
+ /* 0x18 */ void* mTableOffset;
+ /* 0x1C */ void* mUpdateMaterialIDOffset;
+ /* 0x20 */ void* mNameTabOffset;
+ /* 0x24 */ void* mRValuesOffset;
+ /* 0x28 */ void* mGValuesOffset;
+ /* 0x2C */ void* mBValuesOffset;
+ /* 0x30 */ void* mAValuesOffset;
}; // Size = 0x34
STATIC_ASSERT(sizeof(J3DAnmColorFullData) == 0x34);
@@ -403,10 +403,10 @@ struct J3DAnmTransformKeyData {
/* 0x0A */ s16 mFrameMax;
/* 0x0C */ u16 field_0xc;
/* 0x10 */ int field_0x10;
- /* 0x14 */ s32 mTableOffset;
- /* 0x18 */ s32 field_0x18;
- /* 0x1c */ s32 field_0x1c;
- /* 0x20 */ s32 field_0x20;
+ /* 0x14 */ void* mTableOffset;
+ /* 0x18 */ void* field_0x18;
+ /* 0x1c */ void* field_0x1c;
+ /* 0x20 */ void* field_0x20;
};
/**
@@ -418,8 +418,8 @@ struct J3DAnmClusterKeyData {
/* 0x08 */ u8 field_0x8;
/* 0x0A */ s16 mFrameMax;
/* 0x0C */ s32 field_0xc;
- /* 0x10 */ s32 mTableOffset;
- /* 0x14 */ s32 mWeightOffset;
+ /* 0x10 */ void* mTableOffset;
+ /* 0x14 */ void* mWeightOffset;
};
/**
@@ -431,8 +431,8 @@ struct J3DAnmClusterFullData {
/* 0x08 */ u8 field_0x8;
/* 0x0A */ s16 mFrameMax;
/* 0x0C */ s32 field_0xc;
- /* 0x10 */ s32 mTableOffset;
- /* 0x14 */ s32 mWeightOffset;
+ /* 0x10 */ void* mTableOffset;
+ /* 0x14 */ void* mWeightOffset;
};
/**
@@ -487,7 +487,7 @@ public:
/* 80328E40 */ J3DAnmTransform(s16, f32*, s16*, f32*);
/* 8003B93C */ virtual ~J3DAnmTransform() {}
- /* 8003C77C */ virtual s32 getKind() const;
+ /* 8003C77C */ virtual s32 getKind() const { return 0; }
virtual void getTransform(u16, J3DTransformInfo*) const = 0;
/* 0x0C */ f32* mScaleData;
@@ -512,9 +512,11 @@ public:
/* 80329A34 */ void calcTransform(f32, u16, J3DTransformInfo*) const;
- /* 8003B8D0 */ virtual ~J3DAnmTransformKey();
- /* 8003C800 */ virtual s32 getKind() const;
- /* 8003C808 */ virtual void getTransform(u16, J3DTransformInfo*) const;
+ /* 8003B8D0 */ virtual ~J3DAnmTransformKey() {}
+ /* 8003C800 */ virtual s32 getKind() const { return 8; }
+ /* 8003C808 */ virtual void getTransform(u16 param_0, J3DTransformInfo* param_1) const {
+ calcTransform(mFrame, param_0, param_1);
+ }
/* 0x20 */ int mDecShift;
/* 0x24 */ J3DAnmTransformKeyTable* mAnmTable;
@@ -860,8 +862,8 @@ public:
mVisibility = NULL;
}
- /* 8033979C */ virtual ~J3DAnmVisibilityFull();
- /* 803397F8 */ virtual s32 getKind() const;
+ /* 8033979C */ virtual ~J3DAnmVisibilityFull() {}
+ /* 803397F8 */ virtual s32 getKind() const { return 6; }
/* 0x0C */ u16 mUpdateMaterialNum;
/* 0x0E */ u16 field_0xe;
@@ -921,4 +923,49 @@ public:
/* 0x10 */ f32 mFrame;
}; // Size: 0x14
+struct J3DMtxCalcAnmBase: public J3DMtxCalc {
+ J3DMtxCalcAnmBase(J3DAnmTransform* param_0) { mAnmTransform = param_0; }
+ /* 8000D8EC */ ~J3DMtxCalcAnmBase() {}
+ /* 80014FB8 */ J3DAnmTransform* getAnmTransform() { return mAnmTransform; }
+ /* 80014FC0 */ void setAnmTransform(J3DAnmTransform* param_0) { mAnmTransform = param_0; }
+
+ J3DAnmTransform* mAnmTransform;
+};
+
+struct J3DMtxCalcAnimationAdaptorBase {
+ J3DMtxCalcAnimationAdaptorBase() {}
+ void change(J3DAnmTransform*) {}
+};
+
+template <typename A0>
+struct J3DMtxCalcAnimationAdaptorDefault : public J3DMtxCalcAnimationAdaptorBase {
+ J3DMtxCalcAnimationAdaptorDefault(J3DAnmTransform* param_0) {}
+ void calc(J3DMtxCalcAnmBase* param_0) {
+ J3DTransformInfo transform;
+ J3DTransformInfo* transform_p;
+ if (param_0->getAnmTransform() != NULL) {
+ u16 jnt_no = J3DMtxCalc::getJoint()->getJntNo();
+ param_0->getAnmTransform()->getTransform(jnt_no, &transform);
+ transform_p = &transform;
+ } else {
+ transform_p = &J3DMtxCalc::getJoint()->getTransformInfo();
+ }
+ A0::calcTransform(*transform_p);
+ }
+};
+
+template <typename A0, typename B0>
+struct J3DMtxCalcAnimation : public J3DMtxCalcAnmBase {
+ J3DMtxCalcAnimation(J3DAnmTransform* param_0) : J3DMtxCalcAnmBase(param_0), field_0x8(param_0) {}
+ ~J3DMtxCalcAnimation() {}
+ void setAnmTransform(J3DAnmTransform* param_0) {
+ mAnmTransform = param_0;
+ field_0x8.change(param_0);
+ }
+ void init(const Vec& param_0, const Mtx& param_1) { B0::init(param_0, param_1); }
+ void calc() { field_0x8.calc(this); }
+
+ A0 field_0x8;
+};
+
#endif /* J3DANIMATION_H */
diff --git a/include/JSystem/J3DGraphAnimator/J3DJoint.h b/include/JSystem/J3DGraphAnimator/J3DJoint.h
index 8ae6fbe944..ff9d189779 100644
--- a/include/JSystem/J3DGraphAnimator/J3DJoint.h
+++ b/include/JSystem/J3DGraphAnimator/J3DJoint.h
@@ -18,12 +18,12 @@ public:
/* 80325D1C */ static void setMtxBuffer(J3DMtxBuffer*);
/* 8000D948 */ virtual ~J3DMtxCalc() {}
- /* 80014E90 */ virtual void setAnmTransform(J3DAnmTransform*);
- /* 80014E9C */ virtual J3DAnmTransform* getAnmTransform();
- /* 80014E8C */ virtual void setAnmTransform(u8, J3DAnmTransform*);
- /* 80014E94 */ virtual J3DAnmTransform* getAnmTransform(u8);
- /* 80014EA4 */ virtual void setWeight(u8, f32);
- /* 80014EA8 */ virtual void getWeight(u8) const;
+ /* 80014E90 */ virtual void setAnmTransform(J3DAnmTransform*) {}
+ /* 80014E9C */ virtual J3DAnmTransform* getAnmTransform() { return NULL; }
+ /* 80014E8C */ virtual void setAnmTransform(u8, J3DAnmTransform*) {}
+ /* 80014E94 */ virtual J3DAnmTransform* getAnmTransform(u8) { return NULL; }
+ /* 80014EA4 */ virtual void setWeight(u8, f32) {}
+ /* 80014EA8 */ virtual f32 getWeight(u8) const { return 0.0f; }
virtual void init(const Vec& param_0, const Mtx&) = 0;
virtual void calc() = 0;
diff --git a/include/JSystem/J3DGraphBase/J3DMatBlock.h b/include/JSystem/J3DGraphBase/J3DMatBlock.h
index 18e7c7ec19..9ab7424801 100644
--- a/include/JSystem/J3DGraphBase/J3DMatBlock.h
+++ b/include/JSystem/J3DGraphBase/J3DMatBlock.h
@@ -78,12 +78,12 @@ public:
/* 803172FC */ virtual s32 countDLSize();
virtual u32 getType() = 0;
/* 8031741C */ virtual void setTexGenNum(u32 const*);
- /* 8000E0D0 */ virtual void setTexGenNum(u32);
- /* 8000DFE8 */ virtual u32 getTexGenNum() const;
- /* 8000E0CC */ virtual void setTexCoord(u32, J3DTexCoord const*);
- /* 8000DFE0 */ virtual J3DTexCoord* getTexCoord(u32);
+ /* 8000E0D0 */ virtual void setTexGenNum(u32) {}
+ /* 8000DFE8 */ virtual u32 getTexGenNum() const { return 0; }
+ /* 8000E0CC */ virtual void setTexCoord(u32, J3DTexCoord const*) {}
+ /* 8000DFE0 */ virtual J3DTexCoord* getTexCoord(u32) { return NULL; }
/* 8003AB2C */ virtual void setTexMtx(u32, J3DTexMtx*) {}
- /* 8000DFD8 */ virtual J3DTexMtx* getTexMtx(u32);
+ /* 8000DFD8 */ virtual J3DTexMtx* getTexMtx(u32) { return NULL; }
/* 80317424 */ virtual void setNBTScale(J3DNBTScale const*);
/* 80317420 */ virtual void setNBTScale(J3DNBTScale);
/* 80317334 */ virtual J3DNBTScale* getNBTScale();
@@ -217,37 +217,37 @@ public:
virtual u32 getType() = 0;
/* 8031730C */ virtual s32 countDLSize();
/* 80323544 */ virtual void setTexNo(u32, u16 const*);
- /* 8000E0AC */ virtual void setTexNo(u32, u16);
- /* 8000DF94 */ virtual u16 getTexNo(u32) const;
+ /* 8000E0AC */ virtual void setTexNo(u32, u16) {}
+ /* 8000DF94 */ virtual u16 getTexNo(u32) const { return 0xffff; }
/* 80323548 */ virtual void setTevOrder(u32, J3DTevOrder const*);
- /* 8000E0BC */ virtual void setTevOrder(u32, J3DTevOrder);
- /* 8000DFB8 */ virtual J3DTevOrder* getTevOrder(u32);
+ /* 8000E0BC */ virtual void setTevOrder(u32, J3DTevOrder) {}
+ /* 8000DFB8 */ virtual J3DTevOrder* getTevOrder(u32) { return NULL; }
/* 80110E80 */ virtual void setTevColor(u32, J3DGXColorS10 const*);
- /* 8000E0C4 */ virtual void setTevColor(u32, J3DGXColorS10);
- /* 8000DFC8 */ virtual J3DGXColorS10* getTevColor(u32);
- /* 800732AC */ virtual void setTevKColor(u32, J3DGXColor const*);
- /* 8000E0C0 */ virtual void setTevKColor(u32, J3DGXColor);
- /* 8000DFC0 */ virtual J3DGXColor* getTevKColor(u32);
+ /* 8000E0C4 */ virtual void setTevColor(u32, J3DGXColorS10) {}
+ /* 8000DFC8 */ virtual J3DGXColorS10* getTevColor(u32) { return NULL; }
+ /* 800732AC */ virtual void setTevKColor(u32, J3DGXColor const*) {}
+ /* 8000E0C0 */ virtual void setTevKColor(u32, J3DGXColor) {}
+ /* 8000DFC0 */ virtual J3DGXColor* getTevKColor(u32) { return NULL; }
/* 80322950 */ virtual void setTevKColorSel(u32, u8 const*);
- /* 8000E0B8 */ virtual void setTevKColorSel(u32, u8);
- /* 8000DFB0 */ virtual bool getTevKColorSel(u32);
+ /* 8000E0B8 */ virtual void setTevKColorSel(u32, u8) {}
+ /* 8000DFB0 */ virtual bool getTevKColorSel(u32) { return false; }
/* 80322954 */ virtual void setTevKAlphaSel(u32, u8 const*);
- /* 8000E0B4 */ virtual void setTevKAlphaSel(u32, u8);
- /* 8000DFA8 */ virtual bool getTevKAlphaSel(u32);
+ /* 8000E0B4 */ virtual void setTevKAlphaSel(u32, u8) {}
+ /* 8000DFA8 */ virtual bool getTevKAlphaSel(u32) { return false; }
/* 8032354C */ virtual void setTevStageNum(u8 const*);
- /* 8000E0C8 */ virtual void setTevStageNum(u8);
- /* 8000DFD0 */ virtual u8 getTevStageNum() const;
+ /* 8000E0C8 */ virtual void setTevStageNum(u8) {}
+ /* 8000DFD0 */ virtual u8 getTevStageNum() const { return 1; }
/* 80323550 */ virtual void setTevStage(u32, J3DTevStage const*);
- /* 8000E0A8 */ virtual void setTevStage(u32, J3DTevStage);
- /* 8000DF8C */ virtual J3DTevStage* getTevStage(u32);
+ /* 8000E0A8 */ virtual void setTevStage(u32, J3DTevStage) {}
+ /* 8000DF8C */ virtual J3DTevStage* getTevStage(u32) { return NULL; }
/* 8032295C */ virtual void setTevSwapModeInfo(u32, J3DTevSwapModeInfo const*);
/* 80322958 */ virtual void setTevSwapModeInfo(u32, J3DTevSwapModeInfo);
/* 80322960 */ virtual void setTevSwapModeTable(u32, J3DTevSwapModeTable const*);
- /* 8000E0B0 */ virtual void setTevSwapModeTable(u32, J3DTevSwapModeTable);
- /* 8000DFA0 */ virtual J3DTevSwapModeTable* getTevSwapModeTable(u32);
+ /* 8000E0B0 */ virtual void setTevSwapModeTable(u32, J3DTevSwapModeTable) {}
+ /* 8000DFA0 */ virtual J3DTevSwapModeTable* getTevSwapModeTable(u32) { return NULL; }
/* 80323554 */ virtual void setIndTevStage(u32, J3DIndTevStage const*);
- /* 8000E0A4 */ virtual void setIndTevStage(u32, J3DIndTevStage);
- /* 8000DF84 */ virtual J3DIndTevStage* getIndTevStage(u32);
+ /* 8000E0A4 */ virtual void setIndTevStage(u32, J3DIndTevStage) {}
+ /* 8000DF84 */ virtual J3DIndTevStage* getIndTevStage(u32) { return NULL; }
/* 80323558 */ virtual u32 getTexNoOffset() const;
/* 80322964 */ virtual bool getTevRegOffset() const;
/* 80321FE0 */ virtual void setTexNoOffset(u32);
@@ -809,19 +809,19 @@ public:
virtual u32 getType() = 0;
/* 80317368 */ virtual void setFog(J3DFog);
/* 80317364 */ virtual void setFog(J3DFog*);
- /* 8000DF5C */ virtual J3DFog* getFog();
+ /* 8000DF5C */ virtual J3DFog* getFog() { return NULL; }
/* 8031736C */ virtual void setAlphaComp(J3DAlphaComp const*);
- /* 8000E01C */ virtual void setAlphaComp(J3DAlphaComp const&);
- /* 8000DF54 */ virtual J3DAlphaComp* getAlphaComp();
+ /* 8000E01C */ virtual void setAlphaComp(J3DAlphaComp const&) {}
+ /* 8000DF54 */ virtual J3DAlphaComp* getAlphaComp() { return NULL; }
/* 80317370 */ virtual void setBlend(J3DBlend const*);
- /* 8000E018 */ virtual void setBlend(J3DBlend const&);
- /* 8000DF4C */ virtual J3DBlend* getBlend();
+ /* 8000E018 */ virtual void setBlend(J3DBlend const&) {}
+ /* 8000DF4C */ virtual J3DBlend* getBlend() { return NULL; }
/* 80317374 */ virtual void setZMode(J3DZMode const*);
- /* 8000E014 */ virtual void setZMode(J3DZMode);
- /* 8000DF44 */ virtual J3DZMode* getZMode();
+ /* 8000E014 */ virtual void setZMode(J3DZMode) {}
+ /* 8000DF44 */ virtual J3DZMode* getZMode() { return NULL; }
/* 80317378 */ virtual void setZCompLoc(u8 const*);
- /* 8000E010 */ virtual void setZCompLoc(u8);
- /* 8000DF3C */ virtual u8 getZCompLoc() const;
+ /* 8000E010 */ virtual void setZCompLoc(u8) {}
+ /* 8000DF3C */ virtual u8 getZCompLoc() const { return 0; }
/* 80317380 */ virtual void setDither(u8 const*);
/* 8031737C */ virtual void setDither(u8);
/* 80317384 */ virtual u8 getDither() const;
@@ -1054,17 +1054,17 @@ public:
virtual void load() = 0;
/* 80317314 */ virtual s32 countDLSize();
virtual u32 getType() = 0;
- /* 8000E0A0 */ virtual void setIndTexStageNum(u8);
- /* 8000DF7C */ virtual u8 getIndTexStageNum() const;
+ /* 8000E0A0 */ virtual void setIndTexStageNum(u8) {}
+ /* 8000DF7C */ virtual u8 getIndTexStageNum() const { return 0; }
/* 80317410 */ virtual void setIndTexOrder(u32, J3DIndTexOrder);
/* 8031740C */ virtual void setIndTexOrder(u32, J3DIndTexOrder const*);
- /* 8000DF74 */ virtual J3DIndTexOrder* getIndTexOrder(u32);
+ /* 8000DF74 */ virtual J3DIndTexOrder* getIndTexOrder(u32) { return NULL; }
/* 80317414 */ virtual void setIndTexMtx(u32, J3DIndTexMtx const*);
- /* 8000E060 */ virtual void setIndTexMtx(u32, J3DIndTexMtx);
- /* 8000DF6C */ virtual J3DIndTexMtx* getIndTexMtx(u32);
- /* 8000E020 */ virtual void setIndTexCoordScale(u32, J3DIndTexCoordScale);
+ /* 8000E060 */ virtual void setIndTexMtx(u32, J3DIndTexMtx) {}
+ /* 8000DF6C */ virtual J3DIndTexMtx* getIndTexMtx(u32) { return NULL; }
+ /* 8000E020 */ virtual void setIndTexCoordScale(u32, J3DIndTexCoordScale) {}
/* 80317418 */ virtual void setIndTexCoordScale(u32, J3DIndTexCoordScale const*);
- /* 8000DF64 */ virtual J3DIndTexCoordScale* getIndTexCoordScale(u32);
+ /* 8000DF64 */ virtual J3DIndTexCoordScale* getIndTexCoordScale(u32) { return NULL; }
/* 8031726C */ virtual ~J3DIndBlock() {}
};
@@ -1215,17 +1215,17 @@ public:
/* 80317304 */ virtual s32 countDLSize();
virtual u32 getType() = 0;
/* 80317448 */ virtual void setMatColor(u32, J3DGXColor const*);
- /* 8000E0DC */ virtual void setMatColor(u32, J3DGXColor);
- /* 8000E000 */ virtual J3DGXColor* getMatColor(u32);
+ /* 8000E0DC */ virtual void setMatColor(u32, J3DGXColor) {}
+ /* 8000E000 */ virtual J3DGXColor* getMatColor(u32) { return NULL; }
/* 801A4C0C */ virtual void setAmbColor(u32, J3DGXColor const*);
- /* 8000E0D4 */ virtual void setAmbColor(u32, J3DGXColor);
- /* 8000DFF0 */ virtual J3DGXColor* getAmbColor(u32);
- /* 8000E0E0 */ virtual void setColorChanNum(u8);
+ /* 8000E0D4 */ virtual void setAmbColor(u32, J3DGXColor) {}
+ /* 8000DFF0 */ virtual J3DGXColor* getAmbColor(u32) { return NULL; }
+ /* 8000E0E0 */ virtual void setColorChanNum(u8) {}
/* 8031744C */ virtual void setColorChanNum(u8 const*);
- /* 8000E008 */ virtual u8 getColorChanNum() const;
- /* 8000E0D8 */ virtual void setColorChan(u32, J3DColorChan const&);
+ /* 8000E008 */ virtual u8 getColorChanNum() const { return 0; }
+ /* 8000E0D8 */ virtual void setColorChan(u32, J3DColorChan const&) {}
/* 80317450 */ virtual void setColorChan(u32, J3DColorChan const*);
- /* 8000DFF8 */ virtual J3DColorChan* getColorChan(u32);
+ /* 8000DFF8 */ virtual J3DColorChan* getColorChan(u32) { return NULL; }
/* 801A4C08 */ virtual void setLight(u32, J3DLightObj*);
/* 80317454 */ virtual bool getLight(u32);
/* 80317460 */ virtual void setCullMode(u8 const*);
diff --git a/include/JSystem/J3DGraphBase/J3DTevs.h b/include/JSystem/J3DGraphBase/J3DTevs.h
index f27215544f..136df1f7a5 100644
--- a/include/JSystem/J3DGraphBase/J3DTevs.h
+++ b/include/JSystem/J3DGraphBase/J3DTevs.h
@@ -65,7 +65,10 @@ extern J3DTevSwapModeInfo const j3dDefaultTevSwapMode;
*
*/
struct J3DTevStage {
- /* 8000E230 */ J3DTevStage();
+ /* 8000E230 */ J3DTevStage() {
+ setTevStageInfo(j3dDefaultTevStageInfo);
+ setTevSwapModeInfo(j3dDefaultTevSwapMode);
+ }
void setTevColorOp(u8 param_1, u8 param_2, u8 param_3, u8 param_4, u8 param_5) {
mTevColorOp = mTevColorOp & ~(0x01 << 2) | param_1 << 2;
if (param_1 <= 1) {
@@ -237,13 +240,14 @@ struct J3DTevOrder : public J3DTevOrderInfo {
};
extern u8 j3dTevSwapTableTable[1024];
+extern u8 const data_804563F8;
/**
* @ingroup jsystem-j3d
*
*/
struct J3DTevSwapModeTable {
- /* 8000E134 */ J3DTevSwapModeTable();
+ /* 8000E134 */ J3DTevSwapModeTable() { mIdx = data_804563F8; }
J3DTevSwapModeTable(J3DTevSwapModeTableInfo const& info) {
mIdx = calcTevSwapTableID(info.field_0x0, info.field_0x1, info.field_0x2, info.field_0x3);
}
diff --git a/include/JSystem/J3DGraphLoader/J3DAnmLoader.h b/include/JSystem/J3DGraphLoader/J3DAnmLoader.h
index 789f52bfa0..b59a6c2cac 100644
--- a/include/JSystem/J3DGraphLoader/J3DAnmLoader.h
+++ b/include/JSystem/J3DGraphLoader/J3DAnmLoader.h
@@ -1,6 +1,7 @@
#ifndef J3DANMLOADER_H
#define J3DANMLOADER_H
+#include "JSystem/J3DGraphAnimator/J3DAnimation.h"
enum J3DAnmLoaderDataBaseFlag {
J3DLOADER_UNK_FLAG0,
@@ -20,4 +21,57 @@ struct J3DAnmLoaderDataBase {
static J3DAnmBase* load(void const* param_0) { return load(param_0, J3DLOADER_UNK_FLAG0); }
};
+class J3DAnmLoader {
+public:
+ virtual J3DAnmBase* load(const void*) = 0;
+ virtual void setResource(J3DAnmBase*, const void*) = 0;
+ /* 80339800 */ virtual ~J3DAnmLoader() {}
+};
+
+class J3DAnmKeyLoader_v15 : public J3DAnmLoader {
+public:
+ /* 803384E0 */ J3DAnmKeyLoader_v15();
+ /* 80338FEC */ void readAnmTransform(J3DAnmTransformKeyData const*);
+ /* 80339014 */ void setAnmTransform(J3DAnmTransformKey*, J3DAnmTransformKeyData const*);
+ /* 803390B0 */ void readAnmTextureSRT(J3DAnmTextureSRTKeyData const*);
+ /* 803390D8 */ void setAnmTextureSRT(J3DAnmTextureSRTKey*, J3DAnmTextureSRTKeyData const*);
+ /* 803392B0 */ void readAnmColor(J3DAnmColorKeyData const*);
+ /* 803392D8 */ void setAnmColor(J3DAnmColorKey*, J3DAnmColorKeyData const*);
+ /* 803393C4 */ void readAnmCluster(J3DAnmClusterKeyData const*);
+ /* 803393EC */ void setAnmCluster(J3DAnmClusterKey*, J3DAnmClusterKeyData const*);
+ /* 80339458 */ void readAnmTevReg(J3DAnmTevRegKeyData const*);
+ /* 80339480 */ void setAnmTevReg(J3DAnmTevRegKey*, J3DAnmTevRegKeyData const*);
+ /* 8033960C */ void readAnmVtxColor(J3DAnmVtxColorKeyData const*);
+ /* 80339634 */ void setAnmVtxColor(J3DAnmVtxColorKey*, J3DAnmVtxColorKeyData const*);
+
+ /* 80338D44 */ virtual J3DAnmBase* load(void const*);
+ /* 80338E8C */ virtual void setResource(J3DAnmBase*, void const*);
+ /* 803384FC */ virtual ~J3DAnmKeyLoader_v15();
+
+ /* 0x4 */ J3DAnmBase* mAnm;
+};
+
+class J3DAnmFullLoader_v15 : public J3DAnmLoader {
+public:
+ /* 80338468 */ J3DAnmFullLoader_v15();
+ /* 80338800 */ void readAnmTransform(J3DAnmTransformFullData const*);
+ /* 80338828 */ void setAnmTransform(J3DAnmTransformFull*, J3DAnmTransformFullData const*);
+ /* 803388BC */ void readAnmColor(J3DAnmColorFullData const*);
+ /* 803388E4 */ void setAnmColor(J3DAnmColorFull*, J3DAnmColorFullData const*);
+ /* 803389B0 */ void readAnmTexPattern(J3DAnmTexPatternFullData const*);
+ /* 803389D8 */ void setAnmTexPattern(J3DAnmTexPattern*, J3DAnmTexPatternFullData const*);
+ /* 80338A7C */ void readAnmVisibility(J3DAnmVisibilityFullData const*);
+ /* 80338AA4 */ void setAnmVisibility(J3DAnmVisibilityFull*, J3DAnmVisibilityFullData const*);
+ /* 80338B20 */ void readAnmCluster(J3DAnmClusterFullData const*);
+ /* 80338B48 */ void setAnmCluster(J3DAnmClusterFull*, J3DAnmClusterFullData const*);
+ /* 80338BB4 */ void readAnmVtxColor(J3DAnmVtxColorFullData const*);
+ /* 80338BDC */ void setAnmVtxColor(J3DAnmVtxColorFull*, J3DAnmVtxColorFullData const*);
+
+ /* 80338558 */ virtual J3DAnmBase* load(void const*);
+ /* 803386A0 */ virtual void setResource(J3DAnmBase*, void const*);
+ /* 80338484 */ virtual ~J3DAnmFullLoader_v15();
+
+ /* 0x4 */ J3DAnmBase* mAnm;
+};
+
#endif /* J3DANMLOADER_H */
diff --git a/include/JSystem/JGeometry.h b/include/JSystem/JGeometry.h
index 673f99c328..4f82b1152c 100644
--- a/include/JSystem/JGeometry.h
+++ b/include/JSystem/JGeometry.h
@@ -171,7 +171,9 @@ struct TVec3<f32> : public Vec {
}
inline TVec3<f32> operator+(const TVec3<f32>& b) {
- return *this += b;
+ TVec3<f32> a = *this;
+ a += b;
+ return a;
}
// inline TVec3<f32> operator+(const TVec3<f32>& b) {
diff --git a/include/JSystem/JParticle/JPAParticle.h b/include/JSystem/JParticle/JPAParticle.h
index 5d057476d9..ed303c3b42 100644
--- a/include/JSystem/JParticle/JPAParticle.h
+++ b/include/JSystem/JParticle/JPAParticle.h
@@ -81,9 +81,9 @@ public:
class JPAParticleCallBack {
public:
JPAParticleCallBack() {}
- virtual ~JPAParticleCallBack();
- virtual void execute(JPABaseEmitter*, JPABaseParticle*);
- virtual void draw(JPABaseEmitter*, JPABaseParticle*);
+ virtual ~JPAParticleCallBack() = 0;
+ virtual void execute(JPABaseEmitter*, JPABaseParticle*) {}
+ virtual void draw(JPABaseEmitter*, JPABaseParticle*) {}
};
// not sure where this belongs
diff --git a/include/JSystem/JUtility/JUTFont.h b/include/JSystem/JUtility/JUTFont.h
index b0a1a5c848..ec7c7a1099 100644
--- a/include/JSystem/JUtility/JUTFont.h
+++ b/include/JSystem/JUtility/JUTFont.h
@@ -77,7 +77,7 @@ public:
};
/* 0x0C */ virtual void setGX() = 0;
- /* 0x10 */ virtual void setGX(JUtility::TColor col1, JUtility::TColor col2);
+ /* 0x10 */ virtual void setGX(JUtility::TColor col1, JUtility::TColor col2) { setGX(); }
/* 0x14 */ virtual f32 drawChar_scale(f32 a1, f32 a2, f32 a3, f32 a4, int a5, bool a6) = 0;
/* 0x18 */ virtual int getLeading() const = 0;
/* 0x1C */ virtual s32 getAscent() const = 0;
@@ -85,8 +85,8 @@ public:
/* 0x24 */ virtual s32 getHeight() const = 0;
/* 0x28 */ virtual s32 getWidth() const = 0;
/* 0x2C */ virtual void getWidthEntry(int i_no, TWidth* width) const = 0;
- /* 0x30 */ virtual int getCellWidth() const;
- /* 0x34 */ virtual s32 getCellHeight() const;
+ /* 0x30 */ virtual s32 getCellWidth() const { return getWidth(); }
+ /* 0x34 */ virtual s32 getCellHeight() const { return getHeight(); }
/* 0x38 */ virtual int getFontType() const = 0;
/* 0x3C */ virtual ResFONT* getResFont() const = 0;
/* 0x40 */ virtual bool isLeadByte(int a1) const = 0;
diff --git a/include/JSystem/JUtility/JUTResFont.h b/include/JSystem/JUtility/JUTResFont.h
index 36e79aa3bc..99574b712e 100644
--- a/include/JSystem/JUtility/JUTResFont.h
+++ b/include/JSystem/JUtility/JUTResFont.h
@@ -33,7 +33,7 @@ public:
/* 802DE01C */ virtual s32 getHeight() const;
/* 802DDFF8 */ virtual s32 getWidth() const;
/* 802DFC64 */ virtual void getWidthEntry(int, JUTFont::TWidth*) const;
- /* 802DFD0C */ virtual int getCellWidth() const;
+ /* 802DFD0C */ virtual s32 getCellWidth() const;
/* 802DFD58 */ virtual s32 getCellHeight() const;
/* 802DDFE0 */ virtual int getFontType() const;
/* 802DDFD8 */ virtual ResFONT* getResFont() const;