d_meter2_draw done (#2028)

* d_meter2_draw done

* some meter_draw doc

* remove asm

* d_file_sel_info fixed
This commit is contained in:
TakaRikka
2024-01-09 16:10:40 +02:00
committed by GitHub
parent 28bef08667
commit 99f0efe975
103 changed files with 4216 additions and 14622 deletions
+8
View File
@@ -1810,6 +1810,14 @@ inline void dComIfGs_setEquipBottleItemEmpty(u8 i_curItem) {
g_dComIfG_gameInfo.info.getPlayer().getItem().setEquipBottleItemEmpty(i_curItem);
}
inline u8 dComIfGs_getBButtonItemKey() {
return g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusA().getSelectEquip(4);
}
inline void dComIfGs_setBButtonItemKey(u8 i_itemNo) {
g_dComIfG_gameInfo.info.getPlayer().getPlayerStatusA().setSelectEquip(4, i_itemNo);
}
void dComIfGp_setSelectItem(int index);
s32 dComIfGp_offHeapLockFlag(int flag);
void dComIfGp_createSubExpHeap2D();
+1
View File
@@ -356,6 +356,7 @@ public:
bool Active() { return field_0x24 == 0; }
f32 TrimHeight() { return mTrimHeight; }
int Type() { return mCurType; }
int Mode() { return mNextMode; }
bool i_chkFlag(u32 i_flag) { return mEventFlags & i_flag; }
void i_setFlag(u32 i_flag) { mEventFlags |= i_flag; }
-12
View File
@@ -55,18 +55,6 @@ private:
/* 0x34 */ f32 field_0x34;
}; // Size: 0x38
class dDlst_FileInfo_c : public dDlst_base_c {
public:
dDlst_FileInfo_c() {}
virtual void draw();
virtual ~dDlst_FileInfo_c(); // inlined
/* 0x04 */ J2DScreen* Scr;
/* 0x08 */ JUTFont* mFont;
/* 0x0C */ J2DPane* mBasePane;
/* 0x10 */ J2DPane* field_0x10;
};
class dDlst_2D_c : public dDlst_base_c {
public:
/* 80053A00 */ dDlst_2D_c(ResTIMG* image, s16 posX, s16 posY, s16 width, s16 height, u8 alpha);
+16
View File
@@ -3,6 +3,18 @@
#include "d/d_drawlist.h"
class dDlst_FileInfo_c : public dDlst_base_c {
public:
dDlst_FileInfo_c() {}
virtual void draw();
virtual ~dDlst_FileInfo_c() {}
/* 0x04 */ J2DScreen* Scr;
/* 0x08 */ JUTFont* mFont;
/* 0x0C */ J2DPane* mBasePane;
/* 0x10 */ J2DPane* field_0x10;
};
class CPaneMgrAlpha;
class dSv_save_c;
@@ -20,6 +32,10 @@ public:
/* 801924A0 */ virtual ~dFile_info_c();
// fake? needed to get vtable size correct
virtual void dummy() = 0;
virtual void dummy2() = 0;
void setBasePane(J2DPane* pane) { mFileInfo.mBasePane = pane; }
CPaneMgrAlpha* getDatBase() { return mDatBase; }
CPaneMgrAlpha* getNoDatBase() { return mNoDatBase; }
+23 -23
View File
@@ -123,8 +123,8 @@ private:
/* 0x128 */ u32 field_0x128;
/* 0x12C */ int field_0x12c;
/* 0x130 */ f32 field_0x130;
/* 0x134 */ f32 mAButtonTalkPosX[2];
/* 0x13C */ f32 mAButtonTalkPosY[2];
/* 0x134 */ f32 mButtonATalkPosX[2];
/* 0x13C */ f32 mButtonATalkPosY[2];
/* 0x144 */ f32 field_0x144;
/* 0x148 */ f32 field_0x148[2];
/* 0x150 */ f32 field_0x150[2];
@@ -236,24 +236,24 @@ private:
/* 0x2A8 */ f32 mKeyNumScale;
/* 0x2AC */ f32 mKeyNumPosX;
/* 0x2B0 */ f32 mKeyNumPosY;
/* 0x2B4 */ f32 mAButtonScale;
/* 0x2B8 */ f32 mAButtonPosX;
/* 0x2BC */ f32 mAButtonPosY;
/* 0x2C0 */ f32 mAButtonFontScale;
/* 0x2C4 */ f32 mAButtonFontPosX;
/* 0x2C8 */ f32 mAButtonFontPosY;
/* 0x2B4 */ f32 mButtonAScale;
/* 0x2B8 */ f32 mButtonAPosX;
/* 0x2BC */ f32 mButtonAPosY;
/* 0x2C0 */ f32 mButtonATextScale;
/* 0x2C4 */ f32 mButtonATextPosX;
/* 0x2C8 */ f32 mButtonATextPosY;
/* 0x2CC */ f32 field_0x2cc;
/* 0x2D0 */ f32 mBButtonPosX;
/* 0x2D4 */ f32 mBButtonPosY;
/* 0x2D0 */ f32 mButtonBPosX;
/* 0x2D4 */ f32 mButtonBPosY;
/* 0x2D8 */ u8 field_0x2d8[0x2e4 - 0x2d8];
/* 0x2E4 */ f32 mAButtonTalkScale[2];
/* 0x2E4 */ f32 mButtonATalkScale[2];
/* 0x2EC */ f32 field_0x2ec[2];
/* 0x2F4 */ f32 mBItemBaseScale[2];
/* 0x2FC */ f32 mBItemBasePosX[2];
/* 0x304 */ f32 mBItemBasePosY[2];
/* 0x30C */ f32 mBButtonFontScale;
/* 0x310 */ f32 mBButtonFontPosX;
/* 0x314 */ f32 mBButtonFontPosY;
/* 0x2F4 */ f32 mItemBBaseScale[2];
/* 0x2FC */ f32 mItemBBasePosX[2];
/* 0x304 */ f32 mItemBBasePosY[2];
/* 0x30C */ f32 mButtonBFontScale;
/* 0x310 */ f32 mButtonBFontPosX;
/* 0x314 */ f32 mButtonBFontPosY;
/* 0x318 */ u8 field_0x318[0x324 - 0x318];
/* 0x324 */ f32 field_0x324;
/* 0x328 */ f32 field_0x328;
@@ -299,12 +299,12 @@ private:
/* 0x42C */ f32 mVesselAlpha;
/* 0x430 */ f32 field_0x430;
/* 0x434 */ u8 field_0x434[0x448 - 0x434];
/* 0x448 */ f32 mDPadButtonOFFPosX;
/* 0x44C */ f32 mDPadButtonOFFPosY;
/* 0x450 */ f32 mDPadButtonScale;
/* 0x454 */ f32 mDPadButtonONPosX;
/* 0x458 */ f32 mDPadButtonONPosY;
/* 0x45C */ f32 mDPadButtonLetterSpacing;
/* 0x448 */ f32 mButtonCrossOFFPosX;
/* 0x44C */ f32 mButtonCrossOFFPosY;
/* 0x450 */ f32 mButtonCrossScale;
/* 0x454 */ f32 mButtonCrossONPosX;
/* 0x458 */ f32 mButtonCrossONPosY;
/* 0x45C */ f32 mButtonCrossTextScale;
/* 0x460 */ u8 field_0x460[0x4bc - 0x460];
/* 0x4BC */ u8 field_0x4bc;
/* 0x4BC */ u8 field_0x4bd;
+69 -95
View File
@@ -153,6 +153,23 @@ class dKantera_icon_c;
class dMeter2Draw_c : public dDlst_base_c {
public:
enum {
SELECT_X_e,
SELECT_Y_e,
SELECT_Z_e,
SELECT_MAX_e = 2,
};
struct item_params {
/* 0x00 */ f32 pos_x;
/* 0x04 */ f32 pos_y;
/* 0x08 */ f32 scale;
/* 0x0C */ f32 rotation;
/* 0x10 */ f32 num_pos_x;
/* 0x14 */ f32 num_pos_y;
/* 0x18 */ f32 num_scale;
};
/* 8020FAB4 */ dMeter2Draw_c(JKRExpHeap*);
/* 80210FB0 */ void init();
/* 8021135C */ void exec(u32);
@@ -213,19 +230,19 @@ public:
/* 80217AB4 */ void drawButtonXY(int, u8, u8, bool, bool);
/* 80218238 */ f32 getButtonCrossParentInitTransY();
/* 80218254 */ void drawButtonCross(f32, f32);
/* 80218338 */ void setAlphaButtonCrossAnimeMin();
/* 802183A8 */ void setAlphaButtonCrossAnimeMax();
/* 80218448 */ void setAlphaButtonCrossItemAnimeMin();
/* 80218524 */ void setAlphaButtonCrossItemAnimeMax();
/* 802185E8 */ void setAlphaButtonCrossMapAnimeMin();
/* 802186C4 */ void setAlphaButtonCrossMapAnimeMax();
/* 80218788 */ void setAlphaButtonChange(bool);
/* 8021901C */ void setAlphaButtonAnimeMin();
/* 802190A8 */ void setAlphaButtonAnimeMax();
/* 80219174 */ void setAlphaButtonAAnimeMin();
/* 80219258 */ void setAlphaButtonAAnimeMax();
/* 80219324 */ void setAlphaButtonBAnimeMin();
/* 80219474 */ void setAlphaButtonBAnimeMax();
/* 80218338 */ void setAlphButtonACrossAnimeMin();
/* 802183A8 */ void setAlphButtonACrossAnimeMax();
/* 80218448 */ void setAlphButtonACrossItemAnimeMin();
/* 80218524 */ void setAlphButtonACrossItemAnimeMax();
/* 802185E8 */ void setAlphButtonACrossMapAnimeMin();
/* 802186C4 */ void setAlphButtonACrossMapAnimeMax();
/* 80218788 */ void setAlphButtonAChange(bool);
/* 8021901C */ void setAlphButtonAAnimeMin();
/* 802190A8 */ void setAlphButtonAAnimeMax();
/* 80219174 */ void setAlphButtonAAAnimeMin();
/* 80219258 */ void setAlphButtonAAAnimeMax();
/* 80219324 */ void setAlphButtonABAnimeMin();
/* 80219474 */ void setAlphButtonABAnimeMax();
/* 802195A4 */ void setButtonIconAAlpha(u8, u32, bool);
/* 80219788 */ void setButtonIconBAlpha(u8, u32, bool);
/* 80219A84 */ void setButtonIconMidonaAlpha(u32);
@@ -249,7 +266,7 @@ public:
/* 8021BC24 */ bool getCameraSubject();
/* 8021BC54 */ bool getItemSubject();
/* 8021BCAC */ bool getPlayerSubject();
/* 8021BCC0 */ bool isBButtonShow(bool);
/* 8021BCC0 */ bool isButtonBShow(bool);
/* 8021BDD0 */ s16 getButtonTimer();
/* 802102F8 */ virtual ~dMeter2Draw_c();
@@ -270,39 +287,12 @@ public:
void setEmphasisB(u8 param_0) { field_0x762 = param_0; }
private:
/* 0x004 */ f32 field_0x4;
/* 0x008 */ f32 field_0x8;
/* 0x00C */ f32 field_0xc;
/* 0x010 */ f32 field_0x10;
/* 0x014 */ f32 field_0x14;
/* 0x028 */ f32 field_0x18;
/* 0x01C */ f32 field_0x1c;
/* 0x020 */ f32 field_0x20;
/* 0x024 */ f32 field_0x24;
/* 0x028 */ f32 field_0x28;
/* 0x02C */ f32 field_0x2c;
/* 0x030 */ f32 field_0x30;
/* 0x034 */ f32 field_0x34;
/* 0x038 */ f32 field_0x38;
/* 0x03C */ f32 field_0x3c;
/* 0x040 */ f32 field_0x40;
/* 0x044 */ f32 field_0x44;
/* 0x048 */ f32 field_0x48;
/* 0x04C */ f32 field_0x4c;
/* 0x050 */ f32 field_0x50;
/* 0x054 */ f32 field_0x54;
/* 0x058 */ f32 field_0x58;
/* 0x05C */ f32 field_0x5c;
/* 0x060 */ f32 field_0x60;
/* 0x064 */ f32 field_0x64;
/* 0x068 */ f32 field_0x68;
/* 0x06C */ f32 field_0x6c;
/* 0x070 */ f32 field_0x70;
/* 0x074 */ JKRExpHeap* mp_heap;
/* 0x004 */ item_params mItemParams[4];
/* 0x074 */ JKRExpHeap* heap;
/* 0x078 */ J2DScreen* mpScreen;
/* 0x07C */ J2DScreen* mpKanteraScreen;
/* 0x080 */ J2DScreen* mpPikariScreen;
/* 0x084 */ J2DScreen* mpItemNumTex[2][3];
/* 0x084 */ J2DPicture* mpItemNumTex[2][3];
/* 0x09C */ CPaneMgr* field_0x9c[3];
/* 0x0A8 */ int field_0xa8;
/* 0x0AC */ dKantera_icon_c* mpKanteraMeter[2];
@@ -313,7 +303,7 @@ private:
/* 0x0E8 */ CPaneMgr* mpXYText[5][3];
/* 0x124 */ CPaneMgr* mpLifeParent;
/* 0x128 */ CPaneMgr* mpLifeParts[20];
/* 0x178 */ CPaneMgr* mpHeartMask[20];
/* 0x178 */ CPaneMgr* mpHeartMark[20];
/* 0x1C8 */ CPaneMgr* mpBigHeart;
/* 0x1CC */ CPaneMgr* mpMagicParent;
/* 0x1D0 */ CPaneMgr* mpMagicBase;
@@ -352,22 +342,22 @@ private:
/* 0x36C */ int field_0x36c;
/* 0x370 */ u8 field_0x370[0x2C];
/* 0x39C */ CPaneMgr* mpPikariParent;
/* 0x3A0 */ CPaneMgr* mpLifeTexture[20][2];
/* 0x440 */ CPaneMgr* mpHeartBase[20];
/* 0x3A0 */ CPaneMgrAlpha* mpLifeTexture[20][2];
/* 0x440 */ CPaneMgrAlpha* mpHeartBase[20];
/* 0x490 */ CPaneMgr* mpJujiI[5];
/* 0x4A4 */ CPaneMgr* mpJujiM[5];
/* 0x4B8 */ CPaneMgr* mpUzu;
/* 0x4B8 */ CPaneMgrAlpha* mpUzu;
/* 0x4BC */ u8 field_0x4bc[0x28];
/* 0x4E4 */ JKRHeap* mpItemBTex[2][2];
/* 0x4F4 */ JKRHeap* mpItemXYTex[2][2][2];
/* 0x4E4 */ ResTIMG* mpItemBTex[2][2];
/* 0x4F4 */ ResTIMG* mpItemXYTex[2][2][2];
/* 0x514 */ J2DPicture* mpItemBPane;
/* 0x518 */ J2DPicture* mpItemXYPane[3];
/* 0x524 */ int field_0x524[2][2];
/* 0x534 */ J2DAnmTransformKey* mPikariBck;
/* 0x538 */ J2DAnmColorKey* mPikariBpk;
/* 0x53C */ J2DAnmColorKey* mpOxygenBpk[3];
/* 0x548 */ JUtility::TColor field_0x548;
/* 0x54C */ JUtility::TColor field_0x54c;
/* 0x548 */ JUtility::TColor mPikariBlack;
/* 0x54C */ JUtility::TColor mPikariWhite;
/* 0x550 */ f32 field_0x550;
/* 0x554 */ f32 field_0x554;
/* 0x558 */ f32 field_0x558;
@@ -409,13 +399,13 @@ private:
/* 0x6E8 */ f32 field_0x6e8;
/* 0x6EC */ f32 field_0x6ec;
/* 0x6F0 */ f32 field_0x6f0;
/* 0x6F4 */ f32 field_0x6f4;
/* 0x6F4 */ f32 mLightDropVesselScale;
/* 0x6F8 */ f32 field_0x6f8;
/* 0x6FC */ f32 field_0x6fc;
/* 0x700 */ u8 field_0x700[0x18];
/* 0x718 */ f32 field_0x718;
/* 0x71C */ u8 field_0x71c[4];
/* 0x720 */ f32 mZButtonAlpha;
/* 0x720 */ f32 mButtonZAlpha;
/* 0x724 */ f32 field_0x724;
/* 0x728 */ f32 field_0x728;
/* 0x72C */ f32 field_0x72c;
@@ -446,22 +436,22 @@ private:
/* 0x76B */ u8 field_0x76b;
/* 0x76C */ u8 field_0x76c[2];
/* 0x76E */ u8 field_0x76e;
/* 0x76F */ u8 field_0x76f;
/* 0x76F */ u8 mButtonBItem;
/* 0x770 */ u8 field_0x770;
/* 0x771 */ u8 field_0x771;
/* 0x772 */ u8 field_0x772;
/* 0x773 */ u8 field_0x773[2];
/* 0x778 */ f32 mHUDScale;
/* 0x77C */ f32 mHUDAlpha;
/* 0x778 */ f32 mParentScale;
/* 0x77C */ f32 mParentAlpha;
/* 0x780 */ f32 mButtonsPosX;
/* 0x784 */ f32 mButtonsPosY;
/* 0x788 */ f32 mButtonsScale;
/* 0x78C */ f32 field_0x78c;
/* 0x790 */ f32 field_0x790;
/* 0x794 */ f32 mLifeGaugeHeartAlpha;
/* 0x798 */ f32 mLifeGaugeBaseAlpha;
/* 0x790 */ f32 mLifeParentAlpha;
/* 0x794 */ f32 mLifeParentHeartAlpha;
/* 0x798 */ f32 mHeartBaseAlpha;
/* 0x79C */ f32 mHeartAlpha;
/* 0x7A0 */ f32 mLargeHeartAlpha;
/* 0x7A0 */ f32 mBigHeartAlpha;
/* 0x7A4 */ f32 field_0x7a4;
/* 0x7A8 */ f32 mMagicMeterAlpha;
/* 0x7AC */ f32 mMagicMeterFrameAlpha;
@@ -484,44 +474,28 @@ private:
/* 0x7F0 */ f32 field_0x7f0;
/* 0x7F4 */ f32 mMainHUDButtonsAlpha;
/* 0x7F8 */ f32 mButtonDisplayBackAlpha;
/* 0x7FC */ f32 mAButtonAlpha;
/* 0x800 */ f32 mBButtonAlpha;
/* 0x804 */ f32 mXButtonAlpha;
/* 0x808 */ f32 mYButtonAlpha;
/* 0x7FC */ f32 mButtonAAlpha;
/* 0x800 */ f32 mButtonBAlpha;
/* 0x804 */ f32 mButtonXAlpha;
/* 0x808 */ f32 mButtonYAlpha;
/* 0x80C */ f32 field_0x80c;
/* 0x810 */ f32 field_0x810;
/* 0x814 */ f32 mBItemBaseAlpha[2];
/* 0x81C */ f32 mXButtonItemBaseAlpha[2];
/* 0x824 */ f32 mYButtonItemBaseAlpha[2];
/* 0x814 */ f32 mItemBBaseAlpha[2];
/* 0x81C */ f32 mButtonXItemBaseAlpha[2];
/* 0x824 */ f32 mButtonYItemBaseAlpha[2];
/* 0x82C */ f32 field_0x82c[2];
/* 0x834 */ f32 mZButtonItemBaseAlpha;
/* 0x834 */ f32 mButtonZItemBaseAlpha;
/* 0x838 */ f32 mButtonBaseAlpha;
/* 0x83C */ f32 mAButtonFontSpacing;
/* 0x840 */ f32 mDPadButtonAlpha;
/* 0x844 */ f32 mDPadButtonITEMAlpha;
/* 0x848 */ f32 mDPadButtonMAPAlpha;
/* 0x84C */ u8 field_0x84c;
/* 0x84D */ u8 field_0x84d;
/* 0x84E */ u8 field_0x84e;
/* 0x84F */ u8 field_0x84f;
/* 0x850 */ u8 field_0x850;
/* 0x851 */ u8 field_0x851;
/* 0x852 */ u8 field_0x852;
/* 0x853 */ u8 field_0x853;
/* 0x854 */ u8 field_0x854;
/* 0x855 */ u8 field_0x855;
/* 0x856 */ u8 field_0x856;
/* 0x857 */ u8 field_0x857;
/* 0x858 */ u8 field_0x858;
/* 0x859 */ u8 field_0x859;
/* 0x85A */ u8 field_0x85a;
/* 0x85B */ u8 field_0x85b;
/* 0x85C */ u8 field_0x85c;
/* 0x85D */ u8 field_0x85d;
/* 0x85E */ u8 field_0x85e;
/* 0x85F */ u8 field_0x85f;
/* 0x860 */ u8 field_0x860;
/* 0x861 */ u8 field_0x861;
/* 0x83C */ f32 mButtonATextSpacing;
/* 0x840 */ f32 mButtonCrossAlpha;
/* 0x844 */ f32 mButtonCrossITEMAlpha;
/* 0x848 */ f32 mButtonCrossMAPAlpha;
/* 0x84C */ GXColor mButtonATextColor;
/* 0x850 */ GXColor mButtonBTextColor;
/* 0x854 */ GXColor field_0x854;
/* 0x858 */ GXColor mButtonZTextColor;
/* 0x85C */ GXColor mButtonXYTextColor;
/* 0x860 */ u8 field_0x860[2];
};
#endif /* D_METER_D_METER2_DRAW_H */
+16
View File
@@ -164,6 +164,8 @@ public:
s16 getFloatingMessageTimer() { return mFloatingMessageTimer; }
u16 getFloatingMessageID() { return mFloatingMessageID; }
s16 getHorseLifeCount() { return mHorseLifeCount; }
void setMeterItemPanePtr(int i_no, CPaneMgr* i_pane) { mMeterItemPanePtr[i_no] = i_pane; }
bool isShopTalkFlag() { return mShopTalkFlag != false; }
u8 getCollectCursorPosX() { return mCollectCursorPosX; }
u8 getCollectCursorPosY() { return mCollectCursorPosY; }
void setCollectCursorPosXY(u8 x, u8 y) {
@@ -294,6 +296,10 @@ inline void dMeter2Info_getStringKanji(u32 param_0, char* param_1, JMSMesgEntry_
g_meter2_info.getStringKanji(param_0, param_1, param_2);
}
inline void dMeter2Info_getStringKana(u32 param_0, char* param_1, JMSMesgEntry_c* param_2) {
g_meter2_info.getStringKana(param_0, param_1, param_2);
}
inline f32 dMeter2Info_getStringLength(JUTFont* param_0, f32 param_1, f32 param_2, char* param_3) {
return g_meter2_info.getStringLength(param_0, param_1, param_2, param_3);
}
@@ -671,10 +677,20 @@ inline void dMeter2Info_resetMeterString() {
g_meter2_info.resetMeterString();
}
inline void dMeter2Info_setMeterItemPanePtr(int i_no, CPaneMgr* i_pane) {
g_meter2_info.setMeterItemPanePtr(i_no, i_pane);
}
inline bool dMeter2Info_isShopTalkFlag() {
return g_meter2_info.isShopTalkFlag();
}
const char* dMeter2Info_getNumberTextureName(int pIndex);
void dMeter2Info_recieveLetter();
u8 dMeter2Info_getNewLetterNum();
int dMeter2Info_setNewLetterSender();
bool dMeter2Info_isItemOpenCheck();
bool dMeter2Info_isMapOpenCheck();
#endif /* D_METER_D_METER2_INFO_H */
File diff suppressed because it is too large Load Diff
+6
View File
@@ -72,6 +72,12 @@ public:
f32 getInitScaleX() { return mInitScale.x; }
f32 getInitScaleY() { return mInitScale.y; }
f32 getScaleX() { return mPane->getScaleX(); }
f32 getScaleY() { return mPane->getScaleY(); }
f32 getTranslateX() { return mPane->getTranslateX(); }
f32 getTranslateY() { return mPane->getTranslateY(); }
JUtility::TColor getInitBlack() { return mInitBlack; }
JUtility::TColor getInitWhite() { return mInitWhite; }
+1
View File
@@ -31,6 +31,7 @@ public:
u8 getAlpha() { return getPanePtr()->getAlpha(); }
s16 getAlphaTimer() { return mAlphaTimer; }
void alphaAnimeStart(s16 start) { mAlphaTimer = start; }
u8 getInitAlpha() { return mInitAlpha; }
/* 0x04 */ J2DPane* mPane;
/* 0x08 */ JKRExpHeap* heap;