cleanup msg scrn (#2051)

* msg_scrn_light done

* update include paths

* some cleanup

* fix build
This commit is contained in:
TakaRikka 2024-01-27 01:43:19 -08:00 committed by GitHub
parent 3470c4eb34
commit 7f0ba98c9f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
38 changed files with 994 additions and 1218 deletions

View File

@ -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;
};

View File

@ -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:

View File

@ -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;

View File

@ -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();

View File

@ -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;

View File

@ -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 */

View File

@ -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:

View File

@ -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:

View File

@ -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;

View File

@ -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 */

View File

@ -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 \

View File

@ -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:

View File

@ -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] = {

View File

@ -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();

View File

@ -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:

View File

@ -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 */

View File

@ -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"
//

View File

@ -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();
}

View File

@ -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);
}
}
}

View File

@ -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) {}

View File

@ -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) {

View File

@ -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"

View File

@ -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"
//

View File

@ -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"
//

View File

@ -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) {}

View File

@ -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;
}

View File

@ -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) {}

View File

@ -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 */
}
void dMsgScrnStaff_c::fontAlpha(f32 param_0) {}

View File

@ -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"
//

View File

@ -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) {}

View File

@ -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 */

View File

@ -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 */

View File

@ -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 */