- allow SNDINFO to declare sound mappings by using 'sounda = soundfle'.

This works similar to MAPINFO: The first definition in a file declares the format, all later ones must be the same.
This change in syntax increases robustness significantly because it avoids the problems with the original syntax not being able to detect badly formatted names.
This commit is contained in:
Christoph Oelckers 2022-11-24 08:31:45 +01:00
parent f7f67114ed
commit 419e593a4c
2 changed files with 11 additions and 1 deletions

View file

@ -799,6 +799,7 @@ static void S_AddSNDINFO (int lump)
auto &S_sfx = soundEngine->GetSounds(); auto &S_sfx = soundEngine->GetSounds();
bool skipToEndIf; bool skipToEndIf;
TArray<uint32_t> list; TArray<uint32_t> list;
int wantassigns = -1;
FScanner sc(lump); FScanner sc(lump);
skipToEndIf = false; skipToEndIf = false;
@ -1247,6 +1248,15 @@ static void S_AddSNDINFO (int lump)
else else
{ // Got a logical sound mapping { // Got a logical sound mapping
FString name (sc.String); FString name (sc.String);
if (wantassigns == -1)
{
wantassigns = sc.CheckString("=");
}
else if (wantassigns)
{
sc.MustGetStringName("=");
}
sc.MustGetString (); sc.MustGetString ();
S_AddSound (name, sc.String, &sc); S_AddSound (name, sc.String, &sc);
} }

View file

@ -2822,7 +2822,7 @@ OptionValue "os_isanyof_values"
OptionMenu "vkoptions" OptionMenu "vkoptions"
{ {
Title "$VK_TITLE" Title "$VK_TITLE"
StaticText "$VK_WARNING" //StaticText "$VK_WARNING"
StaticText "$VK_RESTART" StaticText "$VK_RESTART"
StaticText "" StaticText ""
TextField "$VKMNU_DEVICE", vk_device TextField "$VKMNU_DEVICE", vk_device