A few funcs

This commit is contained in:
robojumper
2025-07-04 22:45:02 +02:00
parent a8690716e6
commit 35b3d2a787
8 changed files with 316 additions and 33 deletions
+4
View File
@@ -45,6 +45,9 @@ public:
void muteAllWorldSounds(s32 fadeFrames);
void unmuteAllWorldSounds(s32 fadeFrames);
void muteScenePlayers(s32 frames);
void unmuteScenePlayers(s32 frames);
enum MuteLevel {
MUTE_FULL = 0,
MUTE_PARTIAL = 1,
@@ -75,6 +78,7 @@ public:
void setPlayerVolumeInternal(u32 playerIdx, f32 volume);
private:
void unmutePlayer(u32 playerIdx, s32 frames);
void resetControls();
void calcVolumes();
void calcMuteFlags();
+13 -3
View File
@@ -58,6 +58,13 @@ public:
void enterMsgWait();
void leaveMsgWait();
void setupState0();
void popToState0();
void saveState1();
void popToState1();
void saveState2();
void popToState2();
u32 getFreeSize();
bool loadDemoArchive(const char *demoArchiveName);
const char *getSoundArchivePath();
@@ -180,15 +187,18 @@ public:
private:
/* 0x010 */ u8 field_0x010;
/* 0x011 */ u8 field_0x011;
/* 0x014 */ s32 field_0x014;
/* 0x018 */ s32 field_0x018;
/* 0x01C */ s32 field_0x01C;
/* 0x014 */ s32 mState0;
/* 0x018 */ s32 mState1;
/* 0x01C */ s32 mState2;
/* 0x020 */ u32 mFlags;
// system menu, inventory, map
void enterPauseState();
void leavePauseState();
void initialize();
void createFileManager();
virtual nw4r::snd::SoundStartable::StartResult
startSound(nw4r::snd::SoundHandle *pHandle, u32 soundId, const nw4r::snd::SoundStartable::StartInfo *pStartInfo);
virtual nw4r::snd::SoundStartable::StartResult startSound(
+23
View File
@@ -110,6 +110,29 @@ public:
void doMsgWaitStart();
void doMsgWaitEnd();
// TODO better names
static const char *getStageName(s32 id);
const char *getStageName4(s32 id);
const char *getCurrentStageName4();
static s32 getSndStageId(const char *stageName, s32 layer);
static s32 getSndStageId3(const char *stageName, s32 layer);
static s32 getSndStageId4(const char *stageName, s32 layer);
static s32 getSndStageId2(s32 id);
static s32 getSndStageId4(s32 id);
static s32 getNextSndStageId(s32 id);
static bool specialLayerVersionExists(const char *stageName, s32 layer);
enum SoundIdLookup_e {
LOOKUP_BGM,
LOOKUP_BGM_MAIN,
LOOKUP_SE_A,
};
u32 getSoundIdForStageAndLayer(SoundIdLookup_e lookup, const char *stageName, s32 layer, s32 stageId);
private:
void resetOverrides();
void initializeEventCallbacks(const char *name);
@@ -227,6 +227,11 @@ namespace nw4r { namespace snd
detail::BasicSound::AmbientInfo *ambientArgInfo, SoundActor *actor,
bool holdFlag, SoundStartable::StartInfo const *startInfo);
// Made up
void detail_SetFileManager(SoundArchivePlayer_FileManager *manager) {
mFileManager = manager;
}
private:
template <typename Sound>
Sound *AllocSound(