summaryrefslogtreecommitdiff
path: root/include/toBeSorted
diff options
context:
space:
mode:
authorrobojumper <robojumper@gmail.com>2025-05-09 18:28:45 +0200
committerrobojumper <robojumper@gmail.com>2025-05-10 22:20:16 +0200
commit4c5dede891ea0934d77bfcee8f50f9702c949031 (patch)
treeffac19613501deb82a6bdced221111510fe6feb4 /include/toBeSorted
parent378c19269740113da8ca3fc4579ea6fd1d6d946e (diff)
d_message OK (via dFlow_c)
Diffstat (limited to 'include/toBeSorted')
-rw-r--r--include/toBeSorted/blur_and_palette_manager.h2
-rw-r--r--include/toBeSorted/fi_context.h141
-rw-r--r--include/toBeSorted/global_fi_context.h17
-rw-r--r--include/toBeSorted/music_mgrs.h5
-rw-r--r--include/toBeSorted/unk_save_time.h27
5 files changed, 175 insertions, 17 deletions
diff --git a/include/toBeSorted/blur_and_palette_manager.h b/include/toBeSorted/blur_and_palette_manager.h
index b7af8384..b86394dd 100644
--- a/include/toBeSorted/blur_and_palette_manager.h
+++ b/include/toBeSorted/blur_and_palette_manager.h
@@ -231,6 +231,8 @@ public:
}
void fn_800223A0(void *);
void fn_80022440(void *);
+ // light pillar related
+ void fn_80024240(s16, s16, s16);
u8 get0x2DE8() const {
return field_0x2DE0[8];
diff --git a/include/toBeSorted/fi_context.h b/include/toBeSorted/fi_context.h
new file mode 100644
index 00000000..6f3f8cd7
--- /dev/null
+++ b/include/toBeSorted/fi_context.h
@@ -0,0 +1,141 @@
+#ifndef FI_CONTEXT_H
+#define FI_CONTEXT_H
+
+#include "common.h"
+
+struct FiAnalysisEntry {
+ /* 0x00 */ const char *mStageName;
+ /* 0x04 */ u16 mStoryFlag;
+ /* 0x06 */ s16 mKen3MonsterPresenceEntry;
+ /* 0x08 */ u8 mSuitabilityPercent[4];
+ /* 0x0C */ u16 mKen3SuitabilityAnalysis[4];
+ /* 0x14 */ s16 mShieldType;
+ /* 0x16 */ s16 mShieldMessage;
+};
+
+class FiAnalysisHandle {
+public:
+ s16 getEquipmentFocus() const;
+ s16 getAreaIndexForFiAreaName() const;
+ s32 getSuitabilityArg() const;
+ s16 getSuitabilityLabel() const;
+ s16 getShieldMessage();
+ s16 shieldRelated();
+
+ bool isValid() const;
+
+private:
+ FiAnalysisEntry *mpEntry;
+};
+
+class FiContext {
+public:
+ static void create();
+ static s32 getGlobalFiInfo0(s32);
+ static FiAnalysisHandle getNaviTableEquipmentCheckEntry();
+ static u8 rateBattlePerformance(u8 enemyActorId);
+ static s16 getNaviTableProgressSummary();
+ static s16 getFiAdviceHintEntry();
+ static s16 getUnkObjectiveValue();
+
+ bool getDoSpecialFiMenuHandling() const {
+ return mDoSpecialFiMenuHandling;
+ }
+
+ static bool getDoSpecialFiMenuHandlingChecked() {
+ if (sInstance != nullptr) {
+ return sInstance->getDoSpecialFiMenuHandling();
+ } else {
+ return false;
+ }
+ }
+
+ static void setDoSpecialFiMenuHandling(bool val) {
+ if (sInstance != nullptr) {
+ sInstance->mDoSpecialFiMenuHandling = val;
+ }
+ }
+
+ static const wchar_t *getMessageForFiInfo(s32 arg) {
+ return getTextMessage(getGlobalFiInfo0(arg));
+ }
+
+ static FiContext *GetInstance() {
+ return sInstance;
+ }
+
+ static void setField_0x48(bool val) {
+ if (sInstance != nullptr) {
+ sInstance->field_0x48 = val;
+ }
+ }
+
+ static void setField_0x4A(bool val) {
+ if (sInstance != nullptr) {
+ sInstance->field_0x4A = val;
+ }
+ }
+
+ static s32 getHelpIndex() {
+ if (sInstance != nullptr) {
+ return sInstance->mFiHelpIndex;
+ } else {
+ return -1;
+ }
+ }
+
+ static s32 getTargetActorId() {
+ if (sInstance != nullptr) {
+ return sInstance->mTargetActorId;
+ } else {
+ return -1;
+ }
+ }
+
+ static void do_fn_8016CB00(s32 arg) {
+ if (sInstance != nullptr) {
+ sInstance->fn_8016CB00(arg);
+ }
+ }
+
+ static void do_fn_8016CB40() {
+ if (sInstance != nullptr) {
+ sInstance->fn_8016CB40();
+ }
+ }
+
+ static void do_fn_8016CA00() {
+ if (sInstance != nullptr) {
+ sInstance->fn_8016CA00();
+ }
+ }
+
+ static void do_fn_8016CB20() {
+ if (sInstance != nullptr) {
+ sInstance->fn_8016CB20();
+ }
+ }
+
+ void resetField_0x3C();
+
+ static const wchar_t *getTextMessage(s32 idx);
+
+private:
+ static FiContext *sInstance;
+
+ void fn_8016CB00(s32);
+ void fn_8016CB40();
+ void fn_8016CA00();
+ void fn_8016CB20();
+
+ /* 0x00 */ u8 _0x00[0x34 - 0x00];
+ /* 0x34 */ s32 mTargetActorId;
+ /* 0x38 */ s32 mFiHelpIndex;
+ /* 0x3C */ u8 _0x3C[0x48 - 0x3C];
+ /* 0x48 */ bool field_0x48;
+ /* 0x49 */ bool field_0x49;
+ /* 0x4A */ bool field_0x4A;
+ /* 0x4B */ bool mDoSpecialFiMenuHandling;
+};
+
+#endif
diff --git a/include/toBeSorted/global_fi_context.h b/include/toBeSorted/global_fi_context.h
deleted file mode 100644
index 585f416d..00000000
--- a/include/toBeSorted/global_fi_context.h
+++ /dev/null
@@ -1,17 +0,0 @@
-#ifndef GLOBAL_FI_CONTEXT_H
-#define GLOBAL_FI_CONTEXT_H
-
-#include "common.h"
-
-struct FiContext {
- /* 0x00 */ u8 _0x00[0x4B - 0x00];
- /* 0x4B */ bool mDoSpecialFiMenuHandling;
-
- static s32 getGlobalFiInfo0(s32);
-};
-
-extern "C" FiContext *GLOBAL_FI_CONTEXT;
-extern "C" void fn_8016C9F0(FiContext *);
-extern "C" void createGlobalFiContext();
-
-#endif
diff --git a/include/toBeSorted/music_mgrs.h b/include/toBeSorted/music_mgrs.h
index 7beeb58e..cbd56564 100644
--- a/include/toBeSorted/music_mgrs.h
+++ b/include/toBeSorted/music_mgrs.h
@@ -17,8 +17,13 @@ extern "C" void fn_803618F0(void *);
extern "C" void fn_80362730(void *);
extern "C" void fn_80365D20(void *);
extern "C" void fn_803624F0(void *);
+extern "C" void fn_80364FD0(void *, s32);
extern "C" void *ENEMY_BGM_RELATED_MGR;
extern "C" void fn_80384570(void *, bool);
+extern "C" void fn_803858D0(void *);
+
+extern "C" void *FANFARE_SOUND_MGR;
+extern "C" void AnotherSoundMgr__playSound(void *, s32);
#endif
diff --git a/include/toBeSorted/unk_save_time.h b/include/toBeSorted/unk_save_time.h
new file mode 100644
index 00000000..ef947c35
--- /dev/null
+++ b/include/toBeSorted/unk_save_time.h
@@ -0,0 +1,27 @@
+#ifndef UNK_SAVE_TIME_H
+#define UNK_SAVE_TIME_H
+
+#include "common.h"
+
+class SaveTimeRelated {
+public:
+ static SaveTimeRelated *GetInstance() {
+ return sInstance;
+ }
+
+ s64 getField_0x08() const {
+ return field_0x08;
+ }
+
+ s64 fn_801907D0();
+ void fn_801907F0();
+ void fn_801909A0();
+
+private:
+ static SaveTimeRelated *sInstance;
+
+ /* 0x00 */ u8 _0x00[0x08 - 0x00];
+ /* 0x08 */ u64 field_0x08;
+};
+
+#endif