diff --git a/include/msg/scrn/d_msg_scrn_3select.h b/include/d/msg/d_msg_scrn_3select.h similarity index 100% rename from include/msg/scrn/d_msg_scrn_3select.h rename to include/d/msg/d_msg_scrn_3select.h diff --git a/include/msg/scrn/d_msg_scrn_arrow.h b/include/d/msg/d_msg_scrn_arrow.h similarity index 74% rename from include/msg/scrn/d_msg_scrn_arrow.h rename to include/d/msg/d_msg_scrn_arrow.h index ec521936aae..8121b983c46 100644 --- a/include/msg/scrn/d_msg_scrn_arrow.h +++ b/include/d/msg/d_msg_scrn_arrow.h @@ -20,12 +20,12 @@ public: /* 8023BFC4 */ void dotAnimeInit(); /* 8023C010 */ void dotAnimeMove(); - /* 0x04 */ J2DScreen* mScreen; - /* 0x08 */ J2DAnmTransform* mAnmBck; - /* 0x0C */ J2DAnmColor* mAnmBpk; - /* 0x10 */ CPaneMgr* mPaneMgr0; - /* 0x14 */ CPaneMgr* mPaneMgr1; - /* 0x18 */ CPaneMgr* mPaneMgr2; + /* 0x04 */ J2DScreen* mpScreen; + /* 0x08 */ J2DAnmTransform* mpBck; + /* 0x0C */ J2DAnmColor* mpBpk; + /* 0x10 */ CPaneMgr* mpParent_c; + /* 0x14 */ CPaneMgr* mpArw_c; + /* 0x18 */ CPaneMgr* mpDot_c; /* 0x1C */ f32 mBckFrame; /* 0x20 */ f32 mBpkFrame; }; diff --git a/include/msg/scrn/d_msg_scrn_base.h b/include/d/msg/d_msg_scrn_base.h similarity index 100% rename from include/msg/scrn/d_msg_scrn_base.h rename to include/d/msg/d_msg_scrn_base.h diff --git a/include/msg/scrn/d_msg_scrn_boss.h b/include/d/msg/d_msg_scrn_boss.h similarity index 94% rename from include/msg/scrn/d_msg_scrn_boss.h rename to include/d/msg/d_msg_scrn_boss.h index bc1b6775ba1..38fdc669abc 100644 --- a/include/msg/scrn/d_msg_scrn_boss.h +++ b/include/d/msg/d_msg_scrn_boss.h @@ -1,7 +1,7 @@ #ifndef MSG_SCRN_D_MSG_SCRN_BOSS_H #define MSG_SCRN_D_MSG_SCRN_BOSS_H -#include "msg/scrn/d_msg_scrn_base.h" +#include "d/msg/d_msg_scrn_base.h" class dMsgScrnBoss_c : public dMsgScrnBase_c { public: diff --git a/include/msg/scrn/d_msg_scrn_explain.h b/include/d/msg/d_msg_scrn_explain.h similarity index 96% rename from include/msg/scrn/d_msg_scrn_explain.h rename to include/d/msg/d_msg_scrn_explain.h index ad9fc8efe7f..3ef21b932c5 100644 --- a/include/msg/scrn/d_msg_scrn_explain.h +++ b/include/d/msg/d_msg_scrn_explain.h @@ -1,7 +1,7 @@ #ifndef MSG_SCRN_D_MSG_SCRN_EXPLAIN_H #define MSG_SCRN_D_MSG_SCRN_EXPLAIN_H -#include "msg/scrn/d_msg_scrn_base.h" +#include "d/msg/d_msg_scrn_base.h" class J2DOrthoGraph; class STControl; @@ -53,7 +53,7 @@ private: /* 0x38 */ dMsgScrn3Select_c* mpSelect_c; /* 0x3C */ COutFont_c* mpOutFont; /* 0x40 */ J2DPicture* mpBackTex; - /* 0x44 */ STControl* field_0x44; + /* 0x44 */ STControl* mpStick; /* 0x48 */ f32 field_0x48; /* 0x4C */ f32 field_0x4c; /* 0x50 */ f32 field_0x50; diff --git a/include/msg/scrn/d_msg_scrn_howl.h b/include/d/msg/d_msg_scrn_howl.h similarity index 99% rename from include/msg/scrn/d_msg_scrn_howl.h rename to include/d/msg/d_msg_scrn_howl.h index 73d504f7cc8..9ef61a332e6 100644 --- a/include/msg/scrn/d_msg_scrn_howl.h +++ b/include/d/msg/d_msg_scrn_howl.h @@ -2,7 +2,7 @@ #define MSG_SCRN_D_MSG_SCRN_HOWL_H #include "dolphin/types.h" -#include "msg/scrn/d_msg_scrn_base.h" +#include "d/msg/d_msg_scrn_base.h" struct dMsgScrnHowl_c : public dMsgScrnBase_c { /* 8024096C */ dMsgScrnHowl_c(); diff --git a/include/msg/scrn/d_msg_scrn_item.h b/include/d/msg/d_msg_scrn_item.h similarity index 100% rename from include/msg/scrn/d_msg_scrn_item.h rename to include/d/msg/d_msg_scrn_item.h diff --git a/include/msg/scrn/d_msg_scrn_jimaku.h b/include/d/msg/d_msg_scrn_jimaku.h similarity index 100% rename from include/msg/scrn/d_msg_scrn_jimaku.h rename to include/d/msg/d_msg_scrn_jimaku.h diff --git a/include/msg/scrn/d_msg_scrn_kanban.h b/include/d/msg/d_msg_scrn_kanban.h similarity index 92% rename from include/msg/scrn/d_msg_scrn_kanban.h rename to include/d/msg/d_msg_scrn_kanban.h index 060abfd3ea9..3def92dc554 100644 --- a/include/msg/scrn/d_msg_scrn_kanban.h +++ b/include/d/msg/d_msg_scrn_kanban.h @@ -1,8 +1,7 @@ #ifndef MSG_SCRN_D_MSG_SCRN_KANBAN_H #define MSG_SCRN_D_MSG_SCRN_KANBAN_H -#include "dolphin/types.h" -#include "msg/scrn/d_msg_scrn_base.h" +#include "d/msg/d_msg_scrn_base.h" class JKRExpHeap; class J2DAnmTransform; diff --git a/include/d/msg/d_msg_scrn_light.h b/include/d/msg/d_msg_scrn_light.h new file mode 100644 index 00000000000..54e988e116f --- /dev/null +++ b/include/d/msg/d_msg_scrn_light.h @@ -0,0 +1,33 @@ +#ifndef MSG_SCRN_D_MSG_SCRN_LIGHT_H +#define MSG_SCRN_D_MSG_SCRN_LIGHT_H + +#include "JSystem/JUtility/TColor.h" + +class J2DScreen; +class J2DAnmTransform; +class J2DAnmColorKey; +class CPaneMgr; + +class dMsgScrnLight_c { +public: + /* 80245934 */ dMsgScrnLight_c(u8, u8); + /* 80245C04 */ void draw(f32*, f32, f32, f32, f32, f32, u8); + /* 80245F90 */ void draw(f32*, f32, f32, f32, f32, f32, f32, JUtility::TColor, + JUtility::TColor); + /* 802460DC */ void drawCommon(f32, f32, f32, f32, f32); + + /* 80245B00 */ virtual ~dMsgScrnLight_c(); + + /* 0x04 */ J2DScreen* mpScreen; + /* 0x08 */ J2DAnmTransform* mpBck; + /* 0x0C */ J2DAnmColorKey* mpBpk; + /* 0x10 */ CPaneMgr* mpParent_c; + /* 0x14 */ f32 mBckFrame; + /* 0x18 */ f32 mBpkFrame; + /* 0x1C */ f32 mAlpha; + /* 0x20 */ u8 mColorType; + /* 0x21 */ u8 field_0x21; + /* 0x22 */ bool mPlayAnim; +}; + +#endif /* MSG_SCRN_D_MSG_SCRN_LIGHT_H */ diff --git a/include/msg/scrn/d_msg_scrn_place.h b/include/d/msg/d_msg_scrn_place.h similarity index 94% rename from include/msg/scrn/d_msg_scrn_place.h rename to include/d/msg/d_msg_scrn_place.h index 4d454b6a6f8..c33c57f0334 100644 --- a/include/msg/scrn/d_msg_scrn_place.h +++ b/include/d/msg/d_msg_scrn_place.h @@ -1,7 +1,7 @@ #ifndef MSG_SCRN_D_MSG_SCRN_PLACE_H #define MSG_SCRN_D_MSG_SCRN_PLACE_H -#include "msg/scrn/d_msg_scrn_base.h" +#include "d/msg/d_msg_scrn_base.h" class dMsgScrnPlace_c : public dMsgScrnBase_c { public: diff --git a/include/msg/scrn/d_msg_scrn_staff.h b/include/d/msg/d_msg_scrn_staff.h similarity index 94% rename from include/msg/scrn/d_msg_scrn_staff.h rename to include/d/msg/d_msg_scrn_staff.h index 9ab344106a2..d9c854bff0e 100644 --- a/include/msg/scrn/d_msg_scrn_staff.h +++ b/include/d/msg/d_msg_scrn_staff.h @@ -1,7 +1,7 @@ #ifndef MSG_SCRN_D_MSG_SCRN_STAFF_H #define MSG_SCRN_D_MSG_SCRN_STAFF_H -#include "msg/scrn/d_msg_scrn_base.h" +#include "d/msg/d_msg_scrn_base.h" class dMsgScrnStaff_c : public dMsgScrnBase_c { public: diff --git a/include/msg/scrn/d_msg_scrn_talk.h b/include/d/msg/d_msg_scrn_talk.h similarity index 100% rename from include/msg/scrn/d_msg_scrn_talk.h rename to include/d/msg/d_msg_scrn_talk.h diff --git a/include/msg/scrn/d_msg_scrn_tree.h b/include/d/msg/d_msg_scrn_tree.h similarity index 95% rename from include/msg/scrn/d_msg_scrn_tree.h rename to include/d/msg/d_msg_scrn_tree.h index dd925c5ddea..66f1a885c45 100644 --- a/include/msg/scrn/d_msg_scrn_tree.h +++ b/include/d/msg/d_msg_scrn_tree.h @@ -1,7 +1,7 @@ #ifndef MSG_SCRN_D_MSG_SCRN_TREE_H #define MSG_SCRN_D_MSG_SCRN_TREE_H -#include "msg/scrn/d_msg_scrn_base.h" +#include "d/msg/d_msg_scrn_base.h" class JUTFont; class JKRExpHeap; diff --git a/include/msg/scrn/d_msg_scrn_light.h b/include/msg/scrn/d_msg_scrn_light.h deleted file mode 100644 index 17f60a20040..00000000000 --- a/include/msg/scrn/d_msg_scrn_light.h +++ /dev/null @@ -1,49 +0,0 @@ -#ifndef MSG_SCRN_D_MSG_SCRN_LIGHT_H -#define MSG_SCRN_D_MSG_SCRN_LIGHT_H - -#include "dolphin/types.h" -#include "JSystem/JUtility/TColor.h" - -class J2DScreen; -class J2DAnmTransform; -class J2DAnmColor; -class CPaneMgr; - -struct dMsgScrnLight_c { - /* 80245934 */ dMsgScrnLight_c(u8, u8); - /* 80245B00 */ virtual ~dMsgScrnLight_c(); - /* 80245C04 */ void draw(f32*, f32, f32, f32, f32, f32, u8); - /* 80245F90 */ void draw(f32*, f32, f32, f32, f32, f32, f32, JUtility::TColor, - JUtility::TColor); - /* 802460DC */ void drawCommon(f32, f32, f32, f32, f32); - - /* 0x04 */ J2DScreen* mpScreen; - /* 0x08 */ J2DAnmTransform* field_0x8; - /* 0x0C */ J2DAnmColor* field_0xc; - /* 0x10 */ CPaneMgr* mpParent_c; - /* 0x14 */ f32 field_0x14; - /* 0x18 */ f32 field_0x18; - /* 0x1C */ f32 field_0x1c; - /* 0x20 */ u8 field_0x20; - /* 0x21 */ u8 field_0x21; - /* 0x22 */ u8 field_0x22; -}; - -struct dMsgScrnLight_HIO_c { - /* 8024575C */ dMsgScrnLight_HIO_c(); - /* 802457C4 */ void updateColor(u8); - /* 80246348 */ virtual ~dMsgScrnLight_HIO_c() {} - - /* 0x04 */ s8 field_0x4; - /* 0x05 */ u8 field_0x5; - /* 0x06 */ u8 field_0x6[9]; - /* 0x0F */ u8 field_0xf[9]; - /* 0x18 */ u8 field_0x18[9]; - /* 0x21 */ u8 field_0x21[9]; - /* 0x2A */ u8 field_0x2a[9]; - /* 0x33 */ u8 field_0x33[9]; - /* 0x3C */ u8 field_0x3c[9]; - /* 0x45 */ u8 field_0x45[9]; -}; - -#endif /* MSG_SCRN_D_MSG_SCRN_LIGHT_H */ diff --git a/obj_files.mk b/obj_files.mk index d2aea77e3b5..a7bb953c3da 100644 --- a/obj_files.mk +++ b/obj_files.mk @@ -204,20 +204,20 @@ O_FILES := \ $(BUILD_DIR)/src/d/msg/d_msg_class.o \ $(BUILD_DIR)/src/d/msg/d_msg_object.o \ $(BUILD_DIR)/src/d/msg/d_msg_unit.o \ - $(BUILD_DIR)/src/msg/scrn/d_msg_scrn_3select.o \ - $(BUILD_DIR)/src/msg/scrn/d_msg_scrn_arrow.o \ - $(BUILD_DIR)/src/msg/scrn/d_msg_scrn_base.o \ - $(BUILD_DIR)/src/msg/scrn/d_msg_scrn_boss.o \ - $(BUILD_DIR)/src/msg/scrn/d_msg_scrn_explain.o \ - $(BUILD_DIR)/src/msg/scrn/d_msg_scrn_item.o \ - $(BUILD_DIR)/src/msg/scrn/d_msg_scrn_howl.o \ - $(BUILD_DIR)/src/msg/scrn/d_msg_scrn_jimaku.o \ - $(BUILD_DIR)/src/msg/scrn/d_msg_scrn_kanban.o \ - $(BUILD_DIR)/src/msg/scrn/d_msg_scrn_light.o \ - $(BUILD_DIR)/src/msg/scrn/d_msg_scrn_place.o \ - $(BUILD_DIR)/src/msg/scrn/d_msg_scrn_staff.o \ - $(BUILD_DIR)/src/msg/scrn/d_msg_scrn_talk.o \ - $(BUILD_DIR)/src/msg/scrn/d_msg_scrn_tree.o \ + $(BUILD_DIR)/src/d/msg/d_msg_scrn_3select.o \ + $(BUILD_DIR)/src/d/msg/d_msg_scrn_arrow.o \ + $(BUILD_DIR)/src/d/msg/d_msg_scrn_base.o \ + $(BUILD_DIR)/src/d/msg/d_msg_scrn_boss.o \ + $(BUILD_DIR)/src/d/msg/d_msg_scrn_explain.o \ + $(BUILD_DIR)/src/d/msg/d_msg_scrn_item.o \ + $(BUILD_DIR)/src/d/msg/d_msg_scrn_howl.o \ + $(BUILD_DIR)/src/d/msg/d_msg_scrn_jimaku.o \ + $(BUILD_DIR)/src/d/msg/d_msg_scrn_kanban.o \ + $(BUILD_DIR)/src/d/msg/d_msg_scrn_light.o \ + $(BUILD_DIR)/src/d/msg/d_msg_scrn_place.o \ + $(BUILD_DIR)/src/d/msg/d_msg_scrn_staff.o \ + $(BUILD_DIR)/src/d/msg/d_msg_scrn_talk.o \ + $(BUILD_DIR)/src/d/msg/d_msg_scrn_tree.o \ $(BUILD_DIR)/src/d/msg/d_msg_string_base.o \ $(BUILD_DIR)/src/d/msg/d_msg_string.o \ $(BUILD_DIR)/src/d/msg/d_msg_flow.o \ diff --git a/src/d/menu/d_menu_insect.cpp b/src/d/menu/d_menu_insect.cpp index 4bc23043bc2..534c731d805 100644 --- a/src/d/menu/d_menu_insect.cpp +++ b/src/d/menu/d_menu_insect.cpp @@ -18,7 +18,7 @@ #include "dolphin/types.h" #include "m_Do/m_Do_controller_pad.h" #include "m_Do/m_Do_graphic.h" -#include "msg/scrn/d_msg_scrn_3select.h" +#include "d/msg/d_msg_scrn_3select.h" // // Forward References: diff --git a/src/d/menu/d_menu_item_explain.cpp b/src/d/menu/d_menu_item_explain.cpp index e70b03f963d..46ea9dbfcb9 100644 --- a/src/d/menu/d_menu_item_explain.cpp +++ b/src/d/menu/d_menu_item_explain.cpp @@ -24,8 +24,8 @@ #include "dol2asm.h" #include "m_Do/m_Do_controller_pad.h" #include "m_Do/m_Do_graphic.h" -#include "msg/scrn/d_msg_scrn_3select.h" -#include "msg/scrn/d_msg_scrn_arrow.h" +#include "d/msg/d_msg_scrn_3select.h" +#include "d/msg/d_msg_scrn_arrow.h" /* 80396950-80396970 022FB0 0020+00 1/1 0/0 0/0 .rodata name_tag$3883 */ static const u64 name_tag[4] = { diff --git a/src/d/menu/d_menu_letter.cpp b/src/d/menu/d_menu_letter.cpp index b9baa3f1019..94daabbdad6 100644 --- a/src/d/menu/d_menu_letter.cpp +++ b/src/d/menu/d_menu_letter.cpp @@ -21,7 +21,7 @@ #include "dolphin/types.h" #include "m_Do/m_Do_controller_pad.h" #include "m_Do/m_Do_graphic.h" -#include "msg/scrn/d_msg_scrn_arrow.h" +#include "d/msg/d_msg_scrn_arrow.h" extern "C" void __ct__14dMenu_Letter_cFP10JKRExpHeapP9STControlP10CSTControl(); extern "C" void __dt__14dMenu_Letter_cFv(); diff --git a/src/d/menu/d_menu_save.cpp b/src/d/menu/d_menu_save.cpp index e043a62c714..7eb642a0c95 100644 --- a/src/d/menu/d_menu_save.cpp +++ b/src/d/menu/d_menu_save.cpp @@ -20,7 +20,7 @@ #include "m_Do/m_Do_Reset.h" #include "m_Do/m_Do_controller_pad.h" #include "m_Do/m_Do_graphic.h" -#include "msg/scrn/d_msg_scrn_explain.h" +#include "d/msg/d_msg_scrn_explain.h" // // Forward References: diff --git a/src/d/msg/d_msg_out_font.cpp b/src/d/msg/d_msg_out_font.cpp index bc5e150e0ba..18f7b472dc4 100644 --- a/src/d/msg/d_msg_out_font.cpp +++ b/src/d/msg/d_msg_out_font.cpp @@ -1,259 +1,12 @@ -// -// Generated By: dol2asm -// Translation Unit: d/msg/d_msg_out_font -// - #include "d/msg/d_msg_out_font.h" -#include "d/meter/d_meter2_info.h" -#include "d/msg/d_msg_object.h" -#include "dol2asm.h" -#include "d/com/d_com_inf_game.h" -#include "f_op/f_op_msg_mng.h" #include "JSystem/J2DGraph/J2DTextBox.h" #include "JSystem/JUtility/JUTTexture.h" +#include "d/com/d_com_inf_game.h" +#include "d/meter/d_meter2_info.h" +#include "d/msg/d_msg_object.h" +#include "f_op/f_op_msg_mng.h" -// -// Forward References: -// - -extern "C" void __ct__13COutFontSet_cFv(); -extern "C" void __dt__13COutFontSet_cFv(); -extern "C" void initialize__13COutFontSet_cFv(); -extern "C" void drawFont__13COutFontSet_cFP10J2DTextBoxUcffffUlUc(); -extern "C" void __ct__10COutFont_cFUc(); -extern "C" void __dt__10COutFont_cFv(); -extern "C" void setPane__10COutFont_cFP10J2DPicture(); -extern "C" void createPane__10COutFont_cFv(); -extern "C" void initialize__10COutFont_cFv(); -extern "C" void drawFont__10COutFont_cFP10J2DTextBoxUcffffUlUc(); -extern "C" void setAlphaRatio__10COutFont_cFf(); -extern "C" void draw__10COutFont_cFP10J2DTextBoxfff(); -extern "C" void reset__10COutFont_cFP10J2DTextBox(); -extern "C" void setBlendAnime__10COutFont_cFP10J2DPictures(); -extern "C" void getBtiName__10COutFont_cFi(); -extern "C" extern char const* const d_msg_d_msg_out_font__stringBase0; - -// -// External References: -// - -extern "C" void fopMsgM_valueIncrease__FiiUc(); -extern "C" void dMeter2Info_getNumberTextureName__Fi(); -extern "C" void* __nw__FUl(); -extern "C" void __dl__FPv(); -extern "C" void rotate__7J2DPaneFff13J2DRotateAxisf(); -extern "C" void getParentPane__7J2DPaneFv(); -extern "C" void __ct__10J2DPictureFPC7ResTIMG(); -extern "C" void _savegpr_24(); -extern "C" void _savegpr_26(); -extern "C" void _savegpr_29(); -extern "C" void _restgpr_24(); -extern "C" void _restgpr_26(); -extern "C" void _restgpr_29(); -extern "C" extern dMsgObject_HIO_c g_MsgObject_HIO_c; - -// -// Declarations: -// - -/* ############################################################################################## */ -/* 80399350-80399350 0259B0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ -#pragma push -#pragma force_active on -SECTION_DEAD static char const* const stringBase_80399350 = "font_07_02.bti"; -SECTION_DEAD static char const* const stringBase_8039935F = "font_20.bti"; -SECTION_DEAD static char const* const stringBase_8039936B = "font_21.bti"; -SECTION_DEAD static char const* const stringBase_80399377 = "font_30.bti"; -SECTION_DEAD static char const* const stringBase_80399383 = "font_31.bti"; -SECTION_DEAD static char const* const stringBase_8039938F = "font_34.bti"; -SECTION_DEAD static char const* const stringBase_8039939B = "font_00.bti"; -SECTION_DEAD static char const* const stringBase_803993A7 = "font_01.bti"; -SECTION_DEAD static char const* const stringBase_803993B3 = "font_09.bti"; -SECTION_DEAD static char const* const stringBase_803993BF = "font_04.bti"; -SECTION_DEAD static char const* const stringBase_803993CB = "font_05.bti"; -SECTION_DEAD static char const* const stringBase_803993D7 = "font_02.bti"; -SECTION_DEAD static char const* const stringBase_803993E3 = "font_03.bti"; -SECTION_DEAD static char const* const stringBase_803993EF = "font_06.bti"; -SECTION_DEAD static char const* const stringBase_803993FB = "font_08.bti"; -SECTION_DEAD static char const* const stringBase_80399407 = "font_07_01.bti"; -SECTION_DEAD static char const* const stringBase_80399416 = "font_10.bti"; -SECTION_DEAD static char const* const stringBase_80399422 = "font_15.bti"; -SECTION_DEAD static char const* const stringBase_8039942E = "font_12.bti"; -SECTION_DEAD static char const* const stringBase_8039943A = "im_map_icon_portal_4ia_40_05.bti"; -SECTION_DEAD static char const* const stringBase_8039945B = "font_16_backlight.bti"; -SECTION_DEAD static char const* const stringBase_80399471 = "font_13.bti"; -SECTION_DEAD static char const* const stringBase_8039947D = "font_14.bti"; -SECTION_DEAD static char const* const stringBase_80399489 = "im_zelda_item_icon_rupy_13.bti"; -SECTION_DEAD static char const* const stringBase_803994A8 = ""; -SECTION_DEAD static char const* const stringBase_803994A9 = "st_bompoach_lv1.bti"; -SECTION_DEAD static char const* const stringBase_803994BD = "font_46.bti"; -SECTION_DEAD static char const* const stringBase_803994C9 = "font_47.bti"; -SECTION_DEAD static char const* const stringBase_803994D5 = "font_35.bti"; -SECTION_DEAD static char const* const stringBase_803994E1 = "font_36.bti"; -SECTION_DEAD static char const* const stringBase_803994ED = "font_19.bti"; -SECTION_DEAD static char const* const stringBase_803994F9 = "font_22.bti"; -SECTION_DEAD static char const* const stringBase_80399505 = "font_23.bti"; -SECTION_DEAD static char const* const stringBase_80399511 = "font_24.bti"; -SECTION_DEAD static char const* const stringBase_8039951D = "font_25.bti"; -SECTION_DEAD static char const* const stringBase_80399529 = "font_40.bti"; -SECTION_DEAD static char const* const stringBase_80399535 = "font_39.bti"; -SECTION_DEAD static char const* const stringBase_80399541 = "font_29.bti"; -SECTION_DEAD static char const* const stringBase_8039954D = "font_28.bti"; -SECTION_DEAD static char const* const stringBase_80399559 = "font_32.bti"; -SECTION_DEAD static char const* const stringBase_80399565 = "font_33.bti"; -SECTION_DEAD static char const* const stringBase_80399571 = "font_41.bti"; -SECTION_DEAD static char const* const stringBase_8039957D = "font_42.bti"; -SECTION_DEAD static char const* const stringBase_80399589 = "font_50.bti"; -SECTION_DEAD static char const* const stringBase_80399595 = "font_49.bti"; -SECTION_DEAD static char const* const stringBase_803995A1 = "font_51.bti"; -SECTION_DEAD static char const* const stringBase_803995AD = "font_52.bti"; -SECTION_DEAD static char const* const stringBase_803995B9 = "font_53.bti"; -/* @stringBase0 padding */ -SECTION_DEAD static char const* const pad_803995C5 = "\0\0"; -#pragma pop - -/* 803BFA90-803BFBA8 -00001 0118+00 1/1 0/0 0/0 .data @4395 */ -SECTION_DATA static void* lit_4395[70] = { - (void*)(((char*)createPane__10COutFont_cFv) + 0xDC), - (void*)(((char*)createPane__10COutFont_cFv) + 0x140), - (void*)(((char*)createPane__10COutFont_cFv) + 0x1A0), - (void*)(((char*)createPane__10COutFont_cFv) + 0x200), - (void*)(((char*)createPane__10COutFont_cFv) + 0x200), - (void*)(((char*)createPane__10COutFont_cFv) + 0x200), - (void*)(((char*)createPane__10COutFont_cFv) + 0x200), - (void*)(((char*)createPane__10COutFont_cFv) + 0x2C4), - (void*)(((char*)createPane__10COutFont_cFv) + 0x200), - (void*)(((char*)createPane__10COutFont_cFv) + 0x328), - (void*)(((char*)createPane__10COutFont_cFv) + 0xE20), - (void*)(((char*)createPane__10COutFont_cFv) + 0xE20), - (void*)(((char*)createPane__10COutFont_cFv) + 0xE20), - (void*)(((char*)createPane__10COutFont_cFv) + 0xE20), - (void*)(((char*)createPane__10COutFont_cFv) + 0x328), - (void*)(((char*)createPane__10COutFont_cFv) + 0x328), - (void*)(((char*)createPane__10COutFont_cFv) + 0x328), - (void*)(((char*)createPane__10COutFont_cFv) + 0x328), - (void*)(((char*)createPane__10COutFont_cFv) + 0x328), - (void*)(((char*)createPane__10COutFont_cFv) + 0x328), - (void*)(((char*)createPane__10COutFont_cFv) + 0x3E0), - (void*)(((char*)createPane__10COutFont_cFv) + 0x440), - (void*)(((char*)createPane__10COutFont_cFv) + 0x4A0), - (void*)(((char*)createPane__10COutFont_cFv) + 0x4FC), - (void*)(((char*)createPane__10COutFont_cFv) + 0x558), - (void*)(((char*)createPane__10COutFont_cFv) + 0x5B0), - (void*)(((char*)createPane__10COutFont_cFv) + 0x60C), - (void*)(((char*)createPane__10COutFont_cFv) + 0x670), - (void*)(((char*)createPane__10COutFont_cFv) + 0x6CC), - (void*)(((char*)createPane__10COutFont_cFv) + 0x77C), - (void*)(((char*)createPane__10COutFont_cFv) + 0x7D8), - (void*)(((char*)createPane__10COutFont_cFv) + 0x870), - (void*)(((char*)createPane__10COutFont_cFv) + 0x870), - (void*)(((char*)createPane__10COutFont_cFv) + 0x870), - (void*)(((char*)createPane__10COutFont_cFv) + 0x870), - (void*)(((char*)createPane__10COutFont_cFv) + 0x870), - (void*)(((char*)createPane__10COutFont_cFv) + 0x870), - (void*)(((char*)createPane__10COutFont_cFv) + 0x870), - (void*)(((char*)createPane__10COutFont_cFv) + 0x870), - (void*)(((char*)createPane__10COutFont_cFv) + 0x870), - (void*)(((char*)createPane__10COutFont_cFv) + 0x870), - (void*)(((char*)createPane__10COutFont_cFv) + 0x8C8), - (void*)(((char*)createPane__10COutFont_cFv) + 0x724), - (void*)(((char*)createPane__10COutFont_cFv) + 0x6CC), - (void*)(((char*)createPane__10COutFont_cFv) + 0x920), - (void*)(((char*)createPane__10COutFont_cFv) + 0x920), - (void*)(((char*)createPane__10COutFont_cFv) + 0x920), - (void*)(((char*)createPane__10COutFont_cFv) + 0x920), - (void*)(((char*)createPane__10COutFont_cFv) + 0x978), - (void*)(((char*)createPane__10COutFont_cFv) + 0xA30), - (void*)(((char*)createPane__10COutFont_cFv) + 0xA30), - (void*)(((char*)createPane__10COutFont_cFv) + 0xAE8), - (void*)(((char*)createPane__10COutFont_cFv) + 0xB44), - (void*)(((char*)createPane__10COutFont_cFv) + 0xB44), - (void*)(((char*)createPane__10COutFont_cFv) + 0xB44), - (void*)(((char*)createPane__10COutFont_cFv) + 0x920), - (void*)(((char*)createPane__10COutFont_cFv) + 0x920), - (void*)(((char*)createPane__10COutFont_cFv) + 0x920), - (void*)(((char*)createPane__10COutFont_cFv) + 0x920), - (void*)(((char*)createPane__10COutFont_cFv) + 0xB9C), - (void*)(((char*)createPane__10COutFont_cFv) + 0xC54), - (void*)(((char*)createPane__10COutFont_cFv) + 0x920), - (void*)(((char*)createPane__10COutFont_cFv) + 0xD0C), - (void*)(((char*)createPane__10COutFont_cFv) + 0xB44), - (void*)(((char*)createPane__10COutFont_cFv) + 0xB44), - (void*)(((char*)createPane__10COutFont_cFv) + 0xA30), - (void*)(((char*)createPane__10COutFont_cFv) + 0xA30), - (void*)(((char*)createPane__10COutFont_cFv) + 0xA30), - (void*)(((char*)createPane__10COutFont_cFv) + 0xA30), - (void*)(((char*)createPane__10COutFont_cFv) + 0xDC4), -}; - -/* 803BFBA8-803BFCAC -00001 0104+00 1/1 0/0 0/0 .data @5000 */ -SECTION_DATA static void* lit_5000[65] = { - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x5B8), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x5B8), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x150C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x150C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x6F0), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x198), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x29C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x4B4), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0xB8C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x824), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x8A0), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x91C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x998), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0xA14), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0xAD0), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0xD40), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0xD40), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0xD40), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x150C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0xC90), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0xDE4), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0xF48), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0xC90), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0xC90), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x3A0), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0xF7C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x102C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x102C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x102C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x102C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x102C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x102C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x102C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x102C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x102C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x102C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x10A8), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0xD0C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0xC90), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x10DC), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x1204), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x1248), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x1248), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x13D4), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x127C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x127C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x150C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x150C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x150C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x150C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x1248), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x1248), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x1248), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x1248), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x13D4), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x13D4), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x1248), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x1450), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x150C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x150C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x127C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x127C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x127C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x127C), - (void*)(((char*)draw__10COutFont_cFP10J2DTextBoxfff) + 0x1248), -}; +extern dMsgObject_HIO_c g_MsgObject_HIO_c; /* 80225BB8-80225BF4 2204F8 003C+00 1/1 0/0 0/0 .text __ct__13COutFontSet_cFv */ COutFontSet_c::COutFontSet_c() { @@ -263,43 +16,29 @@ COutFontSet_c::COutFontSet_c() { /* 80225BF4-80225C3C 220534 0048+00 1/0 0/0 0/0 .text __dt__13COutFontSet_cFv */ COutFontSet_c::~COutFontSet_c() {} -/* ############################################################################################## */ -/* 80454A10-80454A14 003010 0004+00 4/4 0/0 0/0 .sdata2 @3748 */ -SECTION_SDATA2 static u8 lit_3748[4] = { - 0x00, - 0x00, - 0x00, - 0x00, -}; - -/* 80454A14-80454A18 003014 0004+00 6/6 0/0 0/0 .sdata2 @3749 */ -SECTION_SDATA2 static f32 lit_3749 = 1.0f; - /* 80225C3C-80225C70 22057C 0034+00 2/2 0/0 0/0 .text initialize__13COutFontSet_cFv */ void COutFontSet_c::initialize() { mpTextBoxPtr = NULL; - f32 tmp_0 = FLOAT_LABEL(lit_3748); - mPosX = tmp_0; - mPosY = tmp_0; - f32 tmp_1 = lit_3749; - mSizeX = tmp_1; - mSizeY = tmp_1; + mPosX = 0.0f; + mPosY = 0.0f; + mSizeX = 1.0f; + mSizeY = 1.0f; mAlpha = 255; mType = 0x47; } /* 80225C70-80225C94 2205B0 0024+00 1/1 0/0 0/0 .text * drawFont__13COutFontSet_cFP10J2DTextBoxUcffffUlUc */ -void COutFontSet_c::drawFont(J2DTextBox* p_textBox, u8 type, f32 posX, f32 posY, - f32 sizeX, f32 sizeY, u32 color, u8 alpha) { - mpTextBoxPtr = p_textBox; - mPosX = posX; - mPosY = posY; - mSizeX = sizeX; - mSizeY = sizeY; - mAlpha = alpha; - mColor = color; - mType = type; +void COutFontSet_c::drawFont(J2DTextBox* i_textbox, u8 i_type, f32 i_posX, f32 i_posY, f32 i_sizeX, + f32 i_sizeY, u32 i_color, u8 i_alpha) { + mpTextBoxPtr = i_textbox; + mPosX = i_posX; + mPosY = i_posY; + mSizeX = i_sizeX; + mSizeY = i_sizeY; + mAlpha = i_alpha; + mColor = i_color; + mType = i_type; } /* 80225C94-80225D60 2205D4 00CC+00 0/0 5/5 0/0 .text __ct__10COutFont_cFUc */ @@ -315,10 +54,9 @@ COutFont_c::COutFont_c(u8 param_0) { field_0x1b4[i] = 0; } - mAlphaRatio = FLOAT_LABEL(lit_3748); - f32 tmp_1 = lit_3749; - field_0x1b0 = tmp_1; - field_0x1ac = tmp_1; + mAlphaRatio = 0.0f; + field_0x1b0 = 1.0f; + field_0x1ac = 1.0f; field_0x240 = 0; mRupeeColor = 0; } @@ -348,38 +86,39 @@ COutFont_c::~COutFont_c() { /* 80225E7C-80225EA8 2207BC 002C+00 1/0 0/0 0/0 .text setPane__10COutFont_cFP10J2DPicture */ -void COutFont_c::setPane(J2DPicture* p_pic) { +void COutFont_c::setPane(J2DPicture* i_pic) { for (int i = 0; i < 70; i++) { - mpPane[i] = p_pic; - p_pic++; + mpPane[i] = i_pic; + i_pic++; } + field_0x240 = false; } -/* ############################################################################################## */ -/* 80454A18-80454A20 003018 0008+00 2/2 0/0 0/0 .sdata2 @4397 */ -SECTION_SDATA2 static f64 lit_4397 = 4503599627370496.0 /* cast u32 to float */; - /* 80225EA8-80226CF8 2207E8 0E50+00 2/0 0/0 0/0 .text createPane__10COutFont_cFv */ -#ifdef NONMATCHING void COutFont_c::createPane() { - ResTIMG* local_30; - for (int iVar5 = 0; iVar5 < 70; iVar5++) { - if (iVar5 == 41) { - local_30 = (ResTIMG*)dComIfGp_getItemIconArchive()->getResource('TIMG', getBtiName(iVar5)); + ResTIMG* img; + + for (int i = 0; i < 70; i++) { + if (i == 41) { + img = (ResTIMG*)dComIfGp_getItemIconArchive()->getResource('TIMG', getBtiName(i)); } else { - local_30 = (ResTIMG*)dComIfGp_getMain2DArchive()->getResource('TIMG', getBtiName(iVar5)); + img = (ResTIMG*)dComIfGp_getMain2DArchive()->getResource('TIMG', getBtiName(i)); } - mpPane[iVar5] = new J2DPicture(local_30); - switch (iVar5) { + + mpPane[i] = new J2DPicture(img); + switch (i) { case 0: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(255, 255, 255, 0), JUtility::TColor(98, 163, 46, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(255, 255, 255, 0), + JUtility::TColor(98, 163, 46, 255)); break; case 1: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(255, 255, 255, 0), JUtility::TColor(200, 39, 39, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(255, 255, 255, 0), + JUtility::TColor(200, 39, 39, 255)); break; case 2: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 200, 50, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 200, 50, 255)); break; case 3: case 4: @@ -387,13 +126,16 @@ void COutFont_c::createPane() { case 6: case 8: if (field_0x242 == 0x1) { - mpPane[iVar5]->setBlackWhite(JUtility::TColor(255, 255, 255, 0), JUtility::TColor(120, 120, 120, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(255, 255, 255, 0), + JUtility::TColor(120, 120, 120, 255)); } else { - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(200, 200, 200, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(200, 200, 200, 255)); } break; case 7: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(255, 255, 255, 0), JUtility::TColor(80, 70, 165, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(255, 255, 255, 0), + JUtility::TColor(80, 70, 165, 255)); break; case 9: case 0xe: @@ -402,41 +144,61 @@ void COutFont_c::createPane() { case 0x11: case 0x12: case 0x13: - local_30 = (ResTIMG*)dComIfGp_getMain2DArchive()->getResource('TIMG', "font_07_02.bti"); - mpPane[iVar5]->append(local_30, 1.0f); - mpPane[iVar5]->setBlendRatio(1.0f, 0.0f); - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(200, 200, 200, 255)); + img = (ResTIMG*)dComIfGp_getMain2DArchive()->getResource('TIMG', "font_07_02.bti"); + mpPane[i]->append(img, 1.0f); + mpPane[i]->setBlendRatio(1.0f, 0.0f); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(200, 200, 200, 255)); break; case 0x14: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(220, 50, 50, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(220, 50, 50, 255)); break; case 0x15: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 200, 50, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 200, 50, 255)); break; case 0x16: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 100, 0, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 100, 0, 255)); break; case 0x17: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(0, 255, 180, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(0, 255, 180, 255)); break; case 0x18: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 255, 255, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 255, 255, 255)); break; case 0x19: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(170, 255, 255, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(170, 255, 255, 255)); break; case 0x1a: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 255, 0), JUtility::TColor(30, 50, 120, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 255, 0), + JUtility::TColor(30, 50, 120, 255)); break; case 0x1b: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 50, 50, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 50, 50, 255)); break; case 0x1c: case 0x2b: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 255, 255, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 255, 255, 255)); + break; + case 0x2a: + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(0, 0, 0, 255)); break; case 0x1d: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(0, 0, 0, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 80, 80, 255)); + break; + case 0x1e: + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 255, 255, 255)); + field_0x1ac = (f32)img->width / (f32)img->height; + field_0x1b0 = 1.0f; break; case 0x1f: case 0x20: @@ -448,18 +210,12 @@ void COutFont_c::createPane() { case 0x26: case 0x27: case 0x28: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 80, 80, 255)); - break; - case 0x1e: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 255, 255, 255)); - field_0x1ac = (f32)local_30->width / (f32)local_30->height; - field_0x1b0 = 1.0f; + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 255, 255, 255)); break; case 0x29: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 255, 255, 255)); - break; - case 0x2a: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 255, 255, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 255, 255, 255)); break; case 0x2c: case 0x2d: @@ -470,13 +226,15 @@ void COutFont_c::createPane() { case 0x39: case 0x3a: case 0x3d: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 255, 255, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 255, 255, 255)); break; case 0x30: - local_30 = (ResTIMG*)dComIfGp_getMain2DArchive()->getResource('TIMG', "font_20.bti"); - mpPane[iVar5]->append(local_30, 1.0f); - mpPane[iVar5]->setBlendRatio(1.0f, 0.0f); - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 255, 255, 255)); + img = (ResTIMG*)dComIfGp_getMain2DArchive()->getResource('TIMG', "font_20.bti"); + mpPane[i]->append(img, 1.0f); + mpPane[i]->setBlendRatio(1.0f, 0.0f); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 255, 255, 255)); break; case 0x31: case 0x32: @@ -484,56 +242,54 @@ void COutFont_c::createPane() { case 0x42: case 0x43: case 0x44: - local_30 = (ResTIMG*)dComIfGp_getMain2DArchive()->getResource('TIMG', "font_21.bti"); - mpPane[iVar5]->append(local_30, 1.0f); - mpPane[iVar5]->setBlendRatio(1.0f, 0.0f); - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 255, 255, 255)); + img = (ResTIMG*)dComIfGp_getMain2DArchive()->getResource('TIMG', "font_21.bti"); + mpPane[i]->append(img, 1.0f); + mpPane[i]->setBlendRatio(1.0f, 0.0f); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 255, 255, 255)); break; case 0x33: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(190, 190, 190, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(190, 190, 190, 255)); break; case 0x34: case 0x35: case 0x36: case 0x3f: case 0x40: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 255, 255, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 255, 255, 255)); break; case 0x3b: - local_30 = (ResTIMG*)dComIfGp_getMain2DArchive()->getResource('TIMG', "font_30.bti"); - mpPane[iVar5]->append(local_30, 1.0f); - mpPane[iVar5]->setBlendRatio(1.0f, 0.0f); - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 255, 255, 255)); + img = (ResTIMG*)dComIfGp_getMain2DArchive()->getResource('TIMG', "font_30.bti"); + mpPane[i]->append(img, 1.0f); + mpPane[i]->setBlendRatio(1.0f, 0.0f); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 255, 255, 255)); break; case 0x3c: - local_30 = (ResTIMG*)dComIfGp_getMain2DArchive()->getResource('TIMG', "font_31.bti"); - mpPane[iVar5]->append(local_30, 1.0f); - mpPane[iVar5]->setBlendRatio(1.0f, 0.0f); - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 255, 255, 255)); + img = (ResTIMG*)dComIfGp_getMain2DArchive()->getResource('TIMG', "font_31.bti"); + mpPane[i]->append(img, 1.0f); + mpPane[i]->setBlendRatio(1.0f, 0.0f); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 255, 255, 255)); break; case 0x3e: - local_30 = (ResTIMG*)dComIfGp_getMain2DArchive()->getResource('TIMG', "font_34.bti"); - mpPane[iVar5]->append(local_30, 1.0f); - mpPane[iVar5]->setBlendRatio(1.0f, 0.0f); - mpPane[iVar5]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 255, 255, 255)); + img = (ResTIMG*)dComIfGp_getMain2DArchive()->getResource('TIMG', "font_34.bti"); + mpPane[i]->append(img, 1.0f); + mpPane[i]->setBlendRatio(1.0f, 0.0f); + mpPane[i]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 255, 255, 255)); break; case 0x45: - mpPane[iVar5]->setBlackWhite(JUtility::TColor(166, 12, 0, 0), JUtility::TColor(255, 255, 255, 255)); + mpPane[i]->setBlackWhite(JUtility::TColor(166, 12, 0, 0), + JUtility::TColor(255, 255, 255, 255)); break; } } + field_0x240 = true; } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void COutFont_c::createPane() { - nofralloc -#include "asm/d/msg/d_msg_out_font/createPane__10COutFont_cFv.s" -} -#pragma pop -#endif /* 80226CF8-80226D4C 221638 0054+00 0/0 2/2 0/0 .text initialize__10COutFont_cFv */ void COutFont_c::initialize() { @@ -544,67 +300,26 @@ void COutFont_c::initialize() { /* 80226D4C-80226DA8 22168C 005C+00 1/0 0/0 0/0 .text * drawFont__10COutFont_cFP10J2DTextBoxUcffffUlUc */ -void COutFont_c::drawFont(J2DTextBox* p_textBox, u8 type, f32 posX, f32 posY, - f32 sizeX, f32 sizeY, u32 color, u8 alpha) { - posY += lit_3749; +void COutFont_c::drawFont(J2DTextBox* i_textbox, u8 i_type, f32 i_posX, f32 i_posY, f32 i_sizeX, + f32 i_sizeY, u32 i_color, u8 i_alpha) { + i_posY += 1.0f; for (int i = 0; i < 35; i++) { if (mpOfs[i]->getType() == 0x47) { - mpOfs[i]->drawFont(p_textBox, type, posX, posY, sizeX, sizeY, color, alpha); + mpOfs[i]->drawFont(i_textbox, i_type, i_posX, i_posY, i_sizeX, i_sizeY, i_color, + i_alpha); return; } } } /* 80226DA8-80226DB0 2216E8 0008+00 1/0 0/0 0/0 .text setAlphaRatio__10COutFont_cFf */ -void COutFont_c::setAlphaRatio(f32 ratio) { - mAlphaRatio = ratio; +void COutFont_c::setAlphaRatio(f32 i_ratio) { + mAlphaRatio = i_ratio; } -/* ############################################################################################## */ -/* 80454A20-80454A24 003020 0004+00 1/1 0/0 0/0 .sdata2 @4986 */ -SECTION_SDATA2 static f32 lit_4986 = 2.0f; - -/* 80454A24-80454A28 003024 0004+00 1/1 0/0 0/0 .sdata2 @4987 */ -SECTION_SDATA2 static f32 lit_4987 = 3.0f; - -/* 80454A28-80454A2C 003028 0004+00 1/1 0/0 0/0 .sdata2 @4988 */ -SECTION_SDATA2 static f32 lit_4988 = 0.5f; - -/* 80454A2C-80454A30 00302C 0004+00 1/1 0/0 0/0 .sdata2 @4989 */ -SECTION_SDATA2 static f32 lit_4989 = 360.0f; - -/* 80454A30-80454A34 003030 0004+00 1/1 0/0 0/0 .sdata2 @4990 */ -SECTION_SDATA2 static f32 lit_4990 = 28.0f; - -/* 80454A34-80454A38 003034 0004+00 1/1 0/0 0/0 .sdata2 @4991 */ -SECTION_SDATA2 static f32 lit_4991 = 50.0f; - -/* 80454A38-80454A3C 003038 0004+00 1/1 0/0 0/0 .sdata2 @4992 */ -SECTION_SDATA2 static f32 lit_4992 = 205.0f; - -/* 80454A3C-80454A40 00303C 0004+00 1/1 0/0 0/0 .sdata2 @4993 */ -SECTION_SDATA2 static f32 lit_4993 = 9.0f; - -/* 80454A40-80454A44 003040 0004+00 1/1 0/0 0/0 .sdata2 @4994 */ -SECTION_SDATA2 static f32 lit_4994 = 18.0f; - -/* 80454A44-80454A48 003044 0004+00 1/1 0/0 0/0 .sdata2 @4995 */ -SECTION_SDATA2 static f32 lit_4995 = -3.0f; - -/* 80454A48-80454A4C 003048 0004+00 1/1 0/0 0/0 .sdata2 @4996 */ -SECTION_SDATA2 static f32 lit_4996 = 4.0f; - -/* 80454A4C-80454A50 00304C 0004+00 1/1 0/0 0/0 .sdata2 @4997 */ -SECTION_SDATA2 static f32 lit_4997 = 1.25f; - -/* 80454A50-80454A58 003050 0008+00 1/1 0/0 0/0 .sdata2 @5001 */ -SECTION_SDATA2 static f64 lit_5001 = 4503601774854144.0 /* cast s32 to float */; - /* 80226DB0-80228448 2216F0 1698+00 2/0 0/0 0/0 .text draw__10COutFont_cFP10J2DTextBoxfff */ -// Matches with literals -#ifdef NONMATCHING -void COutFont_c::draw(J2DTextBox* p_textBox, f32 param_1, f32 param_2, f32 param_3) { +void COutFont_c::draw(J2DTextBox* i_textbox, f32 param_1, f32 param_2, f32 param_3) { s16 sp256[70]; for (int i = 0; i < 70; i++) { @@ -615,49 +330,54 @@ void COutFont_c::draw(J2DTextBox* p_textBox, f32 param_1, f32 param_2, f32 param u8 type = mpOfs[i]->getType(); J2DTextBox* tbox = mpOfs[i]->getTextBoxPtr(); - if (p_textBox == tbox && type != 0x47) { - f32 local_10c = 1.0f; - f32 local_110 = 1.0f; + if (i_textbox == tbox && type != 0x47) { + f32 scale_x = 1.0f; + f32 scale_y = 1.0f; - if (p_textBox != NULL) { - for (J2DPane* pane = p_textBox; pane != NULL; pane = pane->getParentPane()) { - local_10c *= pane->getScaleX(); - local_110 *= pane->getScaleY(); + if (i_textbox != NULL) { + for (J2DPane* pane = i_textbox; pane != NULL; pane = pane->getParentPane()) { + scale_x *= pane->getScaleX(); + scale_y *= pane->getScaleY(); } } - f32 posX = param_1 + param_3 * (local_10c * mpOfs[i]->getPosX()); - f32 posY = param_2 + (local_110 * mpOfs[i]->getPosY()); - f32 sizeX = local_10c * mpOfs[i]->getSizeX(); - f32 sizeY = local_110 * mpOfs[i]->getSizeY(); + f32 posX = param_1 + param_3 * (scale_x * mpOfs[i]->getPosX()); + f32 posY = param_2 + (scale_y * mpOfs[i]->getPosY()); + f32 sizeX = scale_x * mpOfs[i]->getSizeX(); + f32 sizeY = scale_y * mpOfs[i]->getSizeY(); if (mpPane[type] != NULL) { mpPane[type]->setAlpha(mAlphaRatio * mpOfs[i]->getAlpha()); - + switch (type) { case 10: - mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(0, 0, 0, 255)); + mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(0, 0, 0, 255)); mpPane[type]->draw(2.0f + posX, 2.0f + posY, sizeX, sizeY, false, false, true); mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), mpOfs[i]->getColor()); mpPane[type]->draw(posX, posY, sizeX, sizeY, false, false, true); break; case 11: - mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(0, 0, 0, 255)); + mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(0, 0, 0, 255)); mpPane[type]->draw(2.0f + posX, 2.0f + posY, sizeX, sizeY, false, true, true); mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), mpOfs[i]->getColor()); mpPane[type]->draw(posX, posY, sizeX, sizeY, false, true, true); break; case 29: - mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(0, 0, 0, 255)); + mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(0, 0, 0, 255)); mpPane[type]->draw(2.0f + posX, 2.0f + posY, sizeX, sizeY, false, true, true); - mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 80, 80, 255)); + mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 80, 80, 255)); mpPane[type]->draw(posX, posY, sizeX, sizeY, false, true, true); break; case 12: - mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(0, 0, 0, 255)); + mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(0, 0, 0, 255)); mpPane[type]->draw(2.0f + posX, 2.0f + posY, sizeX, sizeY, false, true, false); mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), mpOfs[i]->getColor()); @@ -670,7 +390,8 @@ void COutFont_c::draw(J2DTextBox* p_textBox, f32 param_1, f32 param_2, f32 param JUtility::TColor black = mpPane[type]->getBlack(); JUtility::TColor white = mpPane[type]->getWhite(); - mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(0, 0, 0, 255)); + mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(0, 0, 0, 255)); mpPane[type]->draw(2.0f + posX, 2.0f + posY, sizeX, sizeY, false, false, false); mpPane[type]->setBlackWhite(black, white); @@ -755,7 +476,7 @@ void COutFont_c::draw(J2DTextBox* p_textBox, f32 param_1, f32 param_2, f32 param mpPane[type]->draw(posX, posY, sizeX, sizeY, false, false, true); } else { mpPane[type]->draw(posX, posY, sizeX, sizeY, true, true, true); - } + } break; case 19: if (sp256[type] == field_0x1b4[type]) { @@ -771,10 +492,11 @@ void COutFont_c::draw(J2DTextBox* p_textBox, f32 param_1, f32 param_2, f32 param mpPane[type]->draw(posX, posY, sizeX, sizeY, false, false, false); } else { mpPane[type]->draw(posX, posY, sizeX, sizeY, true, true, false); - } + } break; case 13: - mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(0, 0, 0, 255)); + mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(0, 0, 0, 255)); mpPane[type]->draw(2.0f + posX, 2.0f + posY, sizeX, sizeY, false, false, false); mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), mpOfs[i]->getColor()); @@ -798,7 +520,8 @@ void COutFont_c::draw(J2DTextBox* p_textBox, f32 param_1, f32 param_2, f32 param field_0x1b4[type] = 0; } - mpPane[type]->rotate(0.5f * sizeX, 0.5f * sizeY, ROTATE_Z, (360.0f * (f32)field_0x1b4[type]) / 28.0f); + mpPane[type]->rotate(0.5f * sizeX, 0.5f * sizeY, ROTATE_Z, + (360.0f * (f32)field_0x1b4[type]) / 28.0f); mpPane[type]->draw(posX, posY, sizeX, sizeY, false, false, false); break; case 25: // some issues in here, 2020 @@ -829,8 +552,12 @@ void COutFont_c::draw(J2DTextBox* p_textBox, f32 param_1, f32 param_2, f32 param mpPane[type]->draw(posX, posY, sizeX, sizeY, false, false, false); break; case 30: - mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 255, 255, 255)); - mpPane[type]->draw(posX + (0.5f * (sizeX * (1.0f - field_0x1ac))), posY + (0.5f * (sizeY * (1.0f - field_0x1b0))), sizeX * field_0x1ac, sizeY * field_0x1b0, false, false, false); + mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 255, 255, 255)); + mpPane[type]->draw(posX + (0.5f * (sizeX * (1.0f - field_0x1ac))), + posY + (0.5f * (sizeY * (1.0f - field_0x1b0))), + sizeX * field_0x1ac, sizeY * field_0x1b0, false, false, + false); break; case 31: case 32: @@ -849,14 +576,19 @@ void COutFont_c::draw(J2DTextBox* p_textBox, f32 param_1, f32 param_2, f32 param mpPane[type]->draw(posX, posY, sizeX, sizeY, false, false, false); break; case 44: - mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(0, 0, 0, 255)); - mpPane[type]->draw(2.0f + posX, 2.0f + ((posY + -3.0f) - 4.0f), sizeX, sizeY * 1.25f, false, false, false); + mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(0, 0, 0, 255)); + mpPane[type]->draw(2.0f + posX, 2.0f + ((posY + -3.0f) - 4.0f), sizeX, + sizeY * 1.25f, false, false, false); - mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 255, 255, 255)); - mpPane[type]->draw(posX, (posY + -3.0f) - 4.0f, sizeX, sizeY * 1.25f, false, false, false); + mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 255, 255, 255)); + mpPane[type]->draw(posX, (posY + -3.0f) - 4.0f, sizeX, sizeY * 1.25f, false, + false, false); break; case 45: - mpPane[type]->draw(posX, (posY + -3.0f) - 4.0f, sizeX, sizeY * 1.25f, false, false, false); + mpPane[type]->draw(posX, (posY + -3.0f) - 4.0f, sizeX, sizeY * 1.25f, false, + false, false); break; case 46: case 47: @@ -883,10 +615,12 @@ void COutFont_c::draw(J2DTextBox* p_textBox, f32 param_1, f32 param_2, f32 param setBlendAnime(mpPane[type], field_0x1b4[type]); } - mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(0, 0, 0, 255)); + mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(0, 0, 0, 255)); mpPane[type]->draw(2.0f + posX, 2.0f + posY, sizeX, sizeY, false, false, false); - mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(255, 255, 255, 255)); + mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(255, 255, 255, 255)); mpPane[type]->draw(posX, posY, sizeX, sizeY, false, false, false); break; case 48: @@ -909,7 +643,7 @@ void COutFont_c::draw(J2DTextBox* p_textBox, f32 param_1, f32 param_2, f32 param if (field_0x1b4[type] >= 10) { field_0x1b4[type] = 0; } - + if (field_0x1b4[type] < 5) { mpPane[type]->setBlendRatio(1.0f, 0.0f); } else { @@ -917,13 +651,15 @@ void COutFont_c::draw(J2DTextBox* p_textBox, f32 param_1, f32 param_2, f32 param } } - mpPane[type]->draw(posX, -3.0f + posY, sizeX, 1.25f * sizeY, false, false, false); + mpPane[type]->draw(posX, -3.0f + posY, sizeX, 1.25f * sizeY, false, false, + false); break; default: JUtility::TColor black = mpPane[type]->getBlack(); JUtility::TColor white = mpPane[type]->getWhite(); - mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), JUtility::TColor(0, 0, 0, 255)); + mpPane[type]->setBlackWhite(JUtility::TColor(0, 0, 0, 0), + JUtility::TColor(0, 0, 0, 255)); mpPane[type]->draw(2.0f + posX, 2.0f + posY, sizeX, sizeY, false, false, false); mpPane[type]->setBlackWhite(black, white); @@ -934,23 +670,13 @@ void COutFont_c::draw(J2DTextBox* p_textBox, f32 param_1, f32 param_2, f32 param } } } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void COutFont_c::draw(J2DTextBox* param_0, f32 param_1, f32 param_2, f32 param_3) { - nofralloc -#include "asm/d/msg/d_msg_out_font/draw__10COutFont_cFP10J2DTextBoxfff.s" -} -#pragma pop -#endif /* 80228448-80228490 222D88 0048+00 1/0 0/0 0/0 .text reset__10COutFont_cFP10J2DTextBox */ -void COutFont_c::reset(J2DTextBox* p_textBox) { - if (p_textBox != NULL) { +void COutFont_c::reset(J2DTextBox* i_textbox) { + if (i_textbox != NULL) { for (int i = 0; i < 35; i++) { - if (p_textBox == mpOfs[i]->getTextBoxPtr()) { + if (i_textbox == mpOfs[i]->getTextBoxPtr()) { mpOfs[i]->setTextBoxPtr(NULL); mpOfs[i]->resetType(); } @@ -960,32 +686,21 @@ void COutFont_c::reset(J2DTextBox* p_textBox) { /* 80228490-80228530 222DD0 00A0+00 1/1 0/0 0/0 .text setBlendAnime__10COutFont_cFP10J2DPictures */ -// matches with literals -#ifdef NONMATCHING -void COutFont_c::setBlendAnime(J2DPicture* param_0, s16 param_1) { - int iVar5 = param_1 % 0x14; - if (iVar5 < 10) { - f32 dVar6 = fopMsgM_valueIncrease(10, iVar5, 0); - param_0->setBlendRatio(1.0f - dVar6, dVar6); +void COutFont_c::setBlendAnime(J2DPicture* i_pic, s16 param_1) { + int i = param_1 % 20; + + if (i < 10) { + f32 dVar6 = fopMsgM_valueIncrease(10, i, 0); + i_pic->setBlendRatio(1.0f - dVar6, dVar6); } else { - f32 dVar6 = fopMsgM_valueIncrease(10, iVar5 - 10, 0); - param_0->setBlendRatio(dVar6, 1.0f - dVar6); + f32 dVar6 = fopMsgM_valueIncrease(10, i - 10, 0); + i_pic->setBlendRatio(dVar6, 1.0f - dVar6); } } -#else -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void COutFont_c::setBlendAnime(J2DPicture* param_0, s16 param_1) { - nofralloc -#include "asm/d/msg/d_msg_out_font/setBlendAnime__10COutFont_cFP10J2DPictures.s" -} -#pragma pop -#endif /* 80228530-80228578 222E70 0048+00 1/1 0/0 0/0 .text getBtiName__10COutFont_cFi */ -const char* COutFont_c::getBtiName(int nameIdx) { - static const char* mpIconName[70] = { +const char* COutFont_c::getBtiName(int i_nameIdx) { + static const char* mpIconName[] = { "font_00.bti", "font_01.bti", "font_09.bti", @@ -1058,11 +773,9 @@ const char* COutFont_c::getBtiName(int nameIdx) { "font_53.bti", }; - if (nameIdx >= 31 && nameIdx <= 40) { - return dMeter2Info_getNumberTextureName(nameIdx - 31); + if (i_nameIdx >= 31 && i_nameIdx <= 40) { + return dMeter2Info_getNumberTextureName(i_nameIdx - 31); } - return mpIconName[nameIdx]; + return mpIconName[i_nameIdx]; } - -/* 80399350-80399350 0259B0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/msg/scrn/d_msg_scrn_3select.cpp b/src/d/msg/d_msg_scrn_3select.cpp similarity index 99% rename from src/msg/scrn/d_msg_scrn_3select.cpp rename to src/d/msg/d_msg_scrn_3select.cpp index 4022ac4e930..407a9cf919d 100644 --- a/src/msg/scrn/d_msg_scrn_3select.cpp +++ b/src/d/msg/d_msg_scrn_3select.cpp @@ -3,7 +3,7 @@ // Translation Unit: msg/scrn/d_msg_scrn_3select // -#include "msg/scrn/d_msg_scrn_3select.h" +#include "d/msg/d_msg_scrn_3select.h" #include "dol2asm.h" // diff --git a/src/d/msg/d_msg_scrn_arrow.cpp b/src/d/msg/d_msg_scrn_arrow.cpp new file mode 100644 index 00000000000..b4501049d6d --- /dev/null +++ b/src/d/msg/d_msg_scrn_arrow.cpp @@ -0,0 +1,143 @@ +#include "d/msg/d_msg_scrn_arrow.h" +#include "JSystem/J2DGraph/J2DAnmLoader.h" +#include "JSystem/J2DGraph/J2DScreen.h" +#include "d/com/d_com_inf_game.h" +#include "d/pane/d_pane_class.h" + +/* 8023B9B4-8023BC78 2362F4 02C4+00 0/0 4/4 0/0 .text __ct__15dMsgScrnArrow_cFv */ +dMsgScrnArrow_c::dMsgScrnArrow_c() { + mpScreen = new J2DScreen(); + JUT_ASSERT(mpScreen != 0); + bool fg = + mpScreen->setPriority("zelda_window_yajirushi.blo", 0x20000, dComIfGp_getMsgArchive(0)); + JUT_ASSERT(fg != false); + dPaneClass_showNullPane(mpScreen); + + OSInitFastCast(); + + mpBck = (J2DAnmTransform*)J2DAnmLoaderDataBase::load( + JKRGetNameResource("zelda_window_yajirushi.bck", dComIfGp_getMsgArchive(0))); + mBckFrame = 0.0f; + + mpBpk = (J2DAnmColor*)J2DAnmLoaderDataBase::load( + JKRGetNameResource("zelda_window_yajirushi.bpk", dComIfGp_getMsgArchive(0))); + mpBpk->searchUpdateMaterialID(mpScreen); + mBpkFrame = 0.0f; + + mpParent_c = new CPaneMgr(mpScreen, 'set_ya_n', 0, NULL); + JUT_ASSERT(mpParent_c != 0); + + mpArw_c = new CPaneMgr(mpScreen, 'ya_next', 0, NULL); + JUT_ASSERT(mpArw_c != 0); + + mpArw_c->hide(); + mpArw_c->mPane->setAnimation(mpBck); + mpScreen->search('yajnext')->setAnimation(mpBpk); + mpScreen->search('yajinexl')->setAnimation(mpBpk); + + mpDot_c = new CPaneMgr(mpScreen, 'ya_end', 0, NULL); + JUT_ASSERT(mpDot_c != 0); + + mpDot_c->hide(); + mpScreen->search('yaj_end')->setAnimation(mpBpk); + mpScreen->search('yajiendl')->setAnimation(mpBpk); +} + +/* 8023BC78-8023BDC0 2365B8 0148+00 1/0 0/0 0/0 .text __dt__15dMsgScrnArrow_cFv */ +dMsgScrnArrow_c::~dMsgScrnArrow_c() { + delete mpScreen; + mpScreen = NULL; + + delete mpBck; + mpBck = NULL; + + delete mpBpk; + mpBpk = NULL; + + delete mpParent_c; + mpParent_c = NULL; + + delete mpArw_c; + mpArw_c = NULL; + + delete mpDot_c; + mpDot_c = NULL; +} + +/* 8023BDC0-8023BDF8 236700 0038+00 0/0 5/5 0/0 .text draw__15dMsgScrnArrow_cFv */ +void dMsgScrnArrow_c::draw() { + J2DGrafContext* graf_ctx = dComIfGp_getCurrentGrafPort(); + mpScreen->draw(0.0f, 0.0f, graf_ctx); +} + +/* 8023BDF8-8023BE34 236738 003C+00 0/0 5/5 0/0 .text setPos__15dMsgScrnArrow_cFff */ +void dMsgScrnArrow_c::setPos(f32 i_posX, f32 i_posY) { + mpParent_c->translate(i_posX, i_posY); +} + +/* 8023BE34-8023BE90 236774 005C+00 0/0 9/9 0/0 .text arwAnimeInit__15dMsgScrnArrow_cFv */ +void dMsgScrnArrow_c::arwAnimeInit() { + mpArw_c->hide(); + + mBckFrame = 0.0f; + mpBck->setFrame(mBckFrame); + + mBpkFrame = 0.0f; + mpBpk->setFrame(mBpkFrame); + + mpScreen->animation(); +} + +/* 8023BE90-8023BFC4 2367D0 0134+00 0/0 4/4 0/0 .text arwAnimeMove__15dMsgScrnArrow_cFv */ +void dMsgScrnArrow_c::arwAnimeMove() { + if (!mpArw_c->isVisible()) { + mpArw_c->show(); + } + + if (mpDot_c->isVisible() == true) { + mpDot_c->hide(); + } + + mBckFrame += 1.0f; + if (mBckFrame >= (f32)mpBck->getFrameMax()) { + mBckFrame -= (f32)mpBck->getFrameMax(); + } + mpBck->setFrame(mBckFrame); + + mBpkFrame += 1.0f; + if (mBpkFrame >= (f32)mpBpk->getFrameMax()) { + mBpkFrame -= (f32)mpBpk->getFrameMax(); + } + mpBpk->setFrame(mBpkFrame); + + mpScreen->animation(); +} + +/* 8023BFC4-8023C010 236904 004C+00 0/0 3/3 0/0 .text dotAnimeInit__15dMsgScrnArrow_cFv */ +void dMsgScrnArrow_c::dotAnimeInit() { + mpDot_c->hide(); + + mBpkFrame = 0.0f; + mpBpk->setFrame(mBpkFrame); + + mpScreen->animation(); +} + +/* 8023C010-8023C0DC 236950 00CC+00 0/0 3/3 0/0 .text dotAnimeMove__15dMsgScrnArrow_cFv */ +void dMsgScrnArrow_c::dotAnimeMove() { + if (mpArw_c->isVisible() == true) { + mpArw_c->hide(); + } + + if (!mpDot_c->isVisible()) { + mpDot_c->show(); + } + + mBpkFrame += 1.0f; + if (mBpkFrame >= (f32)mpBpk->getFrameMax()) { + mBpkFrame -= (f32)mpBpk->getFrameMax(); + } + + mpBpk->setFrame(mBpkFrame); + mpScreen->animation(); +} diff --git a/src/msg/scrn/d_msg_scrn_base.cpp b/src/d/msg/d_msg_scrn_base.cpp similarity index 85% rename from src/msg/scrn/d_msg_scrn_base.cpp rename to src/d/msg/d_msg_scrn_base.cpp index 2c715e24554..f6577ef6f42 100644 --- a/src/msg/scrn/d_msg_scrn_base.cpp +++ b/src/d/msg/d_msg_scrn_base.cpp @@ -1,8 +1,4 @@ -// -// Translation Unit: msg/scrn/d_msg_scrn_base -// - -#include "msg/scrn/d_msg_scrn_base.h" +#include "d/msg/d_msg_scrn_base.h" #include "JSystem/J2DGraph/J2DGrafContext.h" #include "JSystem/J2DGraph/J2DScreen.h" #include "d/msg/d_msg_object.h" @@ -90,13 +86,13 @@ void dMsgScrnBase_c::drawOutFont(f32 param_0, f32 param_1, f32 param_2) { } /* 8023C360-8023C3EC 236CA0 008C+00 0/0 2/2 0/0 .text setString__14dMsgScrnBase_cFPcPc */ -void dMsgScrnBase_c::setString(char* str1, char* str2) { +void dMsgScrnBase_c::setString(char* i_stringA, char* i_stringB) { for (int i = 0; i < 7; i++) { if (mpTm_c[i] != NULL) { if (i == 0) { - strcpy(((J2DTextBox*)mpTm_c[i]->getPanePtr())->getStringPtr(), str1); + strcpy(((J2DTextBox*)mpTm_c[i]->getPanePtr())->getStringPtr(), i_stringA); } else { - strcpy(((J2DTextBox*)mpTm_c[i]->getPanePtr())->getStringPtr(), str2); + strcpy(((J2DTextBox*)mpTm_c[i]->getPanePtr())->getStringPtr(), i_stringB); } } } @@ -104,39 +100,39 @@ void dMsgScrnBase_c::setString(char* str1, char* str2) { /* 8023C3EC-8023C458 236D2C 006C+00 0/0 2/2 0/0 .text setRubyString__14dMsgScrnBase_cFPc */ -void dMsgScrnBase_c::setRubyString(char* str) { +void dMsgScrnBase_c::setRubyString(char* i_string) { for (int i = 0; i < 3; i++) { if (mpTmr_c[i] != NULL) { - strcpy(((J2DTextBox*)mpTmr_c[i]->getPanePtr())->getStringPtr(), str); + strcpy(((J2DTextBox*)mpTmr_c[i]->getPanePtr())->getStringPtr(), i_string); } } } /* 8023C458-8023C480 236D98 0028+00 1/0 0/0 0/0 .text fukiScale__14dMsgScrnBase_cFf */ -void dMsgScrnBase_c::fukiScale(f32 scale) { - mpPmp_c->paneScale(scale, scale); +void dMsgScrnBase_c::fukiScale(f32 i_scale) { + mpPmp_c->paneScale(i_scale, i_scale); } /* 8023C480-8023C4A4 236DC0 0024+00 1/0 0/0 0/0 .text fukiTrans__14dMsgScrnBase_cFff */ -void dMsgScrnBase_c::fukiTrans(f32 posX, f32 posY) { - mpPmp_c->paneTrans(posX, posY); +void dMsgScrnBase_c::fukiTrans(f32 i_posX, f32 i_posY) { + mpPmp_c->paneTrans(i_posX, i_posY); } /* 8023C4A4-8023C4F4 236DE4 0050+00 1/0 0/0 0/0 .text fukiAlpha__14dMsgScrnBase_cFf */ -void dMsgScrnBase_c::fukiAlpha(f32 alpha) { - fontAlpha(alpha); - mpPmp_c->setAlphaRate(alpha); +void dMsgScrnBase_c::fukiAlpha(f32 i_alpha) { + fontAlpha(i_alpha); + mpPmp_c->setAlphaRate(i_alpha); } /* 8023C4F4-8023C574 236E34 0080+00 1/0 5/0 0/0 .text fontAlpha__14dMsgScrnBase_cFf */ -void dMsgScrnBase_c::fontAlpha(f32 alpha) { +void dMsgScrnBase_c::fontAlpha(f32 i_alpha) { for (int i = 0; i < 7; i++) { if (mpTm_c[i] != NULL) { - mpTm_c[i]->setAlphaRate(alpha); + mpTm_c[i]->setAlphaRate(i_alpha); } if (mpTmr_c[i] != NULL) { - mpTmr_c[i]->setAlphaRate(alpha); + mpTmr_c[i]->setAlphaRate(i_alpha); } } } diff --git a/src/msg/scrn/d_msg_scrn_boss.cpp b/src/d/msg/d_msg_scrn_boss.cpp similarity index 80% rename from src/msg/scrn/d_msg_scrn_boss.cpp rename to src/d/msg/d_msg_scrn_boss.cpp index d1f32e4a9bf..5943da0524f 100644 --- a/src/msg/scrn/d_msg_scrn_boss.cpp +++ b/src/d/msg/d_msg_scrn_boss.cpp @@ -1,29 +1,15 @@ -// -// Translation Unit: msg/scrn/d_msg_scrn_boss -// - -#include "msg/scrn/d_msg_scrn_boss.h" +#include "d/msg/d_msg_scrn_boss.h" #include "JSystem/J2DGraph/J2DGrafContext.h" #include "JSystem/J2DGraph/J2DScreen.h" #include "d/msg/d_msg_object.h" #include "d/pane/d_pane_class.h" -#include "dolphin/types.h" - -// -// External References: -// extern "C" extern dMsgObject_HIO_c g_MsgObject_HIO_c; -// -// Declarations: -// - /* 8023C5C8-8023C928 236F08 0360+00 0/0 1/1 0/0 .text __ct__14dMsgScrnBoss_cFv */ dMsgScrnBoss_c::dMsgScrnBoss_c() { static u64 t_tag[7] = { - 'sfontb0', 'sfontb1', 'sfontb2', 'sfontl0', - 'sfontl1', 'sfontl2', 'sfont00', + 'sfontb0', 'sfontb1', 'sfontb2', 'sfontl0', 'sfontl1', 'sfontl2', 'sfont00', }; init(); @@ -37,11 +23,13 @@ dMsgScrnBoss_c::dMsgScrnBoss_c() { mpFontParent = new CPaneMgr(mpScreen, 's_font_n', 0, NULL); mpFontParent->scale(g_MsgObject_HIO_c.mBossNameCharSizeX, g_MsgObject_HIO_c.mBossNameCharSizeY); - mpFontParent->paneTrans(g_MsgObject_HIO_c.mBossNameCharPosX, g_MsgObject_HIO_c.mBossNameCharPosY); + mpFontParent->paneTrans(g_MsgObject_HIO_c.mBossNameCharPosX, + g_MsgObject_HIO_c.mBossNameCharPosY); mpBaseParent = new CPaneMgr(mpScreen, 'base_n', 2, NULL); mpBaseParent->scale(g_MsgObject_HIO_c.mBossNameBaseSizeX, g_MsgObject_HIO_c.mBossNameBaseSizeY); - mpBaseParent->paneTrans(g_MsgObject_HIO_c.mBossNameBasePosX, g_MsgObject_HIO_c.mBossNameBasePosY); + mpBaseParent->paneTrans(g_MsgObject_HIO_c.mBossNameBasePosX, + g_MsgObject_HIO_c.mBossNameBasePosY); for (int i = 0; i < 7; i++) { mpTm_c[i] = new CPaneMgr(mpScreen, t_tag[i], 0, NULL); @@ -91,10 +79,12 @@ void dMsgScrnBoss_c::exec() { mpPmp_c->scale(g_MsgObject_HIO_c.mBossNameScaleX, g_MsgObject_HIO_c.mBossNameScaleY); mpFontParent->scale(g_MsgObject_HIO_c.mBossNameCharSizeX, g_MsgObject_HIO_c.mBossNameCharSizeY); - mpFontParent->paneTrans(g_MsgObject_HIO_c.mBossNameCharPosX, g_MsgObject_HIO_c.mBossNameCharPosY); + mpFontParent->paneTrans(g_MsgObject_HIO_c.mBossNameCharPosX, + g_MsgObject_HIO_c.mBossNameCharPosY); mpBaseParent->scale(g_MsgObject_HIO_c.mBossNameBaseSizeX, g_MsgObject_HIO_c.mBossNameBaseSizeY); - mpBaseParent->paneTrans(g_MsgObject_HIO_c.mBossNameBasePosX, g_MsgObject_HIO_c.mBossNameBasePosY); + mpBaseParent->paneTrans(g_MsgObject_HIO_c.mBossNameBasePosX, + g_MsgObject_HIO_c.mBossNameBasePosY); if (isTalkNow()) { fukiAlpha(1.0f); @@ -109,28 +99,20 @@ void dMsgScrnBoss_c::drawSelf() { } /* 8023CBF0-8023CC7C 237530 008C+00 1/0 0/0 0/0 .text fukiAlpha__14dMsgScrnBoss_cFf */ -void dMsgScrnBoss_c::fukiAlpha(f32 alpha) { - mpPmp_c->setAlphaRate(alpha); - mpBaseParent->setAlphaRate(alpha * g_MsgObject_HIO_c.mBossNameBaseAlpha); +void dMsgScrnBoss_c::fukiAlpha(f32 i_alpha) { + mpPmp_c->setAlphaRate(i_alpha); + mpBaseParent->setAlphaRate(i_alpha * g_MsgObject_HIO_c.mBossNameBaseAlpha); for (int i = 0; i < 7; i++) { - mpTm_c[i]->setAlphaRate(alpha); + mpTm_c[i]->setAlphaRate(i_alpha); } } /* 8023CC7C-8023CC80 2375BC 0004+00 1/0 0/0 0/0 .text fukiScale__14dMsgScrnBoss_cFf */ -void dMsgScrnBoss_c::fukiScale(f32) { - /* empty function */ -} +void dMsgScrnBoss_c::fukiScale(f32) {} /* 8023CC80-8023CC84 2375C0 0004+00 1/0 0/0 0/0 .text fukiTrans__14dMsgScrnBoss_cFff */ -void dMsgScrnBoss_c::fukiTrans(f32, f32) { - /* empty function */ -} +void dMsgScrnBoss_c::fukiTrans(f32, f32) {} /* 8023CC84-8023CC88 2375C4 0004+00 1/0 0/0 0/0 .text fontAlpha__14dMsgScrnBoss_cFf */ -void dMsgScrnBoss_c::fontAlpha(f32) { - /* empty function */ -} - -/* 803998F8-803998F8 025F58 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ +void dMsgScrnBoss_c::fontAlpha(f32) {} diff --git a/src/msg/scrn/d_msg_scrn_explain.cpp b/src/d/msg/d_msg_scrn_explain.cpp similarity index 73% rename from src/msg/scrn/d_msg_scrn_explain.cpp rename to src/d/msg/d_msg_scrn_explain.cpp index b7c317810a7..b799d13e5ac 100644 --- a/src/msg/scrn/d_msg_scrn_explain.cpp +++ b/src/d/msg/d_msg_scrn_explain.cpp @@ -1,53 +1,39 @@ -// -// Translation Unit: msg/scrn/d_msg_scrn_explain -// - -#include "msg/scrn/d_msg_scrn_explain.h" -#include "msg/scrn/d_msg_scrn_arrow.h" -#include "msg/scrn/d_msg_scrn_3select.h" -#include "stdio.h" +#include "d/msg/d_msg_scrn_explain.h" +#include "JSystem/J2DGraph/J2DScreen.h" +#include "d/d_lib.h" #include "d/meter/d_meter2_info.h" #include "d/msg/d_msg_object.h" #include "d/msg/d_msg_out_font.h" +#include "d/msg/d_msg_scrn_3select.h" +#include "d/msg/d_msg_scrn_arrow.h" #include "d/msg/d_msg_string.h" #include "d/pane/d_pane_class.h" -#include "d/d_lib.h" #include "m_Do/m_Do_controller_pad.h" -#include "JSystem/J2DGraph/J2DScreen.h" -#include "dolphin/os.h" -#include "dolphin/types.h" - -// -// External References: -// +#include "stdio.h" extern dMsgObject_HIO_c g_MsgObject_HIO_c; -// -// Declarations: -// - -/* ############################################################################################## */ - /* 803C0E40-803C0E4C 01DF60 000C+00 1/1 0/0 0/0 .data cNullVec__6Z2Calc */ static u8 cNullVec__6Z2Calc[12] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; -static dMsgScrnExplain_c::ProcFunc init_process[6] = { - &dMsgScrnExplain_c::wait_init, &dMsgScrnExplain_c::open_request_init, &dMsgScrnExplain_c::open_init, - &dMsgScrnExplain_c::move_init, &dMsgScrnExplain_c::move_select_init, &dMsgScrnExplain_c::close_init, +static dMsgScrnExplain_c::ProcFunc init_process[] = { + &dMsgScrnExplain_c::wait_init, &dMsgScrnExplain_c::open_request_init, + &dMsgScrnExplain_c::open_init, &dMsgScrnExplain_c::move_init, + &dMsgScrnExplain_c::move_select_init, &dMsgScrnExplain_c::close_init, }; -static dMsgScrnExplain_c::ProcFunc move_process[6] = { - &dMsgScrnExplain_c::wait_proc, &dMsgScrnExplain_c::open_request_proc, &dMsgScrnExplain_c::open_proc, - &dMsgScrnExplain_c::move_proc, &dMsgScrnExplain_c::move_select_proc, &dMsgScrnExplain_c::close_proc, +static dMsgScrnExplain_c::ProcFunc move_process[] = { + &dMsgScrnExplain_c::wait_proc, &dMsgScrnExplain_c::open_request_proc, + &dMsgScrnExplain_c::open_proc, &dMsgScrnExplain_c::move_proc, + &dMsgScrnExplain_c::move_select_proc, &dMsgScrnExplain_c::close_proc, }; /* 8023CC88-8023D538 2375C8 08B0+00 0/0 2/2 0/0 .text __ct__17dMsgScrnExplain_cFP9STControlUcbUc */ -dMsgScrnExplain_c::dMsgScrnExplain_c(STControl* param_0, u8 param_1, bool param_2, u8 param_3) { - field_0x44 = param_0; +dMsgScrnExplain_c::dMsgScrnExplain_c(STControl* i_stick, u8 param_1, bool param_2, u8 param_3) { + mpStick = i_stick; field_0x54 = 0; field_0x5c = 0; field_0x64 = 0; @@ -61,39 +47,55 @@ dMsgScrnExplain_c::dMsgScrnExplain_c(STControl* param_0, u8 param_1, bool param_ field_0x66 = param_1; mKeyWaitTimer = 0; field_0x67 = param_3; + mpString_c = new dMsgString_c(); + mpOutFont = new COutFont_c(0); mpOutFont->createPane(); + mpScreen = new J2DScreen(); mpScreen->setPriority("zelda_message_window_new.blo", 0x20000, dComIfGp_getMsgArchive(1)); dPaneClass_showNullPane(mpScreen); + mpTxScreen = new J2DScreen(); field_0x48 = 608.0f; if (param_1 == 1 || param_1 == 3) { - mpTxScreen->setPriority("zelda_message_window_text_save_road.blo", 0x20000, dComIfGp_getMsgCommonArchive()); + mpTxScreen->setPriority("zelda_message_window_text_save_road.blo", 0x20000, + dComIfGp_getMsgCommonArchive()); dPaneClass_showNullPane(mpTxScreen); + mpTm_c[0] = new CPaneMgr(mpTxScreen, 'mg_3line', 0, NULL); mpTm_c[1] = new CPaneMgr(mpTxScreen, 't3_s', 0, NULL); + field_0x10[0] = NULL; field_0x10[1] = NULL; + mpTxScreen->search('n_3line')->show(); mpTxScreen->search('n_3fline')->hide(); mpTxScreen->search('n_e4line')->hide(); + field_0x50 = -10.0f; field_0x4c = 0.0f; } else { - mpTxScreen->setPriority("zelda_message_window_text.blo", 0x20000, dComIfGp_getMsgCommonArchive()); + mpTxScreen->setPriority("zelda_message_window_text.blo", 0x20000, + dComIfGp_getMsgCommonArchive()); dPaneClass_showNullPane(mpTxScreen); - mpScreen->search('n_all')->scale(g_MsgObject_HIO_c.mBoxTalkScaleX, g_MsgObject_HIO_c.mBoxTalkScaleY); + + mpScreen->search('n_all')->scale(g_MsgObject_HIO_c.mBoxTalkScaleX, + g_MsgObject_HIO_c.mBoxTalkScaleY); field_0x50 = -10.0f; + mpTm_c[0] = new CPaneMgr(mpTxScreen, 'mg_e4lin', 0, NULL); mpTm_c[1] = new CPaneMgr(mpTxScreen, 't4_s', 0, NULL); + field_0x10[0] = NULL; field_0x10[1] = NULL; + mpTxScreen->search('n_3line')->hide(); mpTxScreen->search('n_3fline')->hide(); mpTxScreen->search('n_e4line')->show(); + if (param_1 == 2 || param_1 == 4) { field_0x4c = 0.0f; } else { @@ -106,38 +108,46 @@ dMsgScrnExplain_c::dMsgScrnExplain_c(STControl* param_0, u8 param_1, bool param_ ((J2DTextBox*)mpTm_c[i]->getPanePtr())->setFont(mDoExt_getMesgFont()); ((J2DTextBox*)mpTm_c[i]->getPanePtr())->setString(0x200, ""); ((J2DTextBox*)mpTm_c[i]->getPanePtr())->setLineSpace(lineSpace); + if (field_0x10[i] != NULL) { ((J2DTextBox*)field_0x10[i]->getPanePtr())->setFont(mDoExt_getMesgFont()); ((J2DTextBox*)field_0x10[i]->getPanePtr())->setString(0x200, ""); ((J2DTextBox*)field_0x10[i]->getPanePtr())->setLineSpace(lineSpace); } } + mpScreen->search('mg_null')->move( g_MsgObject_HIO_c.mTextPosX + mpScreen->search('mg_null')->getBounds().i.x, - g_MsgObject_HIO_c.mTextPosY + mpScreen->search('mg_null')->getBounds().i.y - ); + g_MsgObject_HIO_c.mTextPosY + mpScreen->search('mg_null')->getBounds().i.y); + mpArw_c = new CPaneMgr(mpScreen, 'set_ya_n', 0, NULL); mpMg_c[0] = new CPaneMgr(mpScreen, 'mg_null', 0, NULL); mpMg_c[1] = new CPaneMgr(mpTxScreen, 'mg_null', 0, NULL); mpRoot_c[0] = new CPaneMgr(mpScreen, 'ROOT', 2, NULL); mpRoot_c[1] = new CPaneMgr(mpTxScreen, 'ROOT', 2, NULL); - + if (param_2 == true) { - ResTIMG* texResource = (ResTIMG*) dComIfGp_getMain2DArchive()->getResource('TIMG', "tt_block8x8.bti"); + ResTIMG* texResource = + (ResTIMG*)dComIfGp_getMain2DArchive()->getResource('TIMG', "tt_block8x8.bti"); mpBackTex = new J2DPicture(texResource); - mpBackTex->setBlackWhite(JUtility::TColor::TColor(0,0,0,0), JUtility::TColor::TColor(0,0,0,0xff)); + mpBackTex->setBlackWhite(JUtility::TColor::TColor(0, 0, 0, 0), + JUtility::TColor::TColor(0, 0, 0, 0xff)); mpBackTex->setAlpha(0); } else { mpBackTex = NULL; } + mpArrow_c = new dMsgScrnArrow_c(); - if (param_0 != NULL) { + + if (i_stick != NULL) { mpSelect_c = new dMsgScrn3Select_c(); } else { mpSelect_c = NULL; } + Vec vtxCenter = mpArw_c->getGlobalVtxCenter(mpArw_c->mPane, false, 0); mpArrow_c->setPos(vtxCenter.x, vtxCenter.y); + Vec vtxCenter2 = mpMg_c[0]->getGlobalVtxCenter(mpMg_c[0]->mPane, false, 0); mpMg_c[1]->translate(vtxCenter2.x + field_0x50, vtxCenter2.y); } @@ -146,125 +156,145 @@ dMsgScrnExplain_c::dMsgScrnExplain_c(STControl* param_0, u8 param_1, bool param_ dMsgScrnExplain_c::~dMsgScrnExplain_c() { delete mpString_c; mpString_c = NULL; + delete mpOutFont; mpOutFont = NULL; + delete mpScreen; mpScreen = NULL; + delete mpTxScreen; mpTxScreen = NULL; + delete mpArw_c; mpArw_c = NULL; + for (int i = 0; i < 2; i++) { delete mpTm_c[i]; mpTm_c[i] = NULL; + if (field_0x10[i] != NULL) { delete field_0x10[i]; field_0x10[i] = NULL; } + delete mpMg_c[i]; mpMg_c[i] = NULL; + delete mpRoot_c[i]; mpRoot_c[i] = NULL; } + if (mpBackTex != NULL) { delete mpBackTex; mpBackTex = NULL; } + if (mpArrow_c != NULL) { delete mpArrow_c; mpArrow_c = NULL; } + if (mpSelect_c) { delete mpSelect_c; mpSelect_c = NULL; } + dComIfGp_getMsgArchive(0)->removeResourceAll(); dComIfGp_getMsgArchive(1)->removeResourceAll(); dComIfGp_getMsgCommonArchive()->removeResourceAll(); } -/* ############################################################################################## */ - /* 8023D7D8-8023D918 238118 0140+00 0/0 4/4 0/0 .text move__17dMsgScrnExplain_cFv */ void dMsgScrnExplain_c::move() { u8 currentStatus = mStatus; - f32 fVar2 = 0.0f; + + f32 y_offset = 0.0f; if (field_0x66 == 2) { - fVar2 = -35.0f; + y_offset = -35.0f; } + for (int i = 0; i < 2; i++) { mpRoot_c[i]->paneTrans(field_0x48 + g_MsgObject_HIO_c.mChoicePos[0][6], - field_0x4c + g_MsgObject_HIO_c.mBoxPos[0][6] + fVar2); + field_0x4c + g_MsgObject_HIO_c.mBoxPos[0][6] + y_offset); } + (this->*move_process[mStatus])(); + if (currentStatus != mStatus) { (this->*init_process[mStatus])(); } - mpScreen->search('n_all')->scale(g_MsgObject_HIO_c.mBoxTalkScaleX, g_MsgObject_HIO_c.mBoxTalkScaleY); -} -/* ############################################################################################## */ + mpScreen->search('n_all')->scale(g_MsgObject_HIO_c.mBoxTalkScaleX, + g_MsgObject_HIO_c.mBoxTalkScaleY); +} /* 8023D918-8023DAD0 238258 01B8+00 0/0 3/3 0/0 .text draw__17dMsgScrnExplain_cFP13J2DOrthoGraph */ -void dMsgScrnExplain_c::draw(J2DOrthoGraph* param_0) { +void dMsgScrnExplain_c::draw(J2DOrthoGraph* i_graf) { if (mStatus == 0 || mStatus == 1) { return; } + if (mpBackTex != NULL) { mpBackTex->draw(0.0f, 0.0f, 608.0f, 448.0f, false, false, false); } + if (field_0x66 != 2 && field_0x66 != 3) { - mpScreen->draw(0.0f, 0.0f, (J2DGrafContext*)param_0); + mpScreen->draw(0.0f, 0.0f, (J2DGrafContext*)i_graf); } - char acStack_228[512]; - strcpy(acStack_228, ((J2DTextBox*)mpTm_c[0]->getPanePtr())->getStringPtr()); - mpTxScreen->draw(0.0f, 0.0f, (J2DGrafContext*)param_0); + + char string_buf[512]; + strcpy(string_buf, ((J2DTextBox*)mpTm_c[0]->getPanePtr())->getStringPtr()); + + mpTxScreen->draw(0.0f, 0.0f, (J2DGrafContext*)i_graf); mpString_c->getString(field_0x54, (J2DTextBox*)mpTm_c[0]->getPanePtr(), NULL, NULL, NULL, 8); mpString_c->drawOutFont((J2DTextBox*)mpTm_c[0]->getPanePtr(), -1.0f); - strcpy(((J2DTextBox*)mpTm_c[0]->getPanePtr())->getStringPtr(), acStack_228); + + strcpy(((J2DTextBox*)mpTm_c[0]->getPanePtr())->getStringPtr(), string_buf); + if (mpSelect_c != NULL && (field_0x64 == 1 || field_0x64 == 2)) { - f32 fVar1 = 0.0f; + f32 y_offset = 0.0f; if (field_0x66 == 2) { - fVar1 = -100.0f; + y_offset = -100.0f; } - mpSelect_c->translate(486.0f + g_MsgObject_HIO_c.mChoicePos[0][7], 209.0f + g_MsgObject_HIO_c.mBoxPos[0][7] + fVar1); + + mpSelect_c->translate(486.0f + g_MsgObject_HIO_c.mChoicePos[0][7], + 209.0f + g_MsgObject_HIO_c.mBoxPos[0][7] + y_offset); mpSelect_c->draw(0.0f, 0.0f); } + if (mpArrow_c != NULL) { mpArrow_c->draw(); } } /* 8023DAD0-8023DAD4 238410 0004+00 1/0 0/0 0/0 .text wait_init__17dMsgScrnExplain_cFv */ -void dMsgScrnExplain_c::wait_init() { - /* empty function */ -} +void dMsgScrnExplain_c::wait_init() {} /* 8023DAD4-8023DAD8 238414 0004+00 1/0 0/0 0/0 .text wait_proc__17dMsgScrnExplain_cFv */ -void dMsgScrnExplain_c::wait_proc() { - /* empty function */ -} +void dMsgScrnExplain_c::wait_proc() {} /* 8023DAD8-8023DADC 238418 0004+00 2/1 0/0 0/0 .text open_request_init__17dMsgScrnExplain_cFv */ -void dMsgScrnExplain_c::open_request_init() { - /* empty function */ -} +void dMsgScrnExplain_c::open_request_init() {} /* 8023DADC-8023DBE4 23841C 0108+00 1/0 0/0 0/0 .text open_request_proc__17dMsgScrnExplain_cFv */ void dMsgScrnExplain_c::open_request_proc() { J2DTextBox* uVar1; J2DTextBox* uVar6 = NULL; - uVar1 = (J2DTextBox*) mpTm_c[0]->getPanePtr(); + + uVar1 = (J2DTextBox*)mpTm_c[0]->getPanePtr(); if (field_0x10[0] != NULL) { - uVar6 = (J2DTextBox*) field_0x10[0]->getPanePtr(); + uVar6 = (J2DTextBox*)field_0x10[0]->getPanePtr(); } + char acStack_220[512]; char acStack_420[512]; char acStack_620[512]; - if (dMsgObject_getString(field_0x54, uVar1, uVar6, mDoExt_getMesgFont(), - mpOutFont, acStack_220, - acStack_420, acStack_620, &field_0x5c) != 0) { + + if (dMsgObject_getString(field_0x54, uVar1, uVar6, mDoExt_getMesgFont(), mpOutFont, acStack_220, + acStack_420, acStack_620, &field_0x5c) != 0) + { strcpy(((J2DTextBox*)mpTm_c[0]->getPanePtr())->getStringPtr(), acStack_220); strcpy(((J2DTextBox*)mpTm_c[1]->getPanePtr())->getStringPtr(), acStack_620); for (int i = 0; i < 2; i++) { @@ -272,15 +302,15 @@ void dMsgScrnExplain_c::open_request_proc() { strcpy(((J2DTextBox*)field_0x10[i]->getPanePtr())->getStringPtr(), acStack_420); } } + if (field_0x67 != 0) { Z2GetSpeechMgr2()->setTextCount(0); } + mStatus = 2; } } -/* ############################################################################################## */ - /* 8023DBE4-8023DC7C 238524 0098+00 1/0 0/0 0/0 .text open_init__17dMsgScrnExplain_cFv */ void dMsgScrnExplain_c::open_init() { field_0x5a = 0; @@ -288,11 +318,9 @@ void dMsgScrnExplain_c::open_init() { for (int i = 0; i < 2; i++) { mpRoot_c[i]->setAlphaRate(0.0f); } - mDoAud_seStart(0x51, 0, 0, 0); + mDoAud_seStart(Z2SE_SY_EXP_WIN_OPEN, 0, 0, 0); } -/* ############################################################################################## */ - /* 8023DC7C-8023DD90 2385BC 0114+00 1/0 0/0 0/0 .text open_proc__17dMsgScrnExplain_cFv */ void dMsgScrnExplain_c::open_proc() { field_0x5a++; @@ -304,12 +332,14 @@ void dMsgScrnExplain_c::open_proc() { mStatus = 3; } } + field_0x48 = 608.0f * getAlphaRatio(); for (int i = 0; i < 2; i++) { mpRoot_c[i]->setAlphaRate(1.0f - getAlphaRatio()); } + if (mpBackTex != NULL) { - mpBackTex->setAlpha((1.0f - getAlphaRatio()) * 150.0f ); + mpBackTex->setAlpha((1.0f - getAlphaRatio()) * 150.0f); } } @@ -324,55 +354,67 @@ void dMsgScrnExplain_c::move_proc() { mKeyWaitTimer--; return; } + if (mDoCPd_c::getTrigA(PAD_1) || ((field_0x58 != 0x0 && (mDoCPd_c::getTrigB(PAD_1) || mDoCPd_c::getTrigZ(PAD_1) || mDoCPd_c::getTrigX(PAD_1) || - mDoCPd_c::getTrigY(PAD_1) || mDoCPd_c::getTrigStart(PAD_1) || mDoCPd_c::getTrigR(PAD_1) || - mDoCPd_c::getTrigL(PAD_1) || mForceSelect)))) { + mDoCPd_c::getTrigY(PAD_1) || mDoCPd_c::getTrigStart(PAD_1) || + mDoCPd_c::getTrigR(PAD_1) || mDoCPd_c::getTrigL(PAD_1) || mForceSelect)))) + { mStatus = 5; dMeter2Info_set2DVibrationM(); mDoAud_seStart(0x52, 0, 0, 0); } } -/* ############################################################################################## */ - /* 8023DE8C-8023E0F4 2387CC 0268+00 1/0 0/0 0/0 .text move_select_init__17dMsgScrnExplain_cFv */ void dMsgScrnExplain_c::move_select_init() { - char local_c0[8]; - char local_c8[8]; - char local_a4[20]; - char local_b8[20]; - local_c0[0] = 0; - local_c8[0] = 0; - local_a4[0] = 0; - local_b8[1] = 0; + char msg_buf_yes[8]; + char msg_buf_no[8]; + char string_buf_yes[20]; + char string_buf_no[20]; + + msg_buf_yes[0] = 0; + msg_buf_no[0] = 0; + string_buf_yes[0] = 0; + string_buf_no[1] = 0; + if (field_0x66 == 4) { - dMeter2Info_getString(0x4b0, local_c0, NULL); - dMeter2Info_getString(0x4b1, local_c8, NULL); + dMeter2Info_getString(0x4b0, msg_buf_yes, NULL); // "YES" + dMeter2Info_getString(0x4b1, msg_buf_no, NULL); // "NO" } else { - dMeter2Info_getString(0x51f, local_c0, NULL); - dMeter2Info_getString(0x520, local_c8, NULL); + dMeter2Info_getString(0x51f, msg_buf_yes, NULL); // "YES" + dMeter2Info_getString(0x520, msg_buf_no, NULL); // "NO" } - f32 dVar10 = dMeter2Info_getStringLength(mDoExt_getMesgFont(), mpSelect_c->getFontSize(), mpSelect_c->getCharSpace(), local_c0); - f32 dVar11 = dMeter2Info_getStringLength(mDoExt_getMesgFont(), mpSelect_c->getFontSize(), mpSelect_c->getCharSpace(), local_c8); + f32 yes_str_len = dMeter2Info_getStringLength(mDoExt_getMesgFont(), mpSelect_c->getFontSize(), + mpSelect_c->getCharSpace(), msg_buf_yes); + f32 no_str_len = dMeter2Info_getStringLength(mDoExt_getMesgFont(), mpSelect_c->getFontSize(), + mpSelect_c->getCharSpace(), msg_buf_no); f32 dVar13; - if (dVar10 < dVar11) { - dVar13 = dVar11; + if (yes_str_len < no_str_len) { + dVar13 = no_str_len; } else { - dVar13 = dVar10; + dVar13 = yes_str_len; } - f32 dVar12 = mpSelect_c->getTextBoxWidth(); - if (dVar13 < dVar12) { + + f32 tbox_width = mpSelect_c->getTextBoxWidth(); + if (dVar13 < tbox_width) { dVar13 = mpSelect_c->getTextBoxWidth(); } - snprintf(local_a4, 20, "\x1B""CR[%d]", (int)(0.5f * (dVar13 - dVar10))); - strcat(local_a4, local_c0); - snprintf(local_b8, 20, "\x1B""CR[%d]", (int)(0.5f * (dVar13 - dVar11))); - strcat(local_b8, local_c8); - mpSelect_c->setString("", local_a4, local_b8); + snprintf(string_buf_yes, 20, + "\x1B" + "CR[%d]", + (int)(0.5f * (dVar13 - yes_str_len))); + strcat(string_buf_yes, msg_buf_yes); + snprintf(string_buf_no, 20, + "\x1B" + "CR[%d]", + (int)(0.5f * (dVar13 - no_str_len))); + strcat(string_buf_no, msg_buf_no); + + mpSelect_c->setString("", string_buf_yes, string_buf_no); mpSelect_c->setRubyString("", "", ""); mpSelect_c->selAnimeInit(2, mSelCursor + 1, 0, dVar13, 0); mpArrow_c->arwAnimeInit(); @@ -383,24 +425,28 @@ void dMsgScrnExplain_c::move_select_proc() { if (mKeyWaitTimer > 0) { mKeyWaitTimer--; } else { - field_0x44->checkTrigger(); + mpStick->checkTrigger(); if (checkTriggerA()) { if (field_0x64 == 2) { if (mSelCursor == 0) { dMeter2Info_setWarpStatus(3); - Z2GetAudioMgr()->seStart(Z2SE_WARP_MAP_DECIDE, NULL, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0); + Z2GetAudioMgr()->seStart(Z2SE_WARP_MAP_DECIDE, NULL, 0, 0, 1.0f, 1.0f, -1.0f, + -1.0f, 0); } else { - Z2GetAudioMgr()->seStart(Z2SE_SY_CURSOR_CANCEL, NULL, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0); + Z2GetAudioMgr()->seStart(Z2SE_SY_CURSOR_CANCEL, NULL, 0, 0, 1.0f, 1.0f, -1.0f, + -1.0f, 0); } } else if (field_0x66 == 0) { mDoAud_seStart(Z2SE_SY_TALK_CURSOR_OK, NULL, 0, 0); - } + } + mStatus = 5; mDoAud_seStart(Z2SE_SY_EXP_WIN_CLOSE, NULL, 0, 0); } else if (field_0x58 && (checkTriggerB() || mForceSelect)) { if (field_0x64 == 2) { - Z2GetAudioMgr()->seStart(Z2SE_SY_CURSOR_CANCEL, NULL, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0); + Z2GetAudioMgr()->seStart(Z2SE_SY_CURSOR_CANCEL, NULL, 0, 0, 1.0f, 1.0f, -1.0f, + -1.0f, 0); } else if (field_0x64 == 1) { if (field_0x63 != 0xff) { mSelCursor = field_0x63; @@ -408,16 +454,19 @@ void dMsgScrnExplain_c::move_select_proc() { mSelCursor = 0xff; } } + mStatus = 5; mDoAud_seStart(Z2SE_SY_EXP_WIN_CLOSE, NULL, 0, 0); - } else if (mpSelect_c->isSelect() && field_0x44->checkUpTrigger()) { + } else if (mpSelect_c->isSelect() && mpStick->checkUpTrigger()) { if (mSelCursor == 1) { mSelCursor = 0; - Z2GetAudioMgr()->seStart(Z2SE_SY_MENU_CURSOR_COMMON, NULL, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0); + Z2GetAudioMgr()->seStart(Z2SE_SY_MENU_CURSOR_COMMON, NULL, 0, 0, 1.0f, 1.0f, -1.0f, + -1.0f, 0); } - } else if (mpSelect_c->isSelect() && field_0x44->checkDownTrigger() && mSelCursor == 0) { + } else if (mpSelect_c->isSelect() && mpStick->checkDownTrigger() && mSelCursor == 0) { mSelCursor = 1; - Z2GetAudioMgr()->seStart(Z2SE_SY_MENU_CURSOR_COMMON, NULL, 0, 0, 1.0f, 1.0f, -1.0f, -1.0f, 0); + Z2GetAudioMgr()->seStart(Z2SE_SY_MENU_CURSOR_COMMON, NULL, 0, 0, 1.0f, 1.0f, -1.0f, + -1.0f, 0); } } @@ -443,6 +492,7 @@ void dMsgScrnExplain_c::close_proc() { } else { iVar1 = true; } + field_0x5a--; if (field_0x5a <= 0) { field_0x5a = 0; @@ -450,10 +500,12 @@ void dMsgScrnExplain_c::close_proc() { mStatus = 0; } } + field_0x48 = 608.0f * getAlphaRatio(); for (int i = 0; i < 2; i++) { mpRoot_c[i]->setAlphaRate(1.0f - getAlphaRatio()); } + if (mpBackTex != NULL) { mpBackTex->setAlpha(150.0f * (1.0f - getAlphaRatio())); } @@ -461,12 +513,13 @@ void dMsgScrnExplain_c::close_proc() { /* 8023E558-8023E5CC 238E98 0074+00 0/0 7/7 0/0 .text openExplain__17dMsgScrnExplain_cFUlUcUcUcb */ -bool dMsgScrnExplain_c::openExplain(u32 param_0, u8 param_1, u8 param_2, u8 param_3, - bool param_4) { +bool dMsgScrnExplain_c::openExplain(u32 param_0, u8 param_1, u8 param_2, u8 param_3, bool param_4) { bool rv = false; + if (g_MsgObject_HIO_c.mSaveSeqMsgDebug) { param_0 = g_MsgObject_HIO_c.mSaveSeqMsgIndex; } + if (mStatus == 0) { field_0x54 = param_0; field_0x64 = param_1; @@ -478,11 +531,10 @@ bool dMsgScrnExplain_c::openExplain(u32 param_0, u8 param_1, u8 param_2, u8 para open_request_init(); rv = true; } + return rv; } -/* ############################################################################################## */ - /* 8023E5CC-8023E640 238F0C 0074+00 2/2 0/0 0/0 .text getAlphaRatio__17dMsgScrnExplain_cFv */ f32 dMsgScrnExplain_c::getAlphaRatio() { switch (mStatus) { diff --git a/src/msg/scrn/d_msg_scrn_howl.cpp b/src/d/msg/d_msg_scrn_howl.cpp similarity index 99% rename from src/msg/scrn/d_msg_scrn_howl.cpp rename to src/d/msg/d_msg_scrn_howl.cpp index 07b0a936881..6d33065805c 100644 --- a/src/msg/scrn/d_msg_scrn_howl.cpp +++ b/src/d/msg/d_msg_scrn_howl.cpp @@ -3,7 +3,7 @@ // Translation Unit: msg/scrn/d_msg_scrn_howl // -#include "msg/scrn/d_msg_scrn_howl.h" +#include "d/msg/d_msg_scrn_howl.h" #include "m_Do/m_Do_controller_pad.h" #include "m_Do/m_Do_graphic.h" #include "d/msg/d_msg_class.h" diff --git a/src/msg/scrn/d_msg_scrn_item.cpp b/src/d/msg/d_msg_scrn_item.cpp similarity index 99% rename from src/msg/scrn/d_msg_scrn_item.cpp rename to src/d/msg/d_msg_scrn_item.cpp index 538e300c568..76cd07ace07 100644 --- a/src/msg/scrn/d_msg_scrn_item.cpp +++ b/src/d/msg/d_msg_scrn_item.cpp @@ -3,7 +3,7 @@ // Translation Unit: msg/scrn/d_msg_scrn_item // -#include "msg/scrn/d_msg_scrn_item.h" +#include "d/msg/d_msg_scrn_item.h" #include "dol2asm.h" // diff --git a/src/msg/scrn/d_msg_scrn_jimaku.cpp b/src/d/msg/d_msg_scrn_jimaku.cpp similarity index 99% rename from src/msg/scrn/d_msg_scrn_jimaku.cpp rename to src/d/msg/d_msg_scrn_jimaku.cpp index c51bf98ec2f..7528519e195 100644 --- a/src/msg/scrn/d_msg_scrn_jimaku.cpp +++ b/src/d/msg/d_msg_scrn_jimaku.cpp @@ -3,7 +3,7 @@ // Translation Unit: msg/scrn/d_msg_scrn_jimaku // -#include "msg/scrn/d_msg_scrn_jimaku.h" +#include "d/msg/d_msg_scrn_jimaku.h" #include "dol2asm.h" // diff --git a/src/msg/scrn/d_msg_scrn_kanban.cpp b/src/d/msg/d_msg_scrn_kanban.cpp similarity index 80% rename from src/msg/scrn/d_msg_scrn_kanban.cpp rename to src/d/msg/d_msg_scrn_kanban.cpp index b6c6156f70c..123479d29b0 100644 --- a/src/msg/scrn/d_msg_scrn_kanban.cpp +++ b/src/d/msg/d_msg_scrn_kanban.cpp @@ -2,84 +2,90 @@ // d_msg_scrn_kanban // -#include "msg/scrn/d_msg_scrn_kanban.h" +#include "d/msg/d_msg_scrn_kanban.h" +#include "JSystem/J2DGraph/J2DAnmLoader.h" +#include "JSystem/J2DGraph/J2DGrafContext.h" +#include "JSystem/J2DGraph/J2DScreen.h" +#include "JSystem/J2DGraph/J2DTextBox.h" +#include "JSystem/JKernel/JKRArchive.h" #include "JSystem/JKernel/JKRExpHeap.h" #include "JSystem/JKernel/JKRFileLoader.h" -#include "JSystem/JKernel/JKRArchive.h" -#include "JSystem/J2DGraph/J2DScreen.h" -#include "JSystem/J2DGraph/J2DAnmLoader.h" -#include "JSystem/J2DGraph/J2DTextBox.h" -#include "JSystem/J2DGraph/J2DGrafContext.h" -#include "d/pane/d_pane_class.h" #include "d/com/d_com_inf_game.h" #include "d/msg/d_msg_object.h" #include "d/msg/d_msg_out_font.h" - -// -// External References: -// +#include "d/pane/d_pane_class.h" extern dMsgObject_HIO_c g_MsgObject_HIO_c; -/* ############################################################################################## */ -/* 80399AA0-80399AB8 026100 0018+00 1/1 0/0 0/0 .rodata t_tag$3768 */ -static u64 const t_tag[3] = { - 'mg_e4lin', - 'f4_w', - 't4_s', -}; - /* 80244E38-8024534C 23F778 0514+00 0/0 1/1 0/0 .text __ct__16dMsgScrnKanban_cFP10JKRExpHeap */ dMsgScrnKanban_c::dMsgScrnKanban_c(JKRExpHeap* param_0) { + static u64 const t_tag[3] = {'mg_e4lin', 'f4_w', 't4_s'}; + if (param_0 != NULL) { field_0xd4 = param_0; } else { field_0xd4 = dComIfGp_getSubHeap2D(7); } + s32 uVar14 = field_0xd4->getTotalFreeSize(); init(); + mpScreen = new J2DScreen(); JUT_ASSERT(43, mpScreen != 0); - bool fg = mpScreen->setPriority("zelda_kanban_stone_a.blo", 0x1020000, dComIfGp_getMsgArchive(2)); + bool fg = + mpScreen->setPriority("zelda_kanban_stone_a.blo", 0x1020000, dComIfGp_getMsgArchive(2)); JUT_ASSERT(45, fg != false); dPaneClass_showNullPane(mpScreen); + OSInitFastCast(); - field_0xcc = (J2DAnmTransform*)J2DAnmLoaderDataBase::load(JKRGetNameResource("zelda_kanban_stone_a.bck", dComIfGp_getMsgArchive(2))); - field_0xd0 = (J2DAnmTextureSRTKey*)J2DAnmLoaderDataBase::load(JKRGetNameResource("zelda_kanban_stone_a.btk", dComIfGp_getMsgArchive(2))); + + field_0xcc = (J2DAnmTransform*)J2DAnmLoaderDataBase::load( + JKRGetNameResource("zelda_kanban_stone_a.bck", dComIfGp_getMsgArchive(2))); + field_0xd0 = (J2DAnmTextureSRTKey*)J2DAnmLoaderDataBase::load( + JKRGetNameResource("zelda_kanban_stone_a.btk", dComIfGp_getMsgArchive(2))); field_0xd0->searchUpdateMaterialID(mpScreen); field_0xd8 = 0.0f; + mpPmp_c = new CPaneMgr(mpScreen, 'n_size', 2, NULL); JUT_ASSERT(60, mpPmp_c != 0); mpPmp_c->getPanePtr()->setAnimation(field_0xcc); + field_0xcc->setFrame(1.0f); mpPmp_c->getPanePtr()->animationTransform(); mpPmp_c->getPanePtr()->setAnimation((J2DAnmTransform*)NULL); mpPmp_c->scale(g_MsgObject_HIO_c.mBoxStoneScaleX, g_MsgObject_HIO_c.mBoxStoneScaleY); + mpBack_c = new CPaneMgr(mpScreen, 'back_b', 0, NULL); JUT_ASSERT(68, mpBack_c != 0); + mpSpot_c = new CPaneMgr(mpScreen, 'spot00', 0, NULL); JUT_ASSERT(72, mpSpot_c != 0); + mpSpot_c->getPanePtr()->setAnimation(field_0xd0); for (int i = 0; i < 3; i++) { mpTm_c[i] = new CPaneMgr(mpScreen, t_tag[i], 0, NULL); JUT_ASSERT(81, mpTm_c[i] != 0); ((J2DTextBox*)mpTm_c[i]->getPanePtr())->setFont(mDoExt_getMesgFont()); } + mpScreen->search('n_3line')->hide(); mpScreen->search('n_3fline')->hide(); mpScreen->search('n_e4line')->show(); - ((J2DTextBox*) mpTm_c[0]->getPanePtr())->getFontSize(mFontSize); - mTBoxWidth = mpTm_c[0]->getSizeX(); - mTBoxHeight = mpTm_c[0]->getSizeY(); + + ((J2DTextBox*)mpTm_c[0]->getPanePtr())->getFontSize(mFontSize); + mTBoxWidth = mpTm_c[0]->getSizeX(); + mTBoxHeight = mpTm_c[0]->getSizeY(); mLineSpace = ((J2DTextBox*)mpTm_c[0]->getPanePtr())->getLineSpace(); mCharSpace = ((J2DTextBox*)mpTm_c[0]->getPanePtr())->getCharSpace(); for (int i = 0; i < 3; i = i + 1) { ((J2DTextBox*)mpTm_c[i]->getPanePtr())->setLineSpace(mLineSpace); - mpTm_c[i]->resize(1.2f * mpTm_c[i]->getSizeX(), mpTm_c[i]->getSizeY()); + mpTm_c[i]->resize(1.2f * mpTm_c[i]->getSizeX(), mpTm_c[i]->getSizeY()); } + mTextBoxPosX = mpTm_c[0]->getGlobalPosX(); mTextBoxPosY = mpTm_c[0]->CPaneMgr::getGlobalPosY(); mTextBoxPosOffsetY = 0.0f; + for (int i = 0; i < 3; i++) { if (mpTmr_c[i] != NULL) { ((J2DTextBox*)mpTmr_c[i]->getPanePtr())->setLineSpace(mLineSpace); @@ -89,10 +95,10 @@ dMsgScrnKanban_c::dMsgScrnKanban_c(JKRExpHeap* param_0) { mRubySize = fontSize.mSizeX; mRubyCharSpace = ((J2DTextBox*)mpTmr_c[0]->getPanePtr())->getCharSpace(); } - mpTmr_c[i]->resize(1.2f * mpTmr_c[i]->getSizeX(), - mpTmr_c[i]->getSizeY()); + mpTmr_c[i]->resize(1.2f * mpTmr_c[i]->getSizeX(), mpTmr_c[i]->getSizeY()); } } + OS_REPORT("remain ===> %d\n", uVar14 - field_0xd4->getTotalFreeSize()); } @@ -100,14 +106,19 @@ dMsgScrnKanban_c::dMsgScrnKanban_c(JKRExpHeap* param_0) { dMsgScrnKanban_c::~dMsgScrnKanban_c() { delete mpScreen; mpScreen = NULL; + delete field_0xcc; field_0xcc = NULL; + delete field_0xd0; field_0xd0 = NULL; + delete mpPmp_c; mpPmp_c = NULL; + delete mpBack_c; mpBack_c = NULL; + delete mpSpot_c; mpSpot_c = NULL; @@ -119,6 +130,7 @@ dMsgScrnKanban_c::~dMsgScrnKanban_c() { mpTmr_c[i] = NULL; } } + dComIfGp_getMsgArchive(2)->removeResourceAll(); } @@ -128,11 +140,14 @@ void dMsgScrnKanban_c::exec() { if (field_0xd8 >= field_0xd0->getFrameMax()) { field_0xd8 -= field_0xd0->getFrameMax(); } + field_0xd0->setFrame(field_0xd8); mpScreen->animation(); + if (isTalkNow()) { fukiAlpha(1.0f); } + mpPmp_c->scale(g_MsgObject_HIO_c.mBoxStoneScaleX, g_MsgObject_HIO_c.mBoxStoneScaleY); } @@ -149,6 +164,7 @@ void dMsgScrnKanban_c::fukiAlpha(f32 param_0) { mpBack_c->setAlphaRate(param_0); mpPmp_c->setAlphaRate(param_0 * g_MsgObject_HIO_c.mBoxStoneAlphaP); mpSpot_c->setAlphaRate(param_0); + for (int i = 0; i < 3; i++) { mpTm_c[i]->setAlphaRate(param_0 * mCharAlphaRate); if (mpTmr_c[i] != NULL) { @@ -157,13 +173,7 @@ void dMsgScrnKanban_c::fukiAlpha(f32 param_0) { } } /* 80245754-80245758 240094 0004+00 1/0 0/0 0/0 .text fukiScale__16dMsgScrnKanban_cFf */ -void dMsgScrnKanban_c::fukiScale(f32 param_0) { - /* empty function */ -} +void dMsgScrnKanban_c::fukiScale(f32 param_0) {} /* 80245758-8024575C 240098 0004+00 1/0 0/0 0/0 .text fukiTrans__16dMsgScrnKanban_cFff */ -void dMsgScrnKanban_c::fukiTrans(f32 param_0, f32 param_1) { - /* empty function */ -} - -/* 80399AB8-80399AB8 026118 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ +void dMsgScrnKanban_c::fukiTrans(f32 param_0, f32 param_1) {} diff --git a/src/d/msg/d_msg_scrn_light.cpp b/src/d/msg/d_msg_scrn_light.cpp new file mode 100644 index 00000000000..945d3f3a939 --- /dev/null +++ b/src/d/msg/d_msg_scrn_light.cpp @@ -0,0 +1,286 @@ +#include "d/msg/d_msg_scrn_light.h" +#include "JSystem/J2DGraph/J2DAnmLoader.h" +#include "JSystem/J2DGraph/J2DGrafContext.h" +#include "JSystem/J2DGraph/J2DScreen.h" +#include "d/com/d_com_inf_game.h" +#include "d/pane/d_pane_class.h" + +class dMsgScrnLight_HIO_c { +public: + /* 8024575C */ dMsgScrnLight_HIO_c(); + /* 802457C4 */ void updateColor(u8); + /* 80246348 */ virtual ~dMsgScrnLight_HIO_c() {} + + enum { + COLOR_DEFAULT_e, + COLOR_RED_e, + COLOR_GREEN_e, + COLOR_BLUE_e, + COLOR_YELLOW_e, + COLOR_LIGHT_BLUE_e, + COLOR_PURPLE_e, + COLOR_GREY_e, + COLOR_ORANGE_e, + COLOR_MAX_e, + }; + + /* 0x04 */ s8 field_0x04; + /* 0x05 */ bool mDebugON; + /* 0x06 */ u8 mBlackR[COLOR_MAX_e]; + /* 0x0F */ u8 mWhiteR[COLOR_MAX_e]; + /* 0x18 */ u8 mBlackG[COLOR_MAX_e]; + /* 0x21 */ u8 mWhiteG[COLOR_MAX_e]; + /* 0x2A */ u8 mBlackB[COLOR_MAX_e]; + /* 0x33 */ u8 mWhiteB[COLOR_MAX_e]; + /* 0x3C */ u8 mBlackA[COLOR_MAX_e]; + /* 0x45 */ u8 mWhiteA[COLOR_MAX_e]; +}; + +/* 8024575C-802457C4 24009C 0068+00 1/1 0/0 0/0 .text __ct__19dMsgScrnLight_HIO_cFv */ +dMsgScrnLight_HIO_c::dMsgScrnLight_HIO_c() { + mDebugON = false; + + for (int i = 0; i < COLOR_MAX_e; i++) { + mBlackR[i] = 160; + mBlackG[i] = 135; + mBlackB[i] = 20; + mBlackA[i] = 0; + + mWhiteR[i] = 225; + mWhiteG[i] = 210; + mWhiteB[i] = 110; + mWhiteA[i] = 210; + } +} + +/* 802457C4-80245934 240104 0170+00 1/1 0/0 0/0 .text updateColor__19dMsgScrnLight_HIO_cFUc */ +void dMsgScrnLight_HIO_c::updateColor(u8 i_colorType) { + switch (i_colorType) { + case 0: + for (int i = 0; i < COLOR_MAX_e; i++) { + mBlackR[i] = 160; + mBlackG[i] = 135; + mBlackB[i] = 20; + mBlackA[i] = 0; + + mWhiteR[i] = 225; + mWhiteG[i] = 210; + mWhiteB[i] = 110; + mWhiteA[i] = 160; + } + break; + case 2: + for (int i = 0; i < COLOR_MAX_e; i++) { + mBlackR[i] = 255; + mBlackG[i] = 250; + mBlackB[i] = 150; + mBlackA[i] = 0; + + mWhiteR[i] = 255; + mWhiteG[i] = 255; + mWhiteB[i] = 110; + mWhiteA[i] = 210; + } + break; + case 1: + for (int i = 0; i < COLOR_MAX_e; i++) { + mBlackR[i] = 40; + mBlackG[i] = 110; + mBlackB[i] = 180; + mBlackA[i] = 0; + + mWhiteR[i] = 40; + mWhiteG[i] = 110; + mWhiteB[i] = 180; + mWhiteA[i] = 120; + } + break; + case 4: + for (int i = 0; i < COLOR_MAX_e; i++) { + mBlackR[i] = 70; + mBlackG[i] = 150; + mBlackB[i] = 0; + mBlackA[i] = 0; + + mWhiteR[i] = 70; + mWhiteG[i] = 150; + mWhiteB[i] = 0; + mWhiteA[i] = 150; + } + break; + } +} + +/* 804306D4-80430728 05D3F4 0050+04 3/3 0/0 0/0 .bss g_MsgScrnLight_HIO_c */ +static dMsgScrnLight_HIO_c g_MsgScrnLight_HIO_c; + +static u8 l_lightCount; + +/* 80245934-80245B00 240274 01CC+00 0/0 4/4 1/1 .text __ct__15dMsgScrnLight_cFUcUc */ +dMsgScrnLight_c::dMsgScrnLight_c(u8 i_colorType, u8 param_1) { + mColorType = i_colorType; + field_0x21 = param_1; + + if (l_lightCount == 0) { + g_MsgScrnLight_HIO_c.field_0x04 = -1; + } + l_lightCount++; + + g_MsgScrnLight_HIO_c.updateColor(i_colorType); + + mpScreen = new J2DScreen(); + JUT_ASSERT(mpScreen != 0); + bool fg = mpScreen->setPriority("zelda_message_window_text_light.blo", 0x20000, + dComIfGp_getMain2DArchive()); + JUT_ASSERT(fg != false); + dPaneClass_showNullPane(mpScreen); + + OSInitFastCast(); + mpBck = (J2DAnmTransform*)J2DAnmLoaderDataBase::load( + JKRGetNameResource("zelda_message_window_text_light.bck", dComIfGp_getMain2DArchive())); + mBckFrame = 0.0f; + + mpBpk = (J2DAnmColorKey*)J2DAnmLoaderDataBase::load( + JKRGetNameResource("zelda_message_window_text_light.bpk", dComIfGp_getMain2DArchive())); + mpBpk->searchUpdateMaterialID(mpScreen); + mBpkFrame = 0.0f; + + mpParent_c = new CPaneMgr(mpScreen, 'moya00', 0, NULL); + JUT_ASSERT(mpParent_c != 0); + + mpParent_c->getPanePtr()->setAnimation(mpBck); + mpParent_c->getPanePtr()->setAnimation(mpBpk); + mPlayAnim = true; + mAlpha = 0.0f; +} + +/* 80245B00-80245C04 240440 0104+00 1/0 0/0 0/0 .text __dt__15dMsgScrnLight_cFv */ +dMsgScrnLight_c::~dMsgScrnLight_c() { + l_lightCount--; + + delete mpScreen; + mpScreen = NULL; + + delete mpBck; + mpBck = NULL; + + delete mpBpk; + mpBpk = NULL; + + delete mpParent_c; + mpParent_c = NULL; +} + +/* 80245C04-80245F90 240544 038C+00 0/0 2/2 0/0 .text draw__15dMsgScrnLight_cFPffffffUc + */ +void dMsgScrnLight_c::draw(f32* i_anmFrame, f32 i_posX, f32 i_posY, f32 i_scaleX, f32 i_scaleY, + f32 i_alpha, u8 i_colorType) { + if (g_MsgScrnLight_HIO_c.mDebugON) { + if (i_colorType < dMsgScrnLight_HIO_c::COLOR_MAX_e) { + mpParent_c->setBlackWhite(JUtility::TColor(g_MsgScrnLight_HIO_c.mBlackR[i_colorType], + g_MsgScrnLight_HIO_c.mBlackG[i_colorType], + g_MsgScrnLight_HIO_c.mBlackB[i_colorType], + g_MsgScrnLight_HIO_c.mBlackA[i_colorType]), + JUtility::TColor(g_MsgScrnLight_HIO_c.mWhiteR[i_colorType], + g_MsgScrnLight_HIO_c.mWhiteG[i_colorType], + g_MsgScrnLight_HIO_c.mWhiteB[i_colorType], + g_MsgScrnLight_HIO_c.mWhiteA[i_colorType])); + } else { + mpParent_c->setBlackWhite(mpParent_c->getInitBlack(), mpParent_c->getInitWhite()); + } + } else { + if (mColorType == 0) { + mpParent_c->setBlackWhite(JUtility::TColor(160, 135, 20, 0), + JUtility::TColor(225, 210, 110, 160)); + } else if (mColorType == 2) { + mpParent_c->setBlackWhite(JUtility::TColor(255, 255, 150, 0), + JUtility::TColor(255, 255, 110, 210)); + } else if (mColorType == 1) { + mpParent_c->setBlackWhite(JUtility::TColor(40, 110, 180, 0), + JUtility::TColor(40, 110, 180, 120)); + } else if (mColorType == 4) { + mpParent_c->setBlackWhite(JUtility::TColor(70, 150, 0, 0), + JUtility::TColor(70, 150, 0, 150)); + } else { + mpParent_c->setBlackWhite(mpParent_c->getInitBlack(), mpParent_c->getInitWhite()); + } + } + + if (mPlayAnim) { + *i_anmFrame += 1.0f; + if (*i_anmFrame >= mpBck->getFrameMax()) { + *i_anmFrame = 0.0f; + } + + mBckFrame = *i_anmFrame; + mBpkFrame = *i_anmFrame; + } + + drawCommon(i_posX, i_posY, i_scaleX, i_scaleY, i_alpha); +} + +/* 80245F90-802460DC 2408D0 014C+00 0/0 1/1 1/1 .text + * draw__15dMsgScrnLight_cFPfffffffQ28JUtility6TColorQ28JUtility6TColor */ +void dMsgScrnLight_c::draw(f32* i_anmFrame, f32 i_posX, f32 i_posY, f32 i_scaleX, f32 i_scaleY, + f32 i_alpha, f32 i_anmRate, JUtility::TColor i_black, + JUtility::TColor i_white) { + mpParent_c->setBlackWhite(i_black, i_white); + + if (mPlayAnim) { + *i_anmFrame += i_anmRate; + + if (*i_anmFrame >= mpBck->getFrameMax()) { + *i_anmFrame = 0.0f; + } + + mBckFrame = *i_anmFrame; + mBpkFrame = *i_anmFrame; + } + + drawCommon(i_posX, i_posY, i_scaleX, i_scaleY, i_alpha); +} + +/* 802460DC-80246348 240A1C 026C+00 2/2 0/0 0/0 .text drawCommon__15dMsgScrnLight_cFfffff + */ +void dMsgScrnLight_c::drawCommon(f32 i_posX, f32 i_posY, f32 i_scaleX, f32 i_scaleY, f32 i_alpha) { + J2DGrafContext* graf_ctx = dComIfGp_getCurrentGrafPort(); + graf_ctx->setup2D(); + + f32 alpha_rate = mpParent_c->getAlphaRate(); + + if (((field_0x21 == 3 || field_0x21 == 5) && i_alpha < mAlpha) || + (field_0x21 != 3 && field_0x21 != 5 && i_alpha != 1.0f)) + { + if (mPlayAnim) { + mpParent_c->getPanePtr()->setAnimation((J2DAnmTransform*)NULL); + mpParent_c->getPanePtr()->setAnimation((J2DAnmColorKey*)NULL); + mPlayAnim = false; + } + + mpParent_c->setAlphaRate(alpha_rate * i_alpha); + } else if (!mPlayAnim) { + mpParent_c->getPanePtr()->setAnimation(mpBck); + mpParent_c->getPanePtr()->setAnimation(mpBpk); + mPlayAnim = true; + } + + if (mPlayAnim) { + mpBck->setFrame(mBckFrame); + mpBpk->setFrame(mBpkFrame); + mpParent_c->getPanePtr()->animationTransform(); + mpScreen->animation(); + } + + mpParent_c->translate(i_posX, i_posY); + + f32 init_scale_x = mpParent_c->getInitScaleX(); + f32 init_scale_y = mpParent_c->getInitScaleY(); + mpParent_c->scale(init_scale_x * i_scaleX, init_scale_y * i_scaleY); + mpScreen->draw(0.0f, 0.0f, graf_ctx); + + if (i_alpha != 1.0f) { + mpParent_c->setAlphaRate(alpha_rate); + } + + mAlpha = i_alpha; +} diff --git a/src/msg/scrn/d_msg_scrn_place.cpp b/src/d/msg/d_msg_scrn_place.cpp similarity index 95% rename from src/msg/scrn/d_msg_scrn_place.cpp rename to src/d/msg/d_msg_scrn_place.cpp index fa3b5df2bd6..678d589a0e4 100644 --- a/src/msg/scrn/d_msg_scrn_place.cpp +++ b/src/d/msg/d_msg_scrn_place.cpp @@ -3,7 +3,7 @@ * */ -#include "msg/scrn/d_msg_scrn_place.h" +#include "d/msg/d_msg_scrn_place.h" #include "JSystem/J2DGraph/J2DGrafContext.h" #include "JSystem/J2DGraph/J2DScreen.h" #include "d/msg/d_msg_object.h" @@ -128,16 +128,10 @@ void dMsgScrnPlace_c::fukiAlpha(f32 i_rate) { } /* 80246B28-80246B2C 241468 0004+00 1/0 0/0 0/0 .text fukiScale__15dMsgScrnPlace_cFf */ -void dMsgScrnPlace_c::fukiScale(f32) { - /* empty function */ -} +void dMsgScrnPlace_c::fukiScale(f32) {} /* 80246B2C-80246B30 24146C 0004+00 1/0 0/0 0/0 .text fukiTrans__15dMsgScrnPlace_cFff */ -void dMsgScrnPlace_c::fukiTrans(f32, f32) { - /* empty function */ -} +void dMsgScrnPlace_c::fukiTrans(f32, f32) {} /* 80246B30-80246B34 241470 0004+00 1/0 0/0 0/0 .text fontAlpha__15dMsgScrnPlace_cFf */ -void dMsgScrnPlace_c::fontAlpha(f32) { - /* empty function */ -} +void dMsgScrnPlace_c::fontAlpha(f32) {} diff --git a/src/msg/scrn/d_msg_scrn_staff.cpp b/src/d/msg/d_msg_scrn_staff.cpp similarity index 90% rename from src/msg/scrn/d_msg_scrn_staff.cpp rename to src/d/msg/d_msg_scrn_staff.cpp index b84c880ddde..c60a413fcf3 100644 --- a/src/msg/scrn/d_msg_scrn_staff.cpp +++ b/src/d/msg/d_msg_scrn_staff.cpp @@ -1,9 +1,9 @@ /** * d_msg_scrn_staff.cpp - * -*/ + * + */ -#include "msg/scrn/d_msg_scrn_staff.h" +#include "d/msg/d_msg_scrn_staff.h" #include "JSystem/J2DGraph/J2DGrafContext.h" #include "JSystem/J2DGraph/J2DScreen.h" #include "d/msg/d_msg_object.h" @@ -17,7 +17,7 @@ static u64 t_tag[6] = { }; /* 80246B34-80246DD8 241474 02A4+00 0/0 1/1 0/0 .text __ct__15dMsgScrnStaff_cFUc */ -dMsgScrnStaff_c::dMsgScrnStaff_c(u8 param_0) { +dMsgScrnStaff_c::dMsgScrnStaff_c(u8 unused) { init(); field_0xd0 = 0.0f; @@ -90,16 +90,10 @@ void dMsgScrnStaff_c::fukiAlpha(f32 i_rate) { } /* 80246FE4-80246FE8 241924 0004+00 1/0 0/0 0/0 .text fukiScale__15dMsgScrnStaff_cFf */ -void dMsgScrnStaff_c::fukiScale(f32 param_0) { - /* empty function */ -} +void dMsgScrnStaff_c::fukiScale(f32 param_0) {} /* 80246FE8-80246FEC 241928 0004+00 1/0 0/0 0/0 .text fukiTrans__15dMsgScrnStaff_cFff */ -void dMsgScrnStaff_c::fukiTrans(f32 param_0, f32 param_1) { - /* empty function */ -} +void dMsgScrnStaff_c::fukiTrans(f32 param_0, f32 param_1) {} /* 80246FEC-80246FF0 24192C 0004+00 1/0 0/0 0/0 .text fontAlpha__15dMsgScrnStaff_cFf */ -void dMsgScrnStaff_c::fontAlpha(f32 param_0) { - /* empty function */ -} \ No newline at end of file +void dMsgScrnStaff_c::fontAlpha(f32 param_0) {} \ No newline at end of file diff --git a/src/msg/scrn/d_msg_scrn_talk.cpp b/src/d/msg/d_msg_scrn_talk.cpp similarity index 99% rename from src/msg/scrn/d_msg_scrn_talk.cpp rename to src/d/msg/d_msg_scrn_talk.cpp index 3ae00dba421..54afb485c0d 100644 --- a/src/msg/scrn/d_msg_scrn_talk.cpp +++ b/src/d/msg/d_msg_scrn_talk.cpp @@ -3,7 +3,7 @@ // Translation Unit: msg/scrn/d_msg_scrn_talk // -#include "msg/scrn/d_msg_scrn_talk.h" +#include "d/msg/d_msg_scrn_talk.h" #include "dol2asm.h" // diff --git a/src/msg/scrn/d_msg_scrn_tree.cpp b/src/d/msg/d_msg_scrn_tree.cpp similarity index 82% rename from src/msg/scrn/d_msg_scrn_tree.cpp rename to src/d/msg/d_msg_scrn_tree.cpp index da66ce3a043..ac30d64282f 100644 --- a/src/msg/scrn/d_msg_scrn_tree.cpp +++ b/src/d/msg/d_msg_scrn_tree.cpp @@ -1,38 +1,14 @@ -// -// Generated By: dol2asm -// Translation Unit: msg/scrn/d_msg_scrn_tree -// - -#include "msg/scrn/d_msg_scrn_tree.h" -#include "d/pane/d_pane_class.h" -#include "d/msg/d_msg_object.h" -#include "d/msg/d_msg_out_font.h" -#include "dolphin/os.h" -#include "JSystem/JKernel/JKRExpHeap.h" -#include "JSystem/J2DGraph/J2DScreen.h" +#include "d/msg/d_msg_scrn_tree.h" #include "JSystem/J2DGraph/J2DAnmLoader.h" #include "JSystem/J2DGraph/J2DGrafContext.h" - -// -// Types: -//; - -// -// Forward References: -// - -// -// External References: -// +#include "JSystem/J2DGraph/J2DScreen.h" +#include "JSystem/JKernel/JKRExpHeap.h" +#include "d/msg/d_msg_object.h" +#include "d/msg/d_msg_out_font.h" +#include "d/pane/d_pane_class.h" extern dMsgObject_HIO_c g_MsgObject_HIO_c; -// -// Declarations: -// - -/* ############################################################################################## */ - /* 80248954-80248F14 243294 05C0+00 0/0 1/1 0/0 .text * __ct__14dMsgScrnTree_cFP7JUTFontP10JKRExpHeap */ dMsgScrnTree_c::dMsgScrnTree_c(JUTFont* param_0, JKRExpHeap* param_1) { @@ -44,6 +20,7 @@ dMsgScrnTree_c::dMsgScrnTree_c(JUTFont* param_0, JKRExpHeap* param_1) { field_0xd8->getTotalFreeSize(); init(); + if (param_0 == NULL) { field_0x54 = mDoExt_getMesgFont(); } else { @@ -53,44 +30,56 @@ dMsgScrnTree_c::dMsgScrnTree_c(JUTFont* param_0, JKRExpHeap* param_1) { mpScreen = new J2DScreen(); mpScreen->setPriority("zelda_kanban_wood_a.blo", 0x1020000, dComIfGp_getMsgArchive(2)); dPaneClass_showNullPane(mpScreen); + OSInitFastCast(); - field_0xcc = (J2DAnmTransform*) J2DAnmLoaderDataBase::load(JKRGetNameResource("zelda_kanban_wood_a.bck", dComIfGp_getMsgArchive(2))); - field_0xd0 = (J2DAnmTextureSRTKey*) J2DAnmLoaderDataBase::load(JKRGetNameResource("zelda_kanban_wood_a.btk", dComIfGp_getMsgArchive(2))); + + field_0xcc = (J2DAnmTransform*)J2DAnmLoaderDataBase::load( + JKRGetNameResource("zelda_kanban_wood_a.bck", dComIfGp_getMsgArchive(2))); + + field_0xd0 = (J2DAnmTextureSRTKey*)J2DAnmLoaderDataBase::load( + JKRGetNameResource("zelda_kanban_wood_a.btk", dComIfGp_getMsgArchive(2))); field_0xd0->searchUpdateMaterialID(mpScreen); field_0xdc = 0.0f; - field_0xd4 = (J2DAnmTextureSRTKey*) J2DAnmLoaderDataBase::load(JKRGetNameResource("zelda_kanban_wood_a_02.btk", dComIfGp_getMsgArchive(2))); + + field_0xd4 = (J2DAnmTextureSRTKey*)J2DAnmLoaderDataBase::load( + JKRGetNameResource("zelda_kanban_wood_a_02.btk", dComIfGp_getMsgArchive(2))); field_0xd4->searchUpdateMaterialID(mpScreen); field_0xe0 = 0.0f; + mpPmp_c = new CPaneMgr(mpScreen, 'n_size', 2, NULL); mpPmp_c->getPanePtr()->setAnimation(field_0xcc); field_0xcc->setFrame(1.0f); mpPmp_c->getPanePtr()->animationTransform(); mpPmp_c->getPanePtr()->setAnimation((J2DAnmTransform*)NULL); mpPmp_c->scale(g_MsgObject_HIO_c.mBoxWoodScaleX, g_MsgObject_HIO_c.mBoxWoodScaleY); + field_0xc4 = new CPaneMgr(mpScreen, 'back_b', 0, NULL); field_0xc8 = new CPaneMgr(mpScreen, 'spot00', 0, NULL); field_0xc8->getPanePtr()->setAnimation(field_0xd0); + mpScreen->search('white_m')->setAnimation(field_0xd4); for (int i = 0; i < 3; i++) { - static u64 const t_tag[3] = { - 'mg_e4lin', 'f4_w', 't4_s' - }; + static u64 const t_tag[3] = {'mg_e4lin', 'f4_w', 't4_s'}; mpTm_c[i] = new CPaneMgr(mpScreen, t_tag[i], 0, NULL); ((J2DTextBox*)mpTm_c[i]->getPanePtr())->setFont(field_0x54); ((J2DTextBox*)mpTm_c[i]->getPanePtr())->setString(0x200, ""); } + mpScreen->search('n_3line')->hide(); mpScreen->search('n_3fline')->hide(); mpScreen->search('n_e4line')->show(); + ((J2DTextBox*)mpTm_c[0]->getPanePtr())->getFontSize(mFontSize); mTBoxWidth = mpTm_c[0]->getSizeX(); mTBoxHeight = mpTm_c[0]->getSizeY(); mLineSpace = ((J2DTextBox*)mpTm_c[0]->getPanePtr())->getLineSpace(); mCharSpace = ((J2DTextBox*)mpTm_c[0]->getPanePtr())->getCharSpace(); + for (int i = 0; i < 3; i++) { ((J2DTextBox*)mpTm_c[i]->getPanePtr())->setLineSpace(mLineSpace); mpTm_c[i]->resize(1.2f * mpTm_c[i]->getSizeX(), mpTm_c[i]->getSizeY()); } + mTextBoxPosX = mpTm_c[0]->getGlobalPosX(); mTextBoxPosY = mpTm_c[0]->getGlobalPosY(); mTextBoxPosOffsetY = 0.0f; @@ -113,31 +102,38 @@ dMsgScrnTree_c::dMsgScrnTree_c(JUTFont* param_0, JKRExpHeap* param_1) { dMsgScrnTree_c::~dMsgScrnTree_c() { delete mpScreen; mpScreen = NULL; + delete field_0xcc; field_0xcc = NULL; + delete field_0xd0; field_0xd0 = NULL; + delete field_0xd4; field_0xd4 = NULL; + delete mpPmp_c; mpPmp_c = NULL; + delete field_0xc4; field_0xc4 = NULL; + delete field_0xc8; field_0xc8 = NULL; + for (int i = 0; i < 3; i++) { delete mpTm_c[i]; mpTm_c[i] = NULL; + if (mpTmr_c[i]) { delete mpTmr_c[i]; mpTmr_c[i] = NULL; } } + dComIfGp_getMsgArchive(2)->removeResourceAll(); } -/* ############################################################################################## */ - /* 80249118-80249270 243A58 0158+00 1/0 0/0 0/0 .text exec__14dMsgScrnTree_cFv */ void dMsgScrnTree_c::exec() { field_0xdc += 1.0f; @@ -172,6 +168,7 @@ void dMsgScrnTree_c::fukiAlpha(f32 param_0) { field_0xc4->setAlphaRate(param_0); mpPmp_c->setAlphaRate(param_0 * g_MsgObject_HIO_c.mBoxWoodAlphaP); field_0xc8->setAlphaRate(param_0); + for (int i = 0; i < 3; i++) { mpTm_c[i]->setAlphaRate(param_0 * mCharAlphaRate); if (mpTmr_c[i] != 0) { @@ -181,13 +178,7 @@ void dMsgScrnTree_c::fukiAlpha(f32 param_0) { } /* 802493AC-802493B0 243CEC 0004+00 1/0 0/0 0/0 .text fukiScale__14dMsgScrnTree_cFf */ -void dMsgScrnTree_c::fukiScale(f32 param_0) { - /* empty function */ -} +void dMsgScrnTree_c::fukiScale(f32 param_0) {} /* 802493B0-802493B4 243CF0 0004+00 1/0 0/0 0/0 .text fukiTrans__14dMsgScrnTree_cFff */ -void dMsgScrnTree_c::fukiTrans(f32 param_0, f32 param_1) { - /* empty function */ -} - -/* 80399C30-80399C30 026290 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ +void dMsgScrnTree_c::fukiTrans(f32 param_0, f32 param_1) {} diff --git a/src/d/msg/d_msg_unit.cpp b/src/d/msg/d_msg_unit.cpp index c920f1afb74..1832949b2b7 100644 --- a/src/d/msg/d_msg_unit.cpp +++ b/src/d/msg/d_msg_unit.cpp @@ -163,10 +163,3 @@ asm void dMsgUnit_c::setTag(int param_0, int param_1, char* param_2, bool param_ /* 804510D0-804510D8 0005D0 0004+04 1/1 5/5 0/0 .sbss g_msg_unit */ dMsgUnit_c g_msg_unit; - -/* ############################################################################################## */ -/* 804510D8-804510E0 0005D8 0008+00 0/0 2/2 0/0 .sbss None */ -extern u8 data_804510D8[8]; -u8 data_804510D8[8] ALIGN_DECL(8); - -/* 803996E8-803996E8 025D48 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/msg/scrn/d_msg_scrn_arrow.cpp b/src/msg/scrn/d_msg_scrn_arrow.cpp deleted file mode 100644 index e6111c62479..00000000000 --- a/src/msg/scrn/d_msg_scrn_arrow.cpp +++ /dev/null @@ -1,127 +0,0 @@ -// Translation Unit: msg/scrn/d_msg_scrn_arrow - -#include "msg/scrn/d_msg_scrn_arrow.h" -#include "JSystem/J2DGraph/J2DAnmLoader.h" -#include "JSystem/J2DGraph/J2DScreen.h" -#include "d/com/d_com_inf_game.h" -#include "d/pane/d_pane_class.h" -#include "dolphin/os.h" -#include "dolphin/types.h" - -/* 8023B9B4-8023BC78 2362F4 02C4+00 0/0 4/4 0/0 .text __ct__15dMsgScrnArrow_cFv */ -dMsgScrnArrow_c::dMsgScrnArrow_c() { - mScreen = new J2DScreen(); - mScreen->setPriority("zelda_window_yajirushi.blo", 0x20000, dComIfGp_getMsgArchive(0)); - dPaneClass_showNullPane(mScreen); - OSInitFastCast(); - - mAnmBck = (J2DAnmTransform*)J2DAnmLoaderDataBase::load( - JKRFileLoader::getGlbResource("zelda_window_yajirushi.bck", dComIfGp_getMsgArchive(0))); - mBckFrame = 0.0f; - - mAnmBpk = (J2DAnmColor*)J2DAnmLoaderDataBase::load( - JKRFileLoader::getGlbResource("zelda_window_yajirushi.bpk", dComIfGp_getMsgArchive(0))); - mAnmBpk->searchUpdateMaterialID(mScreen); - mBpkFrame = 0.0f; - - mPaneMgr0 = new CPaneMgr(mScreen, 'set_ya_n', 0, NULL); - mPaneMgr1 = new CPaneMgr(mScreen, 'ya_next', 0, NULL); - mPaneMgr1->hide(); - mPaneMgr1->mPane->setAnimation(mAnmBck); - mScreen->search('yajnext')->setAnimation(mAnmBpk); - mScreen->search('yajinexl')->setAnimation(mAnmBpk); - - mPaneMgr2 = new CPaneMgr(mScreen, 'ya_end', 0, NULL); - mPaneMgr2->hide(); - mScreen->search('yaj_end')->setAnimation(mAnmBpk); - mScreen->search('yajiendl')->setAnimation(mAnmBpk); -} - -/* 8023BC78-8023BDC0 2365B8 0148+00 1/0 0/0 0/0 .text __dt__15dMsgScrnArrow_cFv */ -dMsgScrnArrow_c::~dMsgScrnArrow_c() { - delete mScreen; - mScreen = NULL; - - delete mAnmBck; - mAnmBck = NULL; - - delete mAnmBpk; - mAnmBpk = NULL; - - delete mPaneMgr0; - mPaneMgr0 = NULL; - - delete mPaneMgr1; - mPaneMgr1 = NULL; - - delete mPaneMgr2; - mPaneMgr2 = NULL; -} - -/* 8023BDC0-8023BDF8 236700 0038+00 0/0 5/5 0/0 .text draw__15dMsgScrnArrow_cFv */ -void dMsgScrnArrow_c::draw() { - J2DGrafContext* ctx = dComIfGp_getCurrentGrafPort(); - mScreen->draw(0.0f, 0.0f, ctx); -} - -/* 8023BDF8-8023BE34 236738 003C+00 0/0 5/5 0/0 .text setPos__15dMsgScrnArrow_cFff */ -void dMsgScrnArrow_c::setPos(f32 x, f32 y) { - mPaneMgr0->translate(x, y); -} - -/* 8023BE34-8023BE90 236774 005C+00 0/0 9/9 0/0 .text arwAnimeInit__15dMsgScrnArrow_cFv */ -void dMsgScrnArrow_c::arwAnimeInit() { - mPaneMgr1->hide(); - mBckFrame = 0.0f; - mAnmBck->setFrame(mBckFrame); - mBpkFrame = 0.0f; - mAnmBpk->setFrame(mBpkFrame); - mScreen->animation(); -} - -/* 8023BE90-8023BFC4 2367D0 0134+00 0/0 4/4 0/0 .text arwAnimeMove__15dMsgScrnArrow_cFv */ -void dMsgScrnArrow_c::arwAnimeMove() { - if (!mPaneMgr1->isVisible()) { - mPaneMgr1->show(); - } - if (mPaneMgr2->isVisible() == true) { - mPaneMgr2->hide(); - } - mBckFrame += 1.0f; - if (mBckFrame >= (f32)mAnmBck->getFrameMax()) { - mBckFrame -= (f32)mAnmBck->getFrameMax(); - } - mAnmBck->setFrame(mBckFrame); - mBpkFrame += 1.0f; - if (mBpkFrame >= (f32)mAnmBpk->getFrameMax()) { - mBpkFrame -= (f32)mAnmBpk->getFrameMax(); - } - mAnmBpk->setFrame(mBpkFrame); - mScreen->animation(); -} - -/* 8023BFC4-8023C010 236904 004C+00 0/0 3/3 0/0 .text dotAnimeInit__15dMsgScrnArrow_cFv */ -void dMsgScrnArrow_c::dotAnimeInit() { - mPaneMgr2->hide(); - mBpkFrame = 0.0f; - mAnmBpk->setFrame(mBpkFrame); - mScreen->animation(); -} - -/* 8023C010-8023C0DC 236950 00CC+00 0/0 3/3 0/0 .text dotAnimeMove__15dMsgScrnArrow_cFv */ -void dMsgScrnArrow_c::dotAnimeMove() { - if (mPaneMgr1->isVisible() == true) { - mPaneMgr1->hide(); - } - if (!mPaneMgr2->isVisible()) { - mPaneMgr2->show(); - } - mBpkFrame += 1.0f; - if (mBpkFrame >= (f32)mAnmBpk->getFrameMax()) { - mBpkFrame -= (f32)mAnmBpk->getFrameMax(); - } - mAnmBpk->setFrame(mBpkFrame); - mScreen->animation(); -} - -/* 803998A0-803998A0 025F00 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ diff --git a/src/msg/scrn/d_msg_scrn_light.cpp b/src/msg/scrn/d_msg_scrn_light.cpp deleted file mode 100644 index d2a818683a2..00000000000 --- a/src/msg/scrn/d_msg_scrn_light.cpp +++ /dev/null @@ -1,234 +0,0 @@ -// -// d_msg_scrn_light -// - -#include "msg/scrn/d_msg_scrn_light.h" -#include "JSystem/JKernel/JKRFileLoader.h" -#include "JSystem/JKernel/JKRExpHeap.h" -#include "JSystem/JKernel/JKRArchive.h" -#include "JSystem/J2DGraph/J2DGrafContext.h" -#include "JSystem/J2DGraph/J2DScreen.h" -#include "JSystem/J2DGraph/J2DAnmLoader.h" -#include "d/pane/d_pane_class.h" -#include "d/com/d_com_inf_game.h" - -extern u8 data_804510D8[8]; - -/* 8024575C-802457C4 24009C 0068+00 1/1 0/0 0/0 .text __ct__19dMsgScrnLight_HIO_cFv */ -dMsgScrnLight_HIO_c::dMsgScrnLight_HIO_c() { - field_0x5 = 0; - for (int i = 0; i < 9; i++) { - field_0x6[i] = 0xa0; - field_0x18[i] = 0x87; - field_0x2a[i] = 0x14; - field_0x3c[i] = 0x0; - field_0xf[i] = 0xe1; - field_0x21[i] = 0xd2; - field_0x33[i] = 0x6e; - field_0x45[i] = 0xd2; - } -} - -/* 802457C4-80245934 240104 0170+00 1/1 0/0 0/0 .text updateColor__19dMsgScrnLight_HIO_cFUc */ -void dMsgScrnLight_HIO_c::updateColor(u8 param_0) { - switch(param_0) { - case 0: - for (int i = 0; i < 9; i++) { - field_0x6[i] = 0xa0; - field_0x18[i] = 0x87; - field_0x2a[i] = 0x14; - field_0x3c[i] = 0x0; - field_0xf[i] = 0xe1; - field_0x21[i] = 0xd2; - field_0x33[i] = 0x6e; - field_0x45[i] = 0xa0; - } - break; - case 2: - for (int i = 0; i < 9; i++) { - field_0x6[i] = 0xff; - field_0x18[i] = 0xfa; - field_0x2a[i] = 0x96; - field_0x3c[i] = 0x0; - field_0xf[i] = 0xff; - field_0x21[i] = 0xff; - field_0x33[i] = 0x6e; - field_0x45[i] = 0xd2; - } - break; - case 1: - for (int i = 0; i < 9; i++) { - field_0x6[i] = 0x28; - field_0x18[i] = 0x6e; - field_0x2a[i] = 0xb4; - field_0x3c[i] = 0x0; - field_0xf[i] = 0x28; - field_0x21[i] = 0x6e; - field_0x33[i] = 0xb4; - field_0x45[i] = 0x78; - } - break; - case 4: - for (int i = 0; i < 9; i++) { - field_0x6[i] = 0x46; - field_0x18[i] = 0x96; - field_0x2a[i] = 0x0; - field_0x3c[i] = 0x0; - field_0xf[i] = 0x46; - field_0x21[i] = 0x96; - field_0x33[i] = 0x0; - field_0x45[i] = 0x96; - } - break; - } -} - -/* 804306D4-80430728 05D3F4 0050+04 3/3 0/0 0/0 .bss g_MsgScrnLight_HIO_c */ -dMsgScrnLight_HIO_c g_MsgScrnLight_HIO_c; - -/* 80245934-80245B00 240274 01CC+00 0/0 4/4 1/1 .text __ct__15dMsgScrnLight_cFUcUc */ -dMsgScrnLight_c::dMsgScrnLight_c(u8 param_1, u8 param_2) { - field_0x20 = param_1; - field_0x21 = param_2; - if (data_804510D8[0] == 0) { - g_MsgScrnLight_HIO_c.field_0x4 = -1; - } - data_804510D8[0]++; - g_MsgScrnLight_HIO_c.updateColor(param_1); - mpScreen = new J2DScreen(); - JUT_ASSERT(250, mpScreen != 0); - bool fg = mpScreen->setPriority("zelda_message_window_text_light.blo", 0x20000, - dComIfGp_getMain2DArchive()); - JUT_ASSERT(254, fg != false); - dPaneClass_showNullPane(mpScreen); - OSInitFastCast(); - void* uVar7 = JKRGetNameResource("zelda_message_window_text_light.bck", dComIfGp_getMain2DArchive()); - field_0x8 = (J2DAnmTransform*)J2DAnmLoaderDataBase::load(uVar7); - field_0x14 = 0.0f; - uVar7 = JKRGetNameResource("zelda_message_window_text_light.bpk", dComIfGp_getMain2DArchive()); - field_0xc = (J2DAnmColor*)J2DAnmLoaderDataBase::load(uVar7); - field_0xc->searchUpdateMaterialID(mpScreen); - field_0x18 = 0.0f; - mpParent_c = new CPaneMgr(mpScreen, 'moya00', 0, NULL); - JUT_ASSERT(269, mpParent_c != 0); - mpParent_c->getPanePtr()->setAnimation(field_0x8); - mpParent_c->getPanePtr()->setAnimation(field_0xc); - field_0x22 = 1; - field_0x1c = 0.0f; -} - -/* 80245B00-80245C04 240440 0104+00 1/0 0/0 0/0 .text __dt__15dMsgScrnLight_cFv */ -dMsgScrnLight_c::~dMsgScrnLight_c() { - data_804510D8[0]--; - delete mpScreen; - mpScreen = NULL; - delete field_0x8; - field_0x8 = NULL; - delete field_0xc; - field_0xc = NULL; - delete mpParent_c; - mpParent_c = NULL; -} - -/* 80245C04-80245F90 240544 038C+00 0/0 2/2 0/0 .text draw__15dMsgScrnLight_cFPffffffUc - */ -void dMsgScrnLight_c::draw(f32* param_1, f32 param_2, f32 param_3, f32 param_4, f32 param_5, - f32 param_6, u8 param_7) { - if (g_MsgScrnLight_HIO_c.field_0x5 != 0) { - if (param_7 < 9) { - mpParent_c->setBlackWhite(JUtility::TColor(g_MsgScrnLight_HIO_c.field_0x6[param_7], - g_MsgScrnLight_HIO_c.field_0x18[param_7], - g_MsgScrnLight_HIO_c.field_0x2a[param_7], - g_MsgScrnLight_HIO_c.field_0x3c[param_7]), - JUtility::TColor(g_MsgScrnLight_HIO_c.field_0xf[param_7], - g_MsgScrnLight_HIO_c.field_0x21[param_7], - g_MsgScrnLight_HIO_c.field_0x33[param_7], - g_MsgScrnLight_HIO_c.field_0x45[param_7])); - } else { - mpParent_c->setBlackWhite(mpParent_c->getInitBlack(), mpParent_c->getInitWhite()); - } - } else { - if (field_0x20 == 0) { - mpParent_c->setBlackWhite(JUtility::TColor(0xa0, 0x87, 0x14, 0), - JUtility::TColor(0xe1, 0xd2, 0x6e, 0xa0)); - } else if (field_0x20 == 2) { - mpParent_c->setBlackWhite(JUtility::TColor(0xff, 0xff, 0x96, 0), - JUtility::TColor(0xff, 0xff, 0x6e, 0xd2)); - } else if (field_0x20 == 1) { - mpParent_c->setBlackWhite(JUtility::TColor(0x28, 0x6e, 0xb4, 0), - JUtility::TColor(0x28, 0x6e, 0xb4, 0x78)); - } else if (field_0x20 == 4) { - mpParent_c->setBlackWhite(JUtility::TColor(0x46, 0x96, 0, 0), - JUtility::TColor(0x46, 0x96, 0, 0x96)); - } else { - mpParent_c->setBlackWhite(mpParent_c->getInitBlack(), mpParent_c->getInitWhite()); - } - } - if (field_0x22 != 0) { - *param_1 += 1.0f; - if (*param_1 >= field_0x8->getFrameMax()) { - *param_1 = 0.0f; - } - field_0x14 = *param_1; - field_0x18 = *param_1; - } - drawCommon(param_2, param_3, param_4, param_5, param_6); -} - -/* 80245F90-802460DC 2408D0 014C+00 0/0 1/1 1/1 .text - * draw__15dMsgScrnLight_cFPfffffffQ28JUtility6TColorQ28JUtility6TColor */ -void dMsgScrnLight_c::draw(f32* param_1, f32 param_2, f32 param_3, f32 param_4, f32 param_5, - f32 param_6, f32 param_7, JUtility::TColor param_8, - JUtility::TColor param_9) { - mpParent_c->setBlackWhite(param_8, param_9); - if (field_0x22 != 0) { - *param_1 += param_7; - if (*param_1 >= field_0x8->getFrameMax()) { - *param_1 = 0.0f; - } - field_0x14 = *param_1; - field_0x18 = *param_1; - } - drawCommon(param_2, param_3, param_4, param_5, param_6); -} - -/* 802460DC-80246348 240A1C 026C+00 2/2 0/0 0/0 .text drawCommon__15dMsgScrnLight_cFfffff - */ -void dMsgScrnLight_c::drawCommon(f32 param_1, f32 param_2, f32 param_3, f32 param_4, - f32 param_5) { - J2DGrafContext* grafContext = dComIfGp_getCurrentGrafPort(); - grafContext->setup2D(); - f32 dVar9 = mpParent_c->getAlphaRate(); - if (((field_0x21 == 3 || field_0x21 == 0x5) && - param_5 < field_0x1c) || - (field_0x21 != 3 && field_0x21 != 0x5 && 1.0f != param_5)) - { - if (field_0x22 != 0) { - mpParent_c->getPanePtr()->setAnimation((J2DAnmTransform*)NULL); - mpParent_c->getPanePtr()->setAnimation((J2DAnmColor*)NULL); - field_0x22 = 0; - } - mpParent_c->setAlphaRate(dVar9 * param_5); - } else if (field_0x22 == 0) { - mpParent_c->getPanePtr()->setAnimation(field_0x8); - mpParent_c->getPanePtr()->setAnimation(field_0xc); - field_0x22 = 01; - } - if (field_0x22 != 0) { - field_0x8->setFrame(field_0x14); - field_0xc->setFrame(field_0x18); - mpParent_c->getPanePtr()->animationTransform(); - mpScreen->animation(); - } - mpParent_c->translate(param_1, param_2); - f32 dVar11 = mpParent_c->getInitScaleX(); - f32 dVar12 = mpParent_c->getInitScaleY(); - mpParent_c->scale(dVar11 * param_3, dVar12 * param_4); - mpScreen->draw(0.0f, 0.0f, grafContext); - if (1.0f != param_5) { - mpParent_c->setAlphaRate(dVar9); - } - field_0x1c = param_5; -} - -/* 80399B08-80399B08 026168 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */