diff options
| author | robojumper <robojumper@gmail.com> | 2025-06-05 21:58:13 +0200 |
|---|---|---|
| committer | robojumper <robojumper@gmail.com> | 2025-06-05 21:58:13 +0200 |
| commit | ed0f2fed88a7ab36c3b323d64f0c45a4aaa09a9b (patch) | |
| tree | d1d48ea79a957a893b3bf6599e55cdb830e121e8 /include | |
| parent | e9c5e4c46c7b61304e6962097e0c828721f895fd (diff) | |
Fixes
Diffstat (limited to 'include')
| -rw-r--r-- | include/d/snd/d_snd_player_mgr.h | 32 | ||||
| -rw-r--r-- | include/d/snd/d_snd_source.h | 1 | ||||
| -rw-r--r-- | include/nw4r/snd/snd_SoundPlayer.h | 1 | ||||
| -rw-r--r-- | include/toBeSorted/music_mgrs.h | 3 |
4 files changed, 37 insertions, 0 deletions
diff --git a/include/d/snd/d_snd_player_mgr.h b/include/d/snd/d_snd_player_mgr.h index d5c877eb..d803ab70 100644 --- a/include/d/snd/d_snd_player_mgr.h +++ b/include/d/snd/d_snd_player_mgr.h @@ -13,6 +13,8 @@ SND_DISPOSER_FORWARD_DECL(dSndPlayerMgr_c); /** * The main interface for managing sound stuff. Will delegate to dSndMgr_c for * most things, but handles demo (cutscene) sound effects (SE_DEMO*) by itself. + * + * Previous Ghidra name: BgmMgr */ class dSndPlayerMgr_c { public: @@ -24,6 +26,16 @@ public: void shutdown(); void calc(); + void enterMenu(); + void leaveMenu(); + void enterMap(); + void leaveMap(); + void enterHelp(); + void leaveHelp(); + + void enterHbm(); + void leaveHbm(); + u32 getFreeSize(); bool loadDemoArchive(const char *demoArchiveName); const char *getSoundArchivePath(); @@ -32,10 +44,26 @@ public: nw4r::snd::SoundArchivePlayer &getSoundArchivePlayerForType(u8 type); bool canUseThisPlayer(u8 type) const; + enum PlayerMgrFlag_e { + MGR_HBM = 0x1, + MGR_UNK_0x2 = 0x2, + MGR_PAUSE = 0x4, + MGR_MAP = 0x8, + MGR_HELP = 0x10, + }; + bool checkFlag(u32 mask) const { return mFlags & mask; } + void onFlag(u32 mask) { + mFlags |= mask; + } + + void offFlag(u32 mask) { + mFlags &= ~mask; + } + u32 getEventMuteMask(u32 id) { nw4r::snd::SoundArchive *archive; if (mSoundArchivePlayer.IsAvailable()) { @@ -124,6 +152,10 @@ private: /* 0x01C */ s32 field_0x01C; /* 0x020 */ u32 mFlags; + // system menu, inventory, map + void enterPauseState(); + void leavePauseState(); + virtual nw4r::snd::SoundStartable::StartResult startSound(nw4r::snd::SoundHandle *pHandle, u32 soundId, const nw4r::snd::SoundStartable::StartInfo *pStartInfo); virtual nw4r::snd::SoundStartable::StartResult startSound( diff --git a/include/d/snd/d_snd_source.h b/include/d/snd/d_snd_source.h index d732e924..1b2ca525 100644 --- a/include/d/snd/d_snd_source.h +++ b/include/d/snd/d_snd_source.h @@ -99,6 +99,7 @@ private: /* 0x154 */ UNKWORD field_0x154; /* 0x158 */ s16 field_0x158; /* 0x15A */ s16 field_0x15A; + /* 0x15C */ nw4r::ut::Node mNode2; }; #endif diff --git a/include/nw4r/snd/snd_SoundPlayer.h b/include/nw4r/snd/snd_SoundPlayer.h index 90b56ed0..52382946 100644 --- a/include/nw4r/snd/snd_SoundPlayer.h +++ b/include/nw4r/snd/snd_SoundPlayer.h @@ -10,6 +10,7 @@ #include "nw4r/snd/snd_BasicSound.h" #include "nw4r/snd/snd_global.h" // AUX_BUS_NUM #include "nw4r/snd/snd_PlayerHeap.h" +#include "nw4r/snd/snd_SoundHandle.h" /******************************************************************************* * classes diff --git a/include/toBeSorted/music_mgrs.h b/include/toBeSorted/music_mgrs.h index 1efa7fe0..8d255eb8 100644 --- a/include/toBeSorted/music_mgrs.h +++ b/include/toBeSorted/music_mgrs.h @@ -33,6 +33,9 @@ extern "C" void *ENEMY_BGM_RELATED_MGR; extern "C" void fn_80384570(void *, bool); extern "C" void fn_803858D0(void *); + +// This one has a SoundActor that actually plays the BGM_ music tracks, +// including the battle BGM track. extern "C" void *FANFARE_SOUND_MGR; extern "C" void AnotherSoundMgr__playSound(void *, s32); extern "C" bool fn_803721F0(void *, u32); |
