d_tag_processor OK

This commit is contained in:
robojumper
2025-05-20 22:37:49 +02:00
parent 7148cc13d9
commit b89c3cc79f
11 changed files with 874 additions and 225 deletions
+45 -47
View File
@@ -3899,12 +3899,12 @@ fn_800B2FB0 = .text:0x800B2FB0; // type:function size:0x324
build__20MsgWindowBlurRelatedFv = .text:0x800B32E0; // type:function size:0x84
drawTextBlur__20MsgWindowBlurRelatedFP13dLytTextLight7mVec2_cUc = .text:0x800B3370; // type:function size:0x138
__dt__13TextWindowUnkFv = .text:0x800B34B0; // type:function size:0x40
fn_800B34F0 = .text:0x800B34F0; // type:function size:0xD0
toUpperCase__FwPwUl = .text:0x800B34F0; // type:function size:0xD0
__ct__15dTagProcessor_cFv = .text:0x800B35C0; // type:function size:0x260
__dt__15dTagProcessor_cFv = .text:0x800B3820; // type:function size:0x58
format__15dTagProcessor_cFP10dTextBox_cPCwPwUlPUlPve = .text:0x800B3880; // type:function size:0x8C
formatV__15dTagProcessor_cFP10dTextBox_cPCwPwUlPUlPvP16__va_list_struct = .text:0x800B3910; // type:function size:0x980
fn_800B4290__15dTagProcessor_cFP10dTextBox_cPCwPwlPUsP21dLytMsgWindowCharData = .text:0x800B4290; // type:function size:0x5AC
computeCharacterPlacement__15dTagProcessor_cFP10dTextBox_cPCwPwlPUsP21dLytMsgWindowCharData = .text:0x800B4290; // type:function size:0x5AC
Process__15dTagProcessor_cFUsPQ34nw4r2ut15PrintContext<w> = .text:0x800B4840; // type:function size:0x10
CalcRect__15dTagProcessor_cFPQ34nw4r2ut4RectUsPQ34nw4r2ut15PrintContext<w> = .text:0x800B4850; // type:function size:0x4
ProcessTags__15dTagProcessor_cFPQ34nw4r2ut4RectUsPQ34nw4r2ut15PrintContext<w> = .text:0x800B4860; // type:function size:0x78C
@@ -3919,8 +3919,8 @@ writeHeroname__15dTagProcessor_cFPwPll = .text:0x800B5570; // type:function size
writeItem__15dTagProcessor_cFPwPwPll = .text:0x800B5680; // type:function size:0x1DC
writeStringArg__15dTagProcessor_cFPwPwPll = .text:0x800B5860; // type:function size:0x1C0
writeNumericArg__15dTagProcessor_cFPwPwPll = .text:0x800B5A20; // type:function size:0x3AC
fn_800B5DD0__15dTagProcessor_cFPwPwPll = .text:0x800B5DD0; // type:function size:0x1FC
fn_800B5FD0__15dTagProcessor_cFUlPwPl = .text:0x800B5FD0; // type:function size:0x10C
writeSingularOrPluralWord__15dTagProcessor_cFPwPwPll = .text:0x800B5DD0; // type:function size:0x1FC
writeSingleCharacter__15dTagProcessor_cFwPwPl = .text:0x800B5FD0; // type:function size:0x10C
fn_800B60E0__15dTagProcessor_cFUcPw = .text:0x800B60E0; // type:function size:0x24
fn_800B6110__15dTagProcessor_cFUcPw = .text:0x800B6110; // type:function size:0x24
fn_800B6140__15dTagProcessor_cFUcPw = .text:0x800B6140; // type:function size:0x14
@@ -3932,22 +3932,22 @@ fn_800B61D0__15dTagProcessor_cFPQ34nw4r2ut4RectPQ34nw4r2ut15PrintContext<w>UcPw
changeScale__15dTagProcessor_cFPQ34nw4r2ut4RectPQ34nw4r2ut15PrintContext<w>b = .text:0x800B6240; // type:function size:0xDC
writeIcon__15dTagProcessor_cFP10dTextBox_cPwf = .text:0x800B6320; // type:function size:0x12C
fn_800B6450__15dTagProcessor_cFPQ34nw4r2ut4RectPQ34nw4r2ut15PrintContext<w>UcPw = .text:0x800B6450; // type:function size:0x340
fn_800B6790 = .text:0x800B6790; // type:function size:0x750
fn_800B6790__15dTagProcessor_cFPQ34nw4r2ut10CharWriterPQ34nw4r2ut15PrintContext<w>UsUc = .text:0x800B6790; // type:function size:0x750
makeSpaceForIconMaybe__15dTagProcessor_cFPQ34nw4r2ut4RectPQ34nw4r2ut15PrintContext<w>Pw = .text:0x800B6EE0; // type:function size:0x1E8
fn_800B70D0 = .text:0x800B70D0; // type:function size:0x3A4
fn_800B70D0__15dTagProcessor_cFPQ34nw4r2ut17TextWriterBase<w>PQ34nw4r2ut15PrintContext<w>Usl = .text:0x800B70D0; // type:function size:0x3A4
somethingWithScrapperAndMusic__15dTagProcessor_cFPw = .text:0x800B7480; // type:function size:0xB8
restoreColor__15dTagProcessor_cFPQ34nw4r2ut15PrintContext<w>Uc = .text:0x800B7540; // type:function size:0x250
writeTextNormal__15dTagProcessor_cFPCwPwPlUcl = .text:0x800B7790; // type:function size:0xD8
symbolToFontIdx__15dTagProcessor_cFl = .text:0x800B7870; // type:function size:0x10
fn_800B7880__15dTagProcessor_cFUl = .text:0x800B7880; // type:function size:0x210
fn_800B7A90 = .text:0x800B7A90; // type:function size:0x9C
fn_800B7B30 = .text:0x800B7B30; // type:function size:0x46C
fn_800B7880__15dTagProcessor_cFUc = .text:0x800B7880; // type:function size:0x210
fn_800B7A90__15dTagProcessor_cFUc = .text:0x800B7A90; // type:function size:0x9C
fn_800B7B30__15dTagProcessor_cFUc = .text:0x800B7B30; // type:function size:0x46C
setStringArg__15dTagProcessor_cFPCwl = .text:0x800B7FA0; // type:function size:0xA0
fn_800B8040__15dTagProcessor_cFScUl = .text:0x800B8040; // type:function size:0x1F0
fn_800B8230 = .text:0x800B8230; // type:function size:0x10C
fn_800B8340 = .text:0x800B8340; // type:function size:0x18C
fn_800B84D0 = .text:0x800B84D0; // type:function size:0x8C
fn_800B8560__15dTagProcessor_cFl = .text:0x800B8560; // type:function size:0x54
SetupGXCommon__15dTagProcessor_cFv = .text:0x800B8230; // type:function size:0x10C
SetupGXWithColorMapping__15dTagProcessor_cFQ34nw4r2ut5ColorQ34nw4r2ut5Color = .text:0x800B8340; // type:function size:0x18C
SetupVertexFormat__15dTagProcessor_cFv = .text:0x800B84D0; // type:function size:0x8C
getMarginForCenteredLine__15dTagProcessor_cFl = .text:0x800B8560; // type:function size:0x54
fn_800B85C0__15dTagProcessor_cFl = .text:0x800B85C0; // type:function size:0x290
getMaxNumLines__15dTagProcessor_cFl = .text:0x800B8850; // type:function size:0x38
getTextCommand__15dTagProcessor_cFwPCwPUcPlPPw = .text:0x800B8890; // type:function size:0x38
@@ -3959,8 +3959,8 @@ resetLineData__15dTagProcessor_cFv = .text:0x800B8960; // type:function size:0xD
getLineWidth__15dTagProcessor_cFl = .text:0x800B8A40; // type:function size:0x10
setNumericArg0__15dTagProcessor_cFl = .text:0x800B8A50; // type:function size:0xC
setNumericArgs__15dTagProcessor_cFPCll = .text:0x800B8A60; // type:function size:0xDC
fn_800B8B40 = .text:0x800B8B40; // type:function size:0x4C
fn_800B8B90 = .text:0x800B8B90; // type:function size:0x4C
tick0x8C8__15dTagProcessor_cFv = .text:0x800B8B40; // type:function size:0x4C
tick0x8CC__15dTagProcessor_cFv = .text:0x800B8B90; // type:function size:0x4C
execute__15dTagProcessor_cFv = .text:0x800B8BE0; // type:function size:0x34
__sinit_\d_tag_processor_cpp = .text:0x800B8C20; // type:function size:0x654 scope:local
__ct__14dTimeAreaMgr_cFv = .text:0x800B9280; // type:function size:0xF0
@@ -9196,7 +9196,7 @@ fn_80167E50 = .text:0x80167E50; // type:function size:0x14
swordRestrictedBokoBase = .text:0x80167E70; // type:function size:0x44
getItemIdForTriforcePieceNum = .text:0x80167EC0; // type:function size:0x10
fn_80167ED0 = .text:0x80167ED0; // type:function size:0x88
fn_80167F60 = .text:0x80167F60; // type:function size:0x74
shouldUseSingular__Fl = .text:0x80167F60; // type:function size:0x74
__ct__17dLytCommonArrow_cFv = .text:0x80167FE0; // type:function size:0x148
__dt__56sFStateMgr_c<17dLytCommonArrow_c,20sStateMethodUsr_FI_c>Fv = .text:0x80168130; // type:function size:0xA4 scope:weak
__dt__86sStateMgr_c<17dLytCommonArrow_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x801681E0; // type:function size:0xA0 scope:weak
@@ -28220,10 +28220,10 @@ lbl_804E3850 = .rodata:0x804E3850; // type:object size:0x10
lbl_804E3860 = .rodata:0x804E3860; // type:object size:0x80 data:4byte
lbl_804E38E0 = .rodata:0x804E38E0; // type:object size:0x80 data:4byte
lbl_804E3960 = .rodata:0x804E3960; // type:object size:0x80 data:4byte
lbl_804E39E0 = .rodata:0x804E39E0; // type:object size:0x10 data:2byte
lbl_804E39F0 = .rodata:0x804E39F0; // type:object size:0x240
lbl_804E3C30 = .rodata:0x804E3C30; // type:object size:0x1004
lbl_804E4C34 = .rodata:0x804E4C34; // type:object size:0x1C data:string
sReplacementSequences = .rodata:0x804E39E0; // type:object size:0x10 scope:local data:2byte
sUpperCaseChars = .rodata:0x804E39F0; // type:object size:0x240 scope:local data:2byte
sMsgWindowFlags = .rodata:0x804E3C30; // type:object size:0x1004 scope:local
@LOCAL@symbolToFontIdx__15dTagProcessor_cFl@index = .rodata:0x804E4C34; // type:object size:0x1C scope:local data:string
lbl_804E4C50 = .rodata:0x804E4C50; // type:object size:0x18
lbl_804E4C68 = .rodata:0x804E4C68; // type:object size:0xC data:string
lbl_804E4C74 = .rodata:0x804E4C74; // type:object size:0xC data:string
@@ -31051,9 +31051,9 @@ __vt__9dWindow_c = .data:0x80510820; // type:object size:0x8C scope:weak
__vt__Q23d2d10ResAccIf_c = .data:0x805108B0; // type:object size:0x18
__vt__12UnkTextThing = .data:0x805108C8; // type:object size:0xC scope:weak
__vt__13TextWindowUnk = .data:0x805108D8; // type:object size:0x10
lbl_805108E8 = .data:0x805108E8; // type:object size:0x10
lbl_805108F8 = .data:0x805108F8; // type:object size:0x14 data:string
jumptable_8051090C = .data:0x8051090C; // type:object size:0x80 scope:local
@22737 = .data:0x805108E8; // type:object size:0xF scope:local data:string
@22908 = .data:0x805108F8; // type:object size:0x14 scope:local data:string
@23581 = .data:0x8051090C; // type:object size:0x80 scope:local
__vt__15dTagProcessor_c = .data:0x8051098C; // type:object size:0x14
lbl_805109A0 = .data:0x805109A0; // type:object size:0x20
lbl_805109C0 = .data:0x805109C0; // type:object size:0x20
@@ -41379,8 +41379,8 @@ SCRAPPER_PICKUP_TARGET = .sbss:0x805753A0; // type:object size:0x8 data:4byte
lbl_805753A8 = .sbss:0x805753A8; // type:object size:0x1 data:byte
lbl_805753AC = .sbss:0x805753AC; // type:object size:0x4 data:4byte
sInstance__12UnkTextThing = .sbss:0x805753B0; // type:object size:0x4 data:4byte
lbl_805753B8 = .sbss:0x805753B8; // type:object size:0x1 data:byte
lbl_805753BC = .sbss:0x805753BC; // type:object size:0x4 data:4byte
@GUARD@SetupGXCommon__15dTagProcessor_cFv@fog = .sbss:0x805753B8; // type:object size:0x1 scope:local data:byte
@LOCAL@SetupGXCommon__15dTagProcessor_cFv@fog = .sbss:0x805753BC; // type:object size:0x4 scope:local data:4byte
sInstance__14dTimeAreaMgr_c = .sbss:0x805753C0; // type:object size:0x4 data:4byte
TIMESHIFT_TRANSITION_BORDER_COLOR = .sbss:0x805753C4; // type:object size:0x1 data:byte
CURR_TIMESHIFT_STONE_ACTIVE = .sbss:0x805753C8; // type:object size:0x8 data:4byte
@@ -44475,28 +44475,26 @@ lbl_80579848 = .sdata2:0x80579848; // type:object size:0x4 align:4 data:float
lbl_80579850 = .sdata2:0x80579850; // type:object size:0x8 align:8 data:double
lbl_80579858 = .sdata2:0x80579858; // type:object size:0x4 align:4 data:float
lbl_80579860 = .sdata2:0x80579860; // type:object size:0x8 align:8 data:double
lbl_80579868 = .sdata2:0x80579868; // type:object size:0x4
lbl_8057986C = .sdata2:0x8057986C; // type:object size:0x4 align:4 data:float
lbl_80579870 = .sdata2:0x80579870; // type:object size:0x4 data:4byte
lbl_80579874 = .sdata2:0x80579874; // type:object size:0x4 data:4byte
lbl_80579878 = .sdata2:0x80579878; // type:object size:0x4 data:4byte
lbl_8057987C = .sdata2:0x8057987C; // type:object size:0x4 data:4byte
lbl_80579880 = .sdata2:0x80579880; // type:object size:0x8 align:8 data:double
lbl_80579888 = .sdata2:0x80579888; // type:object size:0x4 align:4 data:float
lbl_8057988C = .sdata2:0x8057988C; // type:object size:0x4 align:4 data:float
lbl_80579890 = .sdata2:0x80579890; // type:object size:0x4 align:4 data:float
lbl_80579894 = .sdata2:0x80579894; // type:object size:0x4 align:4 data:float
lbl_80579898 = .sdata2:0x80579898; // type:object size:0x4 align:4 data:float
lbl_805798A0 = .sdata2:0x805798A0; // type:object size:0x8 align:8 data:double
lbl_805798A8 = .sdata2:0x805798A8; // type:object size:0x4 align:4 data:float
lbl_805798AC = .sdata2:0x805798AC; // type:object size:0x4 align:4 data:float
lbl_805798B0 = .sdata2:0x805798B0; // type:object size:0x4 align:4 data:float
lbl_805798B4 = .sdata2:0x805798B4; // type:object size:0x4 align:4 data:float
lbl_805798B8 = .sdata2:0x805798B8; // type:object size:0x4 align:4 data:float
lbl_805798BC = .sdata2:0x805798BC; // type:object size:0x4 align:4 data:float
lbl_805798C0 = .sdata2:0x805798C0; // type:object size:0x4 align:4 data:float
lbl_805798C4 = .sdata2:0x805798C4; // type:object size:0x4 align:4 data:float
lbl_805798C8 = .sdata2:0x805798C8; // type:object size:0x4 align:4 data:float
replacementSeq0xDF = .sdata2:0x80579868; // type:object size:0x4 scope:local
@22225 = .sdata2:0x8057986C; // type:object size:0x4 scope:local align:4 data:float
@18649 = .sdata2:0x80579870; // type:object size:0x8 scope:local data:4byte
@18655 = .sdata2:0x80579878; // type:object size:0x8 scope:local data:4byte
@22351 = .sdata2:0x80579880; // type:object size:0x8 scope:local align:8 data:double
@22464 = .sdata2:0x80579888; // type:object size:0x4 scope:local align:4 data:float
@22465 = .sdata2:0x8057988C; // type:object size:0x4 scope:local align:4 data:float
@22466 = .sdata2:0x80579890; // type:object size:0x4 scope:local align:4 data:float
@22467 = .sdata2:0x80579894; // type:object size:0x4 scope:local align:4 data:float
@22656 = .sdata2:0x80579898; // type:object size:0x4 scope:local align:4 data:float
@22660 = .sdata2:0x805798A0; // type:object size:0x8 scope:local align:8 data:double
@23100 = .sdata2:0x805798A8; // type:object size:0x4 scope:local align:4 data:float
@23882 = .sdata2:0x805798AC; // type:object size:0x4 scope:local align:4 data:float
@23883 = .sdata2:0x805798B0; // type:object size:0x4 scope:local align:4 data:float
@23884 = .sdata2:0x805798B4; // type:object size:0x4 scope:local align:4 data:float
@23885 = .sdata2:0x805798B8; // type:object size:0x4 scope:local align:4 data:float
@23886 = .sdata2:0x805798BC; // type:object size:0x4 scope:local align:4 data:float
@23887 = .sdata2:0x805798C0; // type:object size:0x4 scope:local align:4 data:float
@23888 = .sdata2:0x805798C4; // type:object size:0x4 scope:local align:4 data:float
@23889 = .sdata2:0x805798C8; // type:object size:0x4 scope:local align:4 data:float
lbl_805798D0 = .sdata2:0x805798D0; // type:object size:0x4 align:4 data:float
lbl_805798D4 = .sdata2:0x805798D4; // type:object size:0x4 align:4 data:float
lbl_805798D8 = .sdata2:0x805798D8; // type:object size:0x4 align:4 data:float
+1 -1
View File
@@ -456,7 +456,7 @@ config.libs = [
Object(Matching, "d/lyt/d_window.cpp"),
Object(Matching, "d/d_textunk.cpp"),
Object(NonMatching, "d/d_textwindow_unk.cpp"),
Object(NonMatching, "d/d_tag_processor.cpp"),
Object(Matching, "d/d_tag_processor.cpp"),
Object(NonMatching, "toBeSorted/time_area_mgr.cpp"),
Object(NonMatching, "toBeSorted/nand_request_thread.cpp"),
Object(NonMatching, "toBeSorted/nand_result_tracker.cpp"),
+2 -1
View File
@@ -136,6 +136,8 @@ public:
bool advanceUntilEvent(s32 searchParam3, s32 *pOutParams1n2);
bool advanceUntil(s32 searchType, s32 searchParam3, s32 *pOutParams1n2);
static void playSound(u32);
u16 getField_0x44() const;
u16 getNextFiFlow() const;
@@ -176,7 +178,6 @@ protected:
void setField0x3C();
bool checkField0x3C() const;
bool shouldHideKillCountForActor(s32 id) const;
static void playSound(u32);
void createLytMiniGame();
void clearMinigame();
+26 -11
View File
@@ -9,7 +9,7 @@ struct dLytMsgWindowCharData;
struct LineData {
f32 mLineWidths[0x32];
u32 mNumLines;
s32 mNumLines;
};
// inofficial name
@@ -28,7 +28,12 @@ public:
nw4r::ut::Operation ProcessTags(nw4r::ut::Rect *rect, u16 ch, nw4r::ut::PrintContext<wchar_t> *ctx);
f32 fn_800B8560(s32);
u8 fn_800B7A90(u8 arg);
u8 symbolToFontIdx(s32 s);
u8 fn_800B7880(u8);
u8 fn_800B7B30(u8 arg);
f32 getMarginForCenteredLine(s32);
f32 fn_800B85C0(s32);
void somethingWithScrapperAndMusic(wchar_t* src);
@@ -54,7 +59,10 @@ public:
void restoreColor(nw4r::ut::PrintContext<wchar_t> *ctx, u8 windowType);
void setScale(nw4r::ut::Rect *rect, nw4r::ut::PrintContext<wchar_t> *ctx, u8 cmdLen, wchar_t *ptr);
u8 symbolToFontIdx(s32 s);
void SetupGXCommon();
void SetupGXWithColorMapping(nw4r::ut::Color min, nw4r::ut::Color max);
void SetupVertexFormat();
void setStringArg(const wchar_t *arg, s32 index);
static s32 getMaxNumLines(s32 arg);
@@ -63,17 +71,17 @@ public:
static void process0xFCommand(wchar_t _0xf, const wchar_t *src, s32 *outCmd);
static f32 fn_800B8040(s8, u32);
wchar_t *fn_800B5FD0(u32, wchar_t *, s32 *);
wchar_t *writeSingleCharacter(wchar_t, wchar_t *, s32 *);
wchar_t *writeTextNormal(const wchar_t *src, wchar_t *dest, s32 *, u8 cmdLen, s32);
wchar_t *writeHeroname(wchar_t *dest, s32 *, s32);
wchar_t *fn_800B5DD0(wchar_t *dest, wchar_t *src, s32 *, s32);
wchar_t *writeSingularOrPluralWord(wchar_t *dest, wchar_t *src, s32 *, s32);
void fn_800B5520(wchar_t *src);
void writeIcon(dTextBox_c *textBox, wchar_t *cmd, f32);
char fn_800B7880(u32);
void fn_800B70D0(nw4r::ut::TextWriterBase<wchar_t> *, nw4r::ut::PrintContext<wchar_t> *ctx, u16 c, s32);
void fn_800B6790(nw4r::ut::CharWriter *w, nw4r::ut::PrintContext<wchar_t> *ctx, u16, u8);
void
fn_800B4290(dTextBox_c *textBox, const wchar_t *src, wchar_t *dest, s32, u16 *, dLytMsgWindowCharData *charData);
computeCharacterPlacement(dTextBox_c *textBox, const wchar_t *src, wchar_t *dest, s32, u16 *, dLytMsgWindowCharData *charData);
void resetSomething();
void resetLineData();
@@ -82,10 +90,17 @@ public:
f32 getLineWidth(s32 i);
s32 tickPauseFrame();
s32 tick0x830();
void tick0x8C8();
void tick0x8CC();
void execute();
void setTextbox(dTextBox_c *box) {
field_0x004 = box;
mpTextBox = box;
}
dTextBox_c *getTextBox() const {
return mpTextBox;
}
s32 getNumLinesMaybe() const {
@@ -188,7 +203,7 @@ private:
}
}
/* 0x004 */ dTextBox_c *field_0x004;
/* 0x004 */ dTextBox_c *mpTextBox;
/* 0x008 */ wchar_t field_0x008[4][256];
/* 0x808 */ wchar_t field_0x808[4];
/* 0x810 */ f32 field_0x810;
@@ -196,7 +211,7 @@ private:
/* 0x818 */ f32 field_0x818;
/* 0x81C */ s32 field_0x81C;
/* 0x820 */ s32 field_0x820;
/* 0x824 */ s32 field_0x824;
/* 0x824 */ u32 field_0x824;
/* 0x828 */ s32 field_0x828;
/* 0x82C */ s32 field_0x82C;
/* 0x830 */ s32 field_0x830;
@@ -227,7 +242,7 @@ private:
/* 0x894 */ s32 field_0x894;
/* 0x898 */ s32 field_0x898;
/* 0x89C */ s32 mNumericArgs[10];
/* 0x8C4 */ s32 mNumericArgsCopy[10];
/* 0x8C4 */ s32 mNumericArgsCopy[10]; // probably not an array
/* 0x8EC */ s32 field_0x8EC;
/* 0x8EC */ s32 field_0x8F0;
/* 0x8F4 */ s32 field_0x8F4;
+21
View File
@@ -75,6 +75,13 @@ public:
return 1.0f;
}
inline static f32 getFn800B1FC0() {
if (sInstance != nullptr) {
return sInstance->fn_800B1FC0();
}
return 1.0f;
}
inline static f32 getFn800B1FD0() {
if (sInstance != nullptr) {
return sInstance->fn_800B1FD0();
@@ -128,6 +135,20 @@ public:
return 0.0f;
}
inline static s16 getField_0x7AA() {
if (sInstance != nullptr) {
return sInstance->field_0x7AA;
}
return 0;
}
inline static s16 getField_0x7AA_plus_0x7AC() {
if (sInstance != nullptr) {
return sInstance->field_0x7AA + sInstance->field_0x7AC;
}
return 0;
}
static UnkTextThing *getInstance() {
return sInstance;
}
+6
View File
@@ -16,4 +16,10 @@ DowsingTarget::DowsingSlot dowsingSlotForIndex(s32 index);
s32 getLytIndexForDowsingIndex(s32 index);
u16 getDowsingItemIdForIndex(s32 index);
/**
* FR: -1, 0, 1 singular, else plural
* Otherwise: -1, 1 singular, else plural
*/
bool shouldUseSingular(s32 amount);
#endif
@@ -93,6 +93,10 @@ public:
return mpTagProcessor;
}
s32 getField_0x784() const {
return field_0x784;
}
u8 getField_0x80D() const {
return field_0x80D;
}
@@ -105,6 +109,10 @@ public:
return mTextOptionSelection;
}
void onFlag0x820(u16 flag) {
field_0x820 |= flag;
}
private:
bool setTextToDisplay(const wchar_t *text);
void createSubMsgManager(u8 type);
+8 -5
View File
@@ -3,12 +3,15 @@
#include "common.h"
extern "C" void *BGM_MGR;
class BgmMgr;
extern "C" BgmMgr *BGM_MGR;
extern "C" void fn_8035E000();
extern "C" void fn_8035E860(void *);
extern "C" void fn_8035E310(void *);
extern "C" void fn_8035E820(void *);
extern "C" void fn_8035E880(void *);
extern "C" void fn_8035E860(BgmMgr *);
extern "C" void fn_8035E310(BgmMgr *);
extern "C" void fn_8035E820(BgmMgr *);
extern "C" void fn_8035E880(BgmMgr *);
extern "C" void fn_8035E790(BgmMgr *, UNKWORD, void *);
extern "C" void *ENEMY_SOUND_MGR;
extern "C" void fn_80362150(void *, u16);
+755 -158
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -41,7 +41,7 @@ bool TextWindowUnk::fn_800B2130(const char *label, dTextBox_c *textBox, dLytMsgW
mLineWidths = mpTagProcessor->getLineData();
if (mpCharacterData != nullptr) {
mpTagProcessor->fn_800B4290(
mpTagProcessor->computeCharacterPlacement(
mpTextBox, mRawTextBuffer, mUnkBuffer, field_0x1458, &field_0x1478, mpCharacterData
);
if (mpTagProcessor->getMsgWindowSubtype() == 2) {
+1 -1
View File
@@ -325,7 +325,7 @@ void dTextBox_c::setMessageWithGlobalTextProcessorAndMsbtInfo(
field_0x1FA = 1;
u32 outLen = 0;
mpMyTagProcessor = dMessage_c::getGlobalTagProcessor();
mpMyTagProcessor->setMsgWindowSubtype(0x22);
mpMyTagProcessor->setMsgWindowSubtype(dLytMsgWindow_c::MSG_WINDOW_34);
mWindowSubtype = mpMyTagProcessor->getMsgWindowSubtype();
mpMyTagProcessor->setField_0xEE1(field_0x1F6);
mpMyTagProcessor->setField_0xEE2(0);