This commit is contained in:
robojumper
2025-11-30 22:38:23 +01:00
parent 4001265892
commit f6d4e45c1a
6 changed files with 1281 additions and 146 deletions
+38 -38
View File
@@ -15287,9 +15287,9 @@ fn_8028DD80__18dLytMiniGameTime_cFv = .text:0x8028DD80; // type:function size:0x
fn_8028DE40__18dLytMiniGameTime_cFv = .text:0x8028DE40; // type:function size:0x84
fn_8028DED0__18dLytMiniGameTime_cFv = .text:0x8028DED0; // type:function size:0x100
fn_8028DFD0__18dLytMiniGameTime_cFv = .text:0x8028DFD0; // type:function size:0xEC
fn_8028E0C0__18dLytMiniGameTime_cFv = .text:0x8028E0C0; // type:function size:0xAC
fn_8028E170__18dLytMiniGameTime_cFv = .text:0x8028E170; // type:function size:0x60
fn_8028E1D0__18dLytMiniGameTime_cFv = .text:0x8028E1D0; // type:function size:0xC4
startAlphaIn__18dLytMiniGameTime_cFv = .text:0x8028E0C0; // type:function size:0xAC
startAlphaOut__18dLytMiniGameTime_cFv = .text:0x8028E170; // type:function size:0x60
startFinish__18dLytMiniGameTime_cFv = .text:0x8028E1D0; // type:function size:0xC4
startLoop__18dLytMiniGameTime_cFv = .text:0x8028E2A0; // type:function size:0x54
setTimerValueInMilliSeconds__18dLytMiniGameTime_cFl = .text:0x8028E300; // type:function size:0x14
updateLongTimer__18dLytMiniGameTime_cFv = .text:0x8028E320; // type:function size:0x198
@@ -15303,7 +15303,7 @@ resetOut__18dLytMiniGameTime_cFv = .text:0x8028E8F0; // type:function size:0x80
resetAlphaIn__18dLytMiniGameTime_cFv = .text:0x8028E970; // type:function size:0x80
resetAlphaOut__18dLytMiniGameTime_cFv = .text:0x8028E9F0; // type:function size:0x80
resetDigits__18dLytMiniGameTime_cFv = .text:0x8028EA70; // type:function size:0x13C
fn_8028EBB0__18dLytMiniGameTime_cFv = .text:0x8028EBB0; // type:function size:0x60
resetPosition__18dLytMiniGameTime_cFv = .text:0x8028EBB0; // type:function size:0x60
resetShowBestTime__18dLytMiniGameTime_cFv = .text:0x8028EC10; // type:function size:0x8
resetFinish__18dLytMiniGameTime_cFv = .text:0x8028EC20; // type:function size:0x114
resetLoop__18dLytMiniGameTime_cFv = .text:0x8028ED40; // type:function size:0x74
@@ -15321,7 +15321,7 @@ isAlphaOutEndReached__18dLytMiniGameTime_cCFv = .text:0x8028EFE0; // type:functi
isFinishEndReached__18dLytMiniGameTime_cCFv = .text:0x8028F030; // type:function size:0x44
setHighestDigitIndex__18dLytMiniGameTime_cFUc = .text:0x8028F080; // type:function size:0x11C
setSignChange__18dLytMiniGameTime_cFUl = .text:0x8028F1A0; // type:function size:0x94
fn_8028F240__18dLytMiniGameTime_cFb = .text:0x8028F240; // type:function size:0x80
setTimePosition__18dLytMiniGameTime_cFb = .text:0x8028F240; // type:function size:0x80
setBestHasSixDigits__18dLytMiniGameTime_cFb = .text:0x8028F2C0; // type:function size:0xE8
setDigit__18dLytMiniGameTime_cFll = .text:0x8028F3B0; // type:function size:0xB4
setDigitBest__18dLytMiniGameTime_cFll = .text:0x8028F470; // type:function size:0xB4
@@ -15330,43 +15330,43 @@ remove__19dLytMiniGameStart_cFv = .text:0x8028F5F0; // type:function size:0x74
execute__19dLytMiniGameStart_cFv = .text:0x8028F670; // type:function size:0x1BC
draw__19dLytMiniGameStart_cFv = .text:0x8028F830; // type:function size:0x48
init__19dLytMiniGameStart_cFv = .text:0x8028F880; // type:function size:0x10C
fn_8028F990 = .text:0x8028F990; // type:function size:0x4C
fn_8028F9E0 = .text:0x8028F9E0; // type:function size:0x60
fn_8028FA40 = .text:0x8028FA40; // type:function size:0x4C
fn_8028FA90 = .text:0x8028FA90; // type:function size:0x4C
fn_8028FAE0 = .text:0x8028FAE0; // type:function size:0x58
fn_8028FB40 = .text:0x8028FB40; // type:function size:0x58
fn_8028FBA0 = .text:0x8028FBA0; // type:function size:0x58
fn_8028FC00 = .text:0x8028FC00; // type:function size:0x20
fn_8028FC20 = .text:0x8028FC20; // type:function size:0x54
fn_8028FC80 = .text:0x8028FC80; // type:function size:0x54
fn_8028FCE0 = .text:0x8028FCE0; // type:function size:0x54
fn_8028FD40 = .text:0x8028FD40; // type:function size:0xC
fn_8028FD50 = .text:0x8028FD50; // type:function size:0xC
fn_8028FD60 = .text:0x8028FD60; // type:function size:0xC
fn_8028FD70 = .text:0x8028FD70; // type:function size:0x48
fn_8028FDC0 = .text:0x8028FDC0; // type:function size:0x48
fn_8028FE10 = .text:0x8028FE10; // type:function size:0x48
fn_8028FE60 = .text:0x8028FE60; // type:function size:0x48
fn_8028FEB0 = .text:0x8028FEB0; // type:function size:0x48
fn_8028FF00 = .text:0x8028FF00; // type:function size:0x48
startCountdown__19dLytMiniGameStart_cFv = .text:0x8028F990; // type:function size:0x4C
startCountdown120__19dLytMiniGameStart_cFv = .text:0x8028F9E0; // type:function size:0x60
startFinish__19dLytMiniGameStart_cFv = .text:0x8028FA40; // type:function size:0x4C
startTimeup__19dLytMiniGameStart_cFv = .text:0x8028FA90; // type:function size:0x4C
isCountdownEndReached__19dLytMiniGameStart_cCFv = .text:0x8028FAE0; // type:function size:0x58
isFinishEndReached__19dLytMiniGameStart_cCFv = .text:0x8028FB40; // type:function size:0x58
isTimeupEndReached__19dLytMiniGameStart_cCFv = .text:0x8028FBA0; // type:function size:0x58
resetPlayedSounds__19dLytMiniGameStart_cFv = .text:0x8028FC00; // type:function size:0x20
resetCountdown__19dLytMiniGameStart_cFv = .text:0x8028FC20; // type:function size:0x54
resetFinish__19dLytMiniGameStart_cFv = .text:0x8028FC80; // type:function size:0x54
resetStart__19dLytMiniGameStart_cFv = .text:0x8028FCE0; // type:function size:0x54
stopCountdown__19dLytMiniGameStart_cFv = .text:0x8028FD40; // type:function size:0xC
stopFinish__19dLytMiniGameStart_cFv = .text:0x8028FD50; // type:function size:0xC
stopTimeup__19dLytMiniGameStart_cFv = .text:0x8028FD60; // type:function size:0xC
checkCountdown3__19dLytMiniGameStart_cFv = .text:0x8028FD70; // type:function size:0x48
checkCountdown2__19dLytMiniGameStart_cFv = .text:0x8028FDC0; // type:function size:0x48
checkCountdown1__19dLytMiniGameStart_cFv = .text:0x8028FE10; // type:function size:0x48
checkStart__19dLytMiniGameStart_cFv = .text:0x8028FE60; // type:function size:0x48
checkFinish__19dLytMiniGameStart_cFv = .text:0x8028FEB0; // type:function size:0x48
checkTimeup__19dLytMiniGameStart_cFv = .text:0x8028FF00; // type:function size:0x48
build__19dLytMiniGameScore_cFPQ23d2d10ResAccIf_c = .text:0x8028FF50; // type:function size:0x168
remove__19dLytMiniGameScore_cFv = .text:0x802900C0; // type:function size:0x74
execute__19dLytMiniGameScore_cFv = .text:0x80290140; // type:function size:0x2EC
draw__19dLytMiniGameScore_cFv = .text:0x80290430; // type:function size:0x48
init__19dLytMiniGameScore_cFv = .text:0x80290480; // type:function size:0xF84
fn_80291410 = .text:0x80291410; // type:function size:0x1A0
fn_802915B0 = .text:0x802915B0; // type:function size:0x84
fn_80291640 = .text:0x80291640; // type:function size:0x100
fn_80291740 = .text:0x80291740; // type:function size:0xEC
fn_80291830 = .text:0x80291830; // type:function size:0xD0
fn_80291900 = .text:0x80291900; // type:function size:0x60
fn_80291960 = .text:0x80291960; // type:function size:0xD0
fn_80291A30 = .text:0x80291A30; // type:function size:0x110
fn_80291B40 = .text:0x80291B40; // type:function size:0x54
fn_80291BA0 = .text:0x80291BA0; // type:function size:0x14
fn_80291BC0 = .text:0x80291BC0; // type:function size:0x178
fn_80291D40 = .text:0x80291D40; // type:function size:0x10C
fn_80291410__19dLytMiniGameScore_cFv = .text:0x80291410; // type:function size:0x1A0
fn_802915B0__19dLytMiniGameScore_cFv = .text:0x802915B0; // type:function size:0x84
fn_80291640__19dLytMiniGameScore_cFv = .text:0x80291640; // type:function size:0x100
fn_80291740__19dLytMiniGameScore_cFv = .text:0x80291740; // type:function size:0xEC
startAlphaIn__19dLytMiniGameScore_cFv = .text:0x80291830; // type:function size:0xD0
startAlphaOut__19dLytMiniGameScore_cFv = .text:0x80291900; // type:function size:0x60
fn_80291960__19dLytMiniGameScore_cFv = .text:0x80291960; // type:function size:0xD0
fn_80291A30__19dLytMiniGameScore_cFv = .text:0x80291A30; // type:function size:0x110
startLoop__19dLytMiniGameScore_cFv = .text:0x80291B40; // type:function size:0x54
fn_80291BA0__19dLytMiniGameScore_cFl = .text:0x80291BA0; // type:function size:0x14
fn_80291BC0__19dLytMiniGameScore_cFv = .text:0x80291BC0; // type:function size:0x178
fn_80291D40__19dLytMiniGameScore_cFl = .text:0x80291D40; // type:function size:0x10C
fn_80291E50 = .text:0x80291E50; // type:function size:0x34
fn_80291E90 = .text:0x80291E90; // type:function size:0x34
fn_80291ED0 = .text:0x80291ED0; // type:function size:0x14
@@ -20849,7 +20849,7 @@ holdFinisherPromptSound__20dSndSmallEffectMgr_cFPCQ34nw4r4math4VEC3 = .text:0x80
playDowsingPingSound__20dSndSmallEffectMgr_cFff = .text:0x8037E860; // type:function size:0x148
holdDowsingNearestSound__20dSndSmallEffectMgr_cFv = .text:0x8037E9B0; // type:function size:0xC
playSirenCountdownSound__20dSndSmallEffectMgr_cFl = .text:0x8037E9C0; // type:function size:0x90
playMinigameCountdownSound__20dSndSmallEffectMgr_cFv = .text:0x8037EA50; // type:function size:0x8
playMinigameCountdownSound__20dSndSmallEffectMgr_cFl = .text:0x8037EA50; // type:function size:0x8
playMinigameTimeUpSound__20dSndSmallEffectMgr_cFl = .text:0x8037EA60; // type:function size:0x14
playMinigameStartSound__20dSndSmallEffectMgr_cFv = .text:0x8037EA80; // type:function size:0x8
playMinigameFinishSound__20dSndSmallEffectMgr_cFv = .text:0x8037EA90; // type:function size:0x40
+89 -58
View File
@@ -4,7 +4,9 @@
#include "common.h"
#include "d/d_base.h"
#include "d/lyt/d2d.h"
#include "d/lyt/d_textbox.h"
#include "m/m_vec.h"
#include "nw4r/lyt/lyt_pane.h"
/** 2D UI - Mini Game - Pumpkin score popup */
class dLytMiniGamePumpkinParts_c {
@@ -119,14 +121,6 @@ private:
bool isBug0Flashing() const;
bool areAllBugIconsOn() const;
const d2d::AnmGroup_c &getAnm(s32 idx) const {
return mAnm[idx];
}
d2d::AnmGroup_c &getAnm(s32 idx) {
return mAnm[idx];
}
static dLytMiniGameBugs_c *sInstance;
/* 0x004 */ d2d::LytBase_c mLyt;
@@ -164,9 +158,9 @@ private:
void fn_8028DE40();
void fn_8028DED0();
void fn_8028DFD0();
void fn_8028E0C0();
void fn_8028E170();
void fn_8028E1D0();
void startAlphaIn();
void startAlphaOut();
void startFinish();
void startLoop();
void setTimerValueInMilliSeconds(s32 time);
void updateLongTimer();
@@ -180,7 +174,7 @@ private:
void resetAlphaIn();
void resetAlphaOut();
void resetDigits();
void fn_8028EBB0();
void resetPosition();
void resetShowBestTime();
void resetFinish();
void resetLoop();
@@ -198,7 +192,7 @@ private:
bool isFinishEndReached() const;
void setHighestDigitIndex(u8);
void setSignChange(u32);
void fn_8028F240(bool);
void setTimePosition(bool);
void setBestHasSixDigits(bool);
void setDigit(s32 digitIndex, s32 number);
void setDigitBest(s32 digitIndex, s32 number);
@@ -221,7 +215,7 @@ private:
/* 0x7F5 */ bool mIsVisible;
};
/** 2D UI - Mini Game - Start Popup */
/** 2D UI - Mini Game - Start / Finish Popup */
class dLytMiniGameStart_c {
public:
dLytMiniGameStart_c() {}
@@ -234,31 +228,33 @@ public:
void init();
private:
static dLytMiniGameStart_c *sInstance;
void startCountdown();
void startCountdown120();
void startFinish();
void startTimeup();
bool isCountdownEndReached() const;
bool isFinishEndReached() const;
bool isTimeupEndReached() const;
void resetPlayedSounds();
void resetCountdown();
void resetFinish();
void resetStart();
void stopCountdown();
void stopFinish();
void stopTimeup();
bool checkCountdown3();
bool checkCountdown2();
bool checkCountdown1();
bool checkStart();
bool checkFinish();
bool checkTimeup();
void fn_8028F990();
void fn_8028F9E0();
void fn_8028FA40();
void fn_8028FA90();
void fn_8028FAE0();
void fn_8028FB40();
void fn_8028FBA0();
void fn_8028FC00();
void fn_8028FC20();
void fn_8028FC80();
void fn_8028FCE0();
void fn_8028FD40();
void fn_8028FD50();
void fn_8028FD60();
void fn_8028FD70();
void fn_8028FDC0();
void fn_8028FE10();
void fn_8028FE60();
void fn_8028FEB0();
void fn_8028FF00();
static dLytMiniGameStart_c *sInstance;
/* 0x004 */ d2d::LytBase_c mLyt;
/* 0x094 */ d2d::AnmGroup_c mAnm[3];
/* 0x154 */ bool mPlayedSounds[6];
/* 0x15A */ bool mIsVisible;
};
/** 2D UI - Mini Game - Score counter */
@@ -274,29 +270,27 @@ public:
void init();
private:
static dLytMiniGameScore_c *sInstance;
void fn_80291410();
void fn_802915B0();
void fn_80291640();
void fn_80291740();
void fn_80291830();
void fn_80291900();
void startAlphaIn();
void startAlphaOut();
void fn_80291960();
void fn_80291A30();
void fn_80291B40();
void fn_80291BA0();
void startLoop();
void fn_80291BA0(s32 score);
void fn_80291BC0();
void fn_80291D40();
void fn_80291E50();
void fn_80291D40(s32 arg);
bool fn_80291E50() const;
void fn_80291E90();
void fn_80291ED0();
void fn_80291EF0();
void fn_80292030();
void fn_80292030(s32);
void fn_80292040();
void fn_802920B0();
void fn_80292110();
void fn_802921A0();
void setDigit(s32 digitIndex, s32 number);
void fn_80292240();
void fn_80292250();
void fn_802922F0();
@@ -310,24 +304,61 @@ private:
void fn_80292880();
void fn_80292910();
void fn_80292920();
void fn_80292930();
bool fn_80292930() const;
void fn_80292940();
void fn_80292950();
void fn_802929C0();
void fn_80292A40();
void fn_80292A50();
void fn_80292AA0();
void fn_80292AF0();
void fn_80292B40();
void fn_80292B90();
void fn_80292BE0();
bool fn_80292A50() const;
bool fn_80292AA0() const;
bool fn_80292AF0() const;
bool fn_80292B40() const;
bool fn_80292B90() const;
bool fn_80292BE0() const;
void fn_80292C30();
void fn_802933A0();
void fn_802933A0(s32 variant);
void fn_80293410();
void fn_80293450();
void fn_80293450(s32);
static dLytMiniGameScore_c *sInstance;
/* 0x004 */ d2d::LytBase_c mLyt;
/* 0x094 */ d2d::AnmGroup_c mAnm[26];
/* 0x714 */ nw4r::lyt::Pane *mpPanes[20];
/* 0x764 */ f32 mFloats[26];
/* 0x7CC */ dTextBox_c *mpTextBoxes[3];
/* 0x7D8 */ s32 field_0x7D8;
/* 0x7DC */ UNKWORD field_0x7DC;
/* 0x7E0 */ s32 field_0x7E0;
/* 0x7E4 */ UNKWORD field_0x7E4;
/* 0x7E8 */ f32 field_0x7E8;
/* 0x7EC */ u8 _0x7EC[0x7FC - 0x7EC];
/* 0x7FC */ s32 field_0x7FC;
/* 0x800 */ s32 field_0x800;
/* 0x804 */ bool field_0x804;
/* 0x808 */ s32 field_0x808;
/* 0x80C */ s32 field_0x80C;
/* 0x810 */ s32 field_0x810;
/* 0x814 */ bool field_0x814;
/* 0x815 */ bool field_0x815;
/* 0x816 */ bool field_0x816;
/* 0x818 */ s32 field_0x818;
/* 0x81C */ s32 field_0x81C;
/* 0x820 */ bool field_0x820;
/* 0x824 */ s32 field_0x824;
/* 0x829 */ bool field_0x828;
/* 0x829 */ bool field_0x829;
/* 0x82C */ UNKWORD field_0x82C;
/* 0x830 */ s32 field_0x830;
/* 0x834 */ f32 field_0x834[3][2];
/* 0x84C */ bool mIsVisible;
};
/** 2D UI - Mini Game - Fun Fun Island score */
@@ -342,6 +373,9 @@ public:
bool draw();
void init();
private:
static dLytMiniGameScoreSd_c *sInstance;
void fn_80293A30();
void fn_80293A90();
void fn_80293AF0();
@@ -358,9 +392,6 @@ public:
void fn_80294030();
void fn_80294080();
private:
static dLytMiniGameScoreSd_c *sInstance;
/* 0x004 */ d2d::LytBase_c mLyt;
/* 0x094 */ d2d::AnmGroup_c mAnm[5];
};
@@ -436,7 +467,7 @@ private:
/* 0x33E4 */ dLytMiniGamePumpkin_c mPumpkin;
// TODO
u8 _0x___[0x14E];
u8 _0x___[0xA];
bool field_0x3866;
};
+1 -1
View File
@@ -56,7 +56,7 @@ public:
bool holdDowsingNearestSound();
bool playSirenCountdownSound(s32 timer);
bool playMinigameCountdownSound();
bool playMinigameCountdownSound(s32 timer); ///< timer is unused
bool playMinigameTimeUpSound(s32 timer);
bool playMinigameStartSound();
bool playMinigameFinishSound();
+4
View File
@@ -318,6 +318,10 @@ public:
return mVec2_c(x * f, y * f);
}
mVec2_c operator/(f32 f) const {
return mVec2_c(x / f, y / f);
}
mVec2_c operator+(const mVec2_c &v) const {
return mVec2_c(x + v.x, y + v.y);
}
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -483,7 +483,7 @@ bool dSndSmallEffectMgr_c::playSirenCountdownSound(s32 timer) {
return ok;
}
bool dSndSmallEffectMgr_c::playMinigameCountdownSound() {
bool dSndSmallEffectMgr_c::playMinigameCountdownSound(s32 timer) {
return playSoundInternal(SE_S_MG_COUNT_DOWN_1);
}