mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2025-01-30 23:10:14 -05:00
Adds option for showing sequence names on the overlay (#2237)
* Adds option for showing sequence names on the overlay Allows sequences to appear on the overlay in the bottom right corner for a few seconds whenever a new one is loaded into the primary sequence player. This means it does not apply to fanfares or enemy bgm. Fanfares I chose not to display because it would cause a lot of text to display back to back in some areas, and enemy bgm would have some technical challenges with this due to the way it loads. Mainly because the Lost Woods music would load in Goron City the same way (as well as the opposite). * Fixes crash when a sequence without a name is attempted to be displayed. * Removes accidentally committed CMakeSettings.json * Updates CVar_GetS32 to CVarGetInteger
This commit is contained in:
parent
edceb2d460
commit
a335aba987
@ -384,6 +384,14 @@ extern "C" u16 SfxEditor_GetReverseReplacementSeq(u16 seqId) {
|
|||||||
return static_cast<u16>(seqId);
|
return static_cast<u16>(seqId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
extern "C" const char* SfxEditor_GetSequenceName(u16 seqId) {
|
||||||
|
if (sfxEditorSequenceMap.contains(seqId)) {
|
||||||
|
const char *name = std::get<0>(sfxEditorSequenceMap.at(seqId)).c_str();
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
void DrawSfxEditor(bool& open) {
|
void DrawSfxEditor(bool& open) {
|
||||||
if (!open) {
|
if (!open) {
|
||||||
CVarSetInteger("gSfxEditor", 0);
|
CVarSetInteger("gSfxEditor", 0);
|
||||||
@ -435,6 +443,11 @@ void DrawSfxEditor(bool& open) {
|
|||||||
UIWidgets::InsertHelpHoverText(
|
UIWidgets::InsertHelpHoverText(
|
||||||
"Disables the music change when getting close to enemies. Useful for hearing "
|
"Disables the music change when getting close to enemies. Useful for hearing "
|
||||||
"your custom music for each scene more often.");
|
"your custom music for each scene more often.");
|
||||||
|
UIWidgets::EnhancementCheckbox("Display Sequence Name on Overlay", "gSeqNameOverlay");
|
||||||
|
UIWidgets::InsertHelpHoverText(
|
||||||
|
"Displays the name of the current sequence in the corner of the screen whenever a new sequence "
|
||||||
|
"is loaded to the main sequence player (does not apply to fanfares or enemy BGM)."
|
||||||
|
);
|
||||||
UIWidgets::PaddedSeparator();
|
UIWidgets::PaddedSeparator();
|
||||||
UIWidgets::PaddedText("The following options are experimental and may cause music\nto sound odd or have other undesireable effects.");
|
UIWidgets::PaddedText("The following options are experimental and may cause music\nto sound odd or have other undesireable effects.");
|
||||||
UIWidgets::EnhancementCheckbox("Lower Octaves of Unplayable High Notes", "gExperimentalOctaveDrop");
|
UIWidgets::EnhancementCheckbox("Lower Octaves of Unplayable High Notes", "gExperimentalOctaveDrop");
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
|
|
||||||
void InitSfxEditor();
|
void InitSfxEditor();
|
||||||
#ifndef __cplusplus
|
#ifndef __cplusplus
|
||||||
|
const char* SfxEditor_GetSequenceName(u16 seqId);
|
||||||
void SfxEditor_AddSequence(char *otrPath, uint16_t seqNum);
|
void SfxEditor_AddSequence(char *otrPath, uint16_t seqNum);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -612,6 +612,12 @@ s32 AudioLoad_SyncInitSeqPlayerInternal(s32 playerIdx, s32 seqId, s32 arg2) {
|
|||||||
seqPlayer->playerIdx = playerIdx;
|
seqPlayer->playerIdx = playerIdx;
|
||||||
AudioSeq_SkipForwardSequence(seqPlayer);
|
AudioSeq_SkipForwardSequence(seqPlayer);
|
||||||
//! @bug missing return (but the return value is not used so it's not UB)
|
//! @bug missing return (but the return value is not used so it's not UB)
|
||||||
|
if (CVarGetInteger("gSeqNameOverlay", 0) && playerIdx == SEQ_PLAYER_BGM_MAIN) {
|
||||||
|
const char* sequenceName = SfxEditor_GetSequenceName(seqId);
|
||||||
|
if (sequenceName != NULL) {
|
||||||
|
Overlay_DisplayText(5.0f, sequenceName);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
u8* AudioLoad_SyncLoadSeq(s32 seqId) {
|
u8* AudioLoad_SyncLoadSeq(s32 seqId) {
|
||||||
|
Loading…
Reference in New Issue
Block a user