mirror of
https://github.com/zeldaret/tww.git
synced 2026-05-23 06:54:16 -04:00
@@ -423,7 +423,9 @@ public:
|
||||
void setOperateWindOn() { mOperateWind = 2; }
|
||||
|
||||
u8 checkMesgSendButton() { return mMesgSendButton; }
|
||||
void setMesgSendButton(u8 button) { mMesgSendButton = button; }
|
||||
u8 checkMesgCancelButton() { return mMesgCancelButton; }
|
||||
void setMesgCancelButton(u8 button) { mMesgCancelButton = button; }
|
||||
|
||||
void setPlayerStatus(int param_0, int i, u32 flag) { mPlayerStatus[param_0][i] |= flag; }
|
||||
void clearPlayerStatus(int param_0, int i, u32 flag) { mPlayerStatus[param_0][i] &= ~flag; }
|
||||
@@ -2568,10 +2570,18 @@ inline void dComIfGp_setOperateWindOn() {
|
||||
g_dComIfG_gameInfo.play.setOperateWindOn();
|
||||
}
|
||||
|
||||
inline void dComIfGp_setMesgSendButton(u8 button) {
|
||||
g_dComIfG_gameInfo.play.setMesgSendButton(button);
|
||||
}
|
||||
|
||||
inline u8 dComIfGp_checkMesgSendButton() {
|
||||
return g_dComIfG_gameInfo.play.checkMesgSendButton();
|
||||
}
|
||||
|
||||
inline void dComIfGp_setMesgCancelButton(u8 button) {
|
||||
g_dComIfG_gameInfo.play.setMesgCancelButton(button);
|
||||
}
|
||||
|
||||
inline u8 dComIfGp_checkMesgCancelButton() {
|
||||
return g_dComIfG_gameInfo.play.checkMesgCancelButton();
|
||||
}
|
||||
|
||||
@@ -1,11 +1,12 @@
|
||||
#ifndef D_FILE_ERROR_H
|
||||
#define D_FILE_ERROR_H
|
||||
|
||||
#include "JSystem/J2DGraph/J2DScreen.h"
|
||||
#include "d/d_drawlist.h"
|
||||
|
||||
class MyScreen {
|
||||
class MyScreen :public J2DScreen {
|
||||
public:
|
||||
void createPane(const J2DPane::J2DScrnBlockHeader&, JSURandomInputStream*, J2DPane*) {}
|
||||
J2DPane* createPane(const J2DPane::J2DScrnBlockHeader&, JSURandomInputStream*, J2DPane*) {}
|
||||
};
|
||||
|
||||
class dFe_HIO_c {
|
||||
|
||||
+2
-8
@@ -294,14 +294,8 @@ public:
|
||||
void genMessage(JORMContext* ctx);
|
||||
|
||||
/* 0x04 */ u8 field_0x4[0x05 - 0x04];
|
||||
/* 0x05 */ u8 field_0x5;
|
||||
/* 0x06 */ u8 field_0x6;
|
||||
/* 0x07 */ u8 field_0x7;
|
||||
/* 0x08 */ u8 field_0x8;
|
||||
/* 0x09 */ u8 field_0x9;
|
||||
/* 0x0A */ u8 field_0xa;
|
||||
/* 0x0B */ u8 field_0xb;
|
||||
/* 0x0C */ u8 field_0xc;
|
||||
/* 0x05 */ GXColor field_0x5;
|
||||
/* 0x09 */ GXColor field_0x9;
|
||||
/* 0x0D */ u8 field_0xd;
|
||||
/* 0x0E */ u8 field_0xe;
|
||||
/* 0x0F */ u8 field_0xf;
|
||||
|
||||
+67
-1
@@ -2,18 +2,84 @@
|
||||
#ifndef D_MSG_H
|
||||
#define D_MSG_H
|
||||
|
||||
#include "JSystem/JParticle/JPAEmitter.h"
|
||||
#include "d/d_drawlist.h"
|
||||
#include "f_op/f_op_msg.h"
|
||||
#include "f_op/f_op_msg_mng.h"
|
||||
|
||||
class msg_class;
|
||||
class sub_msg_class;
|
||||
|
||||
class sub_msg_class : public msg_class {
|
||||
public:
|
||||
/* 0x00FC */ JKRExpHeap* mpHeap;
|
||||
/* 0x0100 */ mesg_entry mMesgEntry;
|
||||
/* 0x0118 */ mesg_header* head_p;
|
||||
/* 0x011C */ fopMsgM_pane_class m011C[4];
|
||||
/* 0x01FC */ fopMsgM_pane_class m01FC;
|
||||
/* 0x0234 */ fopMsgM_pane_class m0234;
|
||||
/* 0x026C */ fopMsgM_pane_class m026C[10];
|
||||
/* 0x049C */ fopMsgM_pane_class m049C;
|
||||
/* 0x04D4 */ fopMsgM_pane_class mPane_Arrow;
|
||||
/* 0x050C */ fopMsgM_pane_class m050C;
|
||||
/* 0x0544 */ fopMsgM_pane_class m0544[4];
|
||||
/* 0x0624 */ fopMsgM_pane_class m0624[10];
|
||||
/* 0x0854 */ u8 m854[0x8C4 - 0x854];
|
||||
/* 0x08C4 */ fopMsgM_pane_class m08C4[6];
|
||||
/* 0x0A14 */ fopMsgM_pane_class m0A14[6];
|
||||
/* 0x0B64 */ fopMsgM_pane_class m0B64[6];
|
||||
/* 0x0CB4 */ fopMsgM_pane_class m0CB4[6];
|
||||
/* 0x0E04 */ fopMsgM_msgDataProc_c mMsgDataProc;
|
||||
/* 0x10A4 */ fopMsgM_msgGet_c mMsgGet;
|
||||
/* 0x10B4 */ JPABaseEmitter* m10B4[2];
|
||||
/* 0x10BC */ JUtility::TColor m10BC;
|
||||
/* 0x10C0 */ JUtility::TColor m10C0;
|
||||
/* 0x10C4 */ JUtility::TColor m10C4;
|
||||
/* 0x10C8 */ JUtility::TColor m10C8;
|
||||
/* 0x10CC */ ResTIMG* buffer_p;
|
||||
/* 0x10D0 */ f32 m10D0;
|
||||
/* 0x10D4 */ f32 m10D4;
|
||||
/* 0x10D8 */ int m10D8;
|
||||
/* 0x10DC */ int m10DC;
|
||||
/* 0x10E0 */ cXyz m10E0;
|
||||
/* 0x10EC */ f32 m10EC;
|
||||
/* 0x10F0 */ f32 m10F0;
|
||||
/* 0x10F4 */ u8 m10F4[0x10F8 - 0x10F4];
|
||||
/* 0x10F8 */ int m10F8;
|
||||
/* 0x10FC */ int m10FC;
|
||||
/* 0x1100 */ int m1100;
|
||||
/* 0x1104 */ int m1104;
|
||||
/* 0x1108 */ int m1108;
|
||||
/* 0x110C */ int m110C;
|
||||
/* 0x1110 */ int m1110;
|
||||
/* 0x1114 */ int m1114;
|
||||
/* 0x1118 */ int mMesgCameraTagInfo;
|
||||
/* 0x111C */ char* mpMesgStr;
|
||||
/* 0x1120 */ char* output_text;
|
||||
/* 0x1124 */ char* output_rub;
|
||||
/* 0x1128 */ char* output_textSdw;
|
||||
/* 0x112C */ char* output_rubSdw;
|
||||
/* 0x1130 */ char* select_text;
|
||||
/* 0x1134 */ char* select_rub;
|
||||
/* 0x1138 */ char* select_textSdw;
|
||||
/* 0x113C */ char* select_rubSdw;
|
||||
/* 0x1140 */ int mMsgID;
|
||||
/* 0x1144 */ int m1144;
|
||||
/* 0x1148 */ u8 m1148[0x1164 - 0x1148];
|
||||
/* 0x1164 */ int m1164;
|
||||
/* 0x1168 */ u8 m1168;
|
||||
/* 0x1169 */ u8 m1169;
|
||||
/* 0x116A */ u8 m116A;
|
||||
/* 0x116B */ u8 m116B;
|
||||
};
|
||||
|
||||
class dDlst_2DMSG_c : public dDlst_base_c {
|
||||
public:
|
||||
virtual ~dDlst_2DMSG_c();
|
||||
virtual void draw();
|
||||
void outFontDraw();
|
||||
|
||||
msg_class* field_0x4;
|
||||
sub_msg_class* field_0x4;
|
||||
};
|
||||
|
||||
class dDlst_2Dtact_c : public dDlst_base_c {
|
||||
|
||||
@@ -10,7 +10,10 @@ enum fopMsg_MessageStatus_e {
|
||||
fopMsgStts_MSG_PREPARING_e = 0x01,
|
||||
fopMsgStts_BOX_OPENING_e = 0x02,
|
||||
fopMsgStts_MSG_TYPING_e = 0x06,
|
||||
fopMsgStts_UNKA_e = 0x0A,
|
||||
fopMsgStts_STOP_e = 0x07,
|
||||
fopMsgStts_SELECT_2_e = 0x08, // Selection box with 2 choices
|
||||
fopMsgStts_SELECT_3_e = 0x09, // Selection box with 3 choices
|
||||
fopMsgStts_CLOSE_WAIT_e = 0x0A, // Waiting for player input before closing the text box
|
||||
fopMsgStts_UNKB_e = 0x0B,
|
||||
fopMsgStts_UNKD_e = 0x0D,
|
||||
fopMsgStts_MSG_DISPLAYED_e = 0x0E,
|
||||
@@ -19,7 +22,10 @@ enum fopMsg_MessageStatus_e {
|
||||
fopMsgStts_BOX_CLOSING_e = 0x11,
|
||||
fopMsgStts_BOX_CLOSED_e = 0x12,
|
||||
fopMsgStts_MSG_DESTROYED_e = 0x13,
|
||||
fopMsgStts_UNK15_e = 0x15,
|
||||
fopMsgStts_SELECT_YOKO_e = 0x14, // Selection box with 2 choices (arranged horizontally)?
|
||||
fopMsgStts_INPUT_e = 0x15, // Wind Waker song tutorial (practicing)/numbers input (auction)
|
||||
fopMsgStts_TACT_e = 0x16, // Close text box after playing Wind Waker song
|
||||
fopMsgStts_DEMO_e = 0x17, // Wind Waker song tutorial (demonstration)
|
||||
};
|
||||
|
||||
struct msg_method_class {
|
||||
|
||||
@@ -128,7 +128,7 @@ public:
|
||||
virtual void drawSelf(f32, f32, Mtx*);
|
||||
virtual void drawFullSet2(f32, f32, f32, f32, J2DBinding, J2DMirror, bool, Mtx*);
|
||||
|
||||
private:
|
||||
public:
|
||||
/* 0x124 */ f32 m124;
|
||||
/* 0x128 */ f32 m128;
|
||||
/* 0x12C */ f32 m12C;
|
||||
@@ -324,6 +324,7 @@ void fopMsgM_Delete(void* process);
|
||||
fopMsg_prm_class* fopMsgM_GetAppend(void* msg);
|
||||
void fopMsgM_destroyExpHeap(JKRExpHeap*);
|
||||
f32 fopMsgM_valueIncrease(int param_0, int param_1, u8 param_2);
|
||||
bool fopMsgM_hyrule_language_check(u32 msgNo);
|
||||
s32 fopMsgM_setStageLayer(void*);
|
||||
fpc_ProcID fopMsgM_messageSet(u32 i_msgNo, fopAc_ac_c* i_actorP);
|
||||
fpc_ProcID fopMsgM_messageSet(u32 param_0, cXyz*);
|
||||
@@ -359,6 +360,8 @@ void fopMsgM_setAlpha(fopMsgM_pane_alpha_class*);
|
||||
|
||||
u32 fopMsgM_searchMessageNumber(u32);
|
||||
void fopMsgM_messageSendOn();
|
||||
void fopMsgM_messageSendOff();
|
||||
bool fopMsgM_checkMessageSend();
|
||||
u32 fopMsgM_tactMessageSet();
|
||||
void fopMsgM_demoMsgFlagOn();
|
||||
|
||||
@@ -368,6 +371,8 @@ bool fopMsgM_demoMsgFlagCheck();
|
||||
void fopMsgM_tactMsgFlagOn();
|
||||
void fopMsgM_tactMsgFlagOff();
|
||||
bool fopMsgM_tactMsgFlagCheck();
|
||||
void fopMsgM_nextMsgFlagOff();
|
||||
bool fopMsgM_nextMsgFlagCheck();
|
||||
|
||||
void fopMsgM_blendInit(fopMsgM_pane_class* i_this, const char* data);
|
||||
void fopMsgM_blendInit(J2DPicture* pic, const char* data);
|
||||
|
||||
@@ -1580,7 +1580,7 @@ BOOL daNpc_Cb1_c::execTalk(BOOL param_1) {
|
||||
fopMsgM_messageSet(mMsgNo);
|
||||
}
|
||||
}
|
||||
else if(l_msg->mStatus == fopMsgStts_UNK15_e) {
|
||||
else if(l_msg->mStatus == fopMsgStts_INPUT_e) {
|
||||
if(param_1) {
|
||||
if(dComIfGp_checkMesgCancelButton()) {
|
||||
l_msg->mStatus = fopMsgStts_MSG_ENDS_e;
|
||||
|
||||
@@ -2311,7 +2311,7 @@ BOOL daNpc_Md_c::talk(int r4) {
|
||||
fopMsgM_messageSet(mMsgNo);
|
||||
m313A = 0;
|
||||
}
|
||||
} else if (msgStatus == fopMsgStts_UNK15_e) {
|
||||
} else if (msgStatus == fopMsgStts_INPUT_e) {
|
||||
if (r4 != 0) {
|
||||
if (dComIfGp_checkMesgCancelButton()) {
|
||||
l_msg->mStatus = fopMsgStts_MSG_ENDS_e;
|
||||
|
||||
@@ -1641,7 +1641,7 @@ BOOL daNpc_Os_c::talk() {
|
||||
fopMsgM_messageSet(field_0x780);
|
||||
}
|
||||
}
|
||||
else if(l_msg->mStatus != fopMsgStts_UNK15_e && l_msg->mStatus != fopMsgStts_MSG_TYPING_e && l_msg->mStatus == fopMsgStts_BOX_CLOSED_e) {
|
||||
else if(l_msg->mStatus != fopMsgStts_INPUT_e && l_msg->mStatus != fopMsgStts_MSG_TYPING_e && l_msg->mStatus == fopMsgStts_BOX_CLOSED_e) {
|
||||
l_msg->mStatus = fopMsgStts_MSG_DESTROYED_e;
|
||||
|
||||
return true;
|
||||
|
||||
@@ -6289,7 +6289,7 @@ u16 daNpcPeople_c::talk2(int param_1, fopAc_ac_c* param_2) {
|
||||
}
|
||||
|
||||
break;
|
||||
case fopMsgStts_UNKA_e:
|
||||
case fopMsgStts_CLOSE_WAIT_e:
|
||||
if(m7A8 == 0) {
|
||||
chkMsg();
|
||||
m7A8 = 1;
|
||||
|
||||
@@ -540,7 +540,7 @@ void daObjMknjD::Act_c::privateCut() {
|
||||
case ACT_LESSON: {
|
||||
u16 msgStatus = talk(1);
|
||||
|
||||
if (msgStatus == fopMsgStts_BOX_CLOSED_e || msgStatus == fopMsgStts_UNK15_e) {
|
||||
if (msgStatus == fopMsgStts_BOX_CLOSED_e || msgStatus == fopMsgStts_INPUT_e) {
|
||||
doCutEnd = true;
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -514,13 +514,13 @@ u16 daTag_Hint_c::talk() {
|
||||
break;
|
||||
case 2:
|
||||
sVar3 = l_msg->mStatus;
|
||||
if (sVar3 == 0xe) {
|
||||
if (sVar3 == fopMsgStts_MSG_DISPLAYED_e) {
|
||||
l_msg->mStatus = next_msgStatus(&m290);
|
||||
if (l_msg->mStatus == 0xf) {
|
||||
if (l_msg->mStatus == fopMsgStts_MSG_CONTINUES_e) {
|
||||
fopMsgM_messageSet(m290);
|
||||
}
|
||||
} else if (sVar3 == 0x12) {
|
||||
l_msg->mStatus = 0x13;
|
||||
} else if (sVar3 == fopMsgStts_BOX_CLOSED_e) {
|
||||
l_msg->mStatus = fopMsgStts_MSG_DESTROYED_e;
|
||||
m294 = -1;
|
||||
}
|
||||
break;
|
||||
|
||||
@@ -208,7 +208,7 @@ void daTag_Island_c::demoInitTact_Bf() {
|
||||
|
||||
/* 00000778-000007C8 .text demoProcTact_Bf__14daTag_Island_cFv */
|
||||
BOOL daTag_Island_c::demoProcTact_Bf() {
|
||||
if (talk() == fopMsgStts_UNK15_e)
|
||||
if (talk() == fopMsgStts_INPUT_e)
|
||||
dComIfGp_evmng_cutEnd(mStaffId);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
+4
-4
@@ -1,7 +1,7 @@
|
||||
//
|
||||
// Generated by dtk
|
||||
// Translation Unit: d_mesg.cpp
|
||||
//
|
||||
/**
|
||||
* d_mesg.cpp
|
||||
* Textboxes (cutscenes)
|
||||
*/
|
||||
|
||||
#include "d/dolzel.h" // IWYU pragma: keep
|
||||
#include "d/d_mesg.h"
|
||||
|
||||
+8
-8
@@ -339,14 +339,14 @@ dMeter_menuHIO_c::dMeter_menuHIO_c() {
|
||||
|
||||
/* 801EF57C-801EF75C .text __ct__16dMeter_msg_HIO_cFv */
|
||||
dMeter_msg_HIO_c::dMeter_msg_HIO_c() {
|
||||
field_0x5 = 0x1e;
|
||||
field_0x6 = 0x1e;
|
||||
field_0x7 = 0x1e;
|
||||
field_0x8 = 0xd7;
|
||||
field_0x9 = 0x1e;
|
||||
field_0xa = 0x1e;
|
||||
field_0xb = 0x4b;
|
||||
field_0xc = 0;
|
||||
field_0x5.r = 0x1e;
|
||||
field_0x5.g = 0x1e;
|
||||
field_0x5.b = 0x1e;
|
||||
field_0x5.a = 0xd7;
|
||||
field_0x9.r = 0x1e;
|
||||
field_0x9.g = 0x1e;
|
||||
field_0x9.b = 0x4b;
|
||||
field_0x9.a = 0;
|
||||
field_0x5a = 0;
|
||||
field_0x5c = 0;
|
||||
field_0x5e = 0x1e;
|
||||
|
||||
@@ -40,8 +40,8 @@ dMn_HIO_c::dMn_HIO_c() {
|
||||
void dMetronome_c::screenSet() {
|
||||
static const u32 cn_t2[] = { 'cn08', 'cn09', 'cn10', 'cn11', 'cn12', 'cn13' };
|
||||
static const u32 wn_t2[] = { 'wn08', 'wn09', 'wn10', 'wn11', 'wn12', 'wn13' };
|
||||
static const u32 i11_t2[] = { 'i081', 'i091', 'i101', 'i111', 'i121', 'i131' };
|
||||
static const u32 i12_t2[] = { 'i082', 'i092', 'i102', 'i112', 'i122', 'i132' };
|
||||
static const u32 i12_t2[] = { 'i081', 'i091', 'i101', 'i111', 'i121', 'i131' };
|
||||
static const u32 i11_t2[] = { 'i082', 'i092', 'i102', 'i112', 'i122', 'i132' };
|
||||
static const u32 bs_t2[] = { 'bs08', 'bs09', 'bs10', 'bs11', 'bs12', 'bs13' };
|
||||
|
||||
static const u32 cn_t1[] = { 'cn01', 'cn02', 'cn03', 'cn04', 'cn05', 'cn06', 'cn07' };
|
||||
|
||||
+2924
-122
File diff suppressed because it is too large
Load Diff
@@ -813,7 +813,7 @@ bool fopMsgM_getScopeMode() {
|
||||
|
||||
/* 8002C624-8002C650 .text fopMsgM_forceSendOn__Fv */
|
||||
bool fopMsgM_forceSendOn() {
|
||||
if (dComIfGp_getScopeMesgStatus() == fopMsgStts_UNKA_e) {
|
||||
if (dComIfGp_getScopeMesgStatus() == fopMsgStts_CLOSE_WAIT_e) {
|
||||
pushButton = true;
|
||||
return true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user