diff options
| author | robojumper <robojumper@gmail.com> | 2025-07-20 22:10:38 +0200 |
|---|---|---|
| committer | robojumper <robojumper@gmail.com> | 2025-09-13 11:10:28 +0200 |
| commit | 1be399e999307d9bd3fdffaf03618edefd5fdc84 (patch) | |
| tree | c6c44b2351b30f2cc0dad42d8b2555253bac3514 /include | |
| parent | ac846aea3e813fb9f03b3d491ccd15ac4646ac7d (diff) | |
d_snd_small_effect_mgr OK
Diffstat (limited to 'include')
| -rw-r--r-- | include/d/snd/d_snd_player_mgr.h | 6 | ||||
| -rw-r--r-- | include/d/snd/d_snd_small_effect_mgr.h | 3 | ||||
| -rw-r--r-- | include/d/snd/d_snd_state_mgr.h | 15 |
3 files changed, 23 insertions, 1 deletions
diff --git a/include/d/snd/d_snd_player_mgr.h b/include/d/snd/d_snd_player_mgr.h index da94dfd1..9b90a233 100644 --- a/include/d/snd/d_snd_player_mgr.h +++ b/include/d/snd/d_snd_player_mgr.h @@ -219,12 +219,18 @@ private: void initialize(); void createFileManager(); +public: virtual nw4r::snd::SoundStartable::StartResult startSound(nw4r::snd::SoundHandle *pHandle, u32 soundId, const nw4r::snd::SoundStartable::StartInfo *pStartInfo); virtual nw4r::snd::SoundStartable::StartResult startSound( nw4r::snd::SoundHandle *pHandle, const char *soundLabel, const nw4r::snd::SoundStartable::StartInfo *pStartInfo ); + nw4r::snd::SoundStartable::StartResult startDemoSound( + nw4r::snd::SoundHandle *pHandle, u32 soundId, const nw4r::snd::SoundStartable::StartInfo *pStartInfo + ); + +private: /* 0x028 */ nw4r::snd::MemorySoundArchive mDemoSoundArchive; /* 0x178 */ nw4r::snd::SoundArchivePlayer mDemoSoundArchivePlayer; }; diff --git a/include/d/snd/d_snd_small_effect_mgr.h b/include/d/snd/d_snd_small_effect_mgr.h index 3e55b06a..a47fc559 100644 --- a/include/d/snd/d_snd_small_effect_mgr.h +++ b/include/d/snd/d_snd_small_effect_mgr.h @@ -66,6 +66,7 @@ public: bool playMinigameMusasabiSound(s32 count); bool playSkbSound(u32 soundId); + bool playDemoSound(u32 soundId, nw4r::snd::SoundHandle *pHandle); bool playButtonPressSoundWhenAdvancingTextBoxes(f32); void resetButtonPressSound(); @@ -82,6 +83,8 @@ private: bool isPlayingSound(u32 playerIdx, u32 soundId); bool isPlayingSound(u32 soundId); + bool doSideEffects(u32 soundId); + void setBitsIfAdjacent(dSndBgmDataHarpVarSetBase_c *set, s32 count, s32 target, u32 *pMask); /** diff --git a/include/d/snd/d_snd_state_mgr.h b/include/d/snd/d_snd_state_mgr.h index cc8109d2..37f0ad57 100644 --- a/include/d/snd/d_snd_state_mgr.h +++ b/include/d/snd/d_snd_state_mgr.h @@ -34,6 +34,15 @@ public: STAGE_SILENT_GROUNDS = 0x200, }; + enum Flag0x10_e { + FLAG0x10_0x01 = 0x01, + FLAG0x10_0x02 = 0x02, + FLAG0x10_0x04 = 0x04, + FLAG0x10_0x08 = 0x08, + FLAG0x10_0x10 = 0x10, + }; + + // 0x94 enum EventFlags_e { EVENT_IN_EVENT = 0x1, EVENT_DEMO = 0x2, @@ -58,6 +67,10 @@ public: static bool isInStage(const char *stageName); + bool getField_0x064() const { + return field_0x064; + } + s32 getField_0x14() const { return field_0x014; } @@ -307,7 +320,7 @@ private: /* 0x058 */ s32 mLayer; /* 0x05C */ s32 mRoomId; /* 0x060 */ UNKWORD field_0x060; - /* 0x064 */ u8 field_0x064; + /* 0x064 */ bool field_0x064; /* 0x065 */ bool field_0x065; /* 0x066 */ bool mHasChangedTgSndAreaFlags; /* 0x067 */ bool mHasChangedTgSndAreaMgFlags; |
