- Fixed: Multiple-choice sound sequences could not be assigned IDs for use

with polyobjects and the sound sequence selector things.


SVN r311 (trunk)
This commit is contained in:
Randy Heit 2006-08-26 02:50:06 +00:00
parent cf3b1bfd6e
commit 1b879c61c2
2 changed files with 22 additions and 10 deletions

View file

@ -1,3 +1,7 @@
August 25, 2006
- Fixed: Multiple-choice sound sequences could not be assigned IDs for use
with polyobjects and the sound sequence selector things.
August 24, 2006 August 24, 2006
- Removed the 64 seg limit for polyobjects defined with Polyobj_ExplicitLine. - Removed the 64 seg limit for polyobjects defined with Polyobj_ExplicitLine.
- Polyobj_StartLine and Polyobj_ExplicitLine can now set a line's ID. This is - Polyobj_StartLine and Polyobj_ExplicitLine can now set a line's ID. This is

View file

@ -57,13 +57,14 @@ typedef enum
SS_STRING_END, SS_STRING_END,
SS_STRING_STOPSOUND, SS_STRING_STOPSOUND,
SS_STRING_ATTENUATION, SS_STRING_ATTENUATION,
SS_STRING_DOOR,
SS_STRING_PLATFORM,
SS_STRING_ENVIRONMENT,
SS_STRING_NOSTOPCUTOFF, SS_STRING_NOSTOPCUTOFF,
SS_STRING_SLOT, SS_STRING_SLOT,
SS_STRING_RANDOMSEQUENCE, SS_STRING_RANDOMSEQUENCE,
SS_STRING_RESTART, SS_STRING_RESTART,
// These must be last and in the same order as they appear in seqtype_t
SS_STRING_PLATFORM,
SS_STRING_DOOR,
SS_STRING_ENVIRONMENT
} ssstrings_t; } ssstrings_t;
typedef enum typedef enum
@ -190,13 +191,14 @@ static const char *SSStrings[] = {
"end", "end",
"stopsound", "stopsound",
"attenuation", "attenuation",
"door",
"platform",
"environment",
"nostopcutoff", "nostopcutoff",
"slot", "slot",
"randomsequence", "randomsequence",
"restart", "restart",
// These must be last and in the same order as they appear in seqtype_t
"platform",
"door",
"environment",
NULL NULL
}; };
static const char *Attenuations[] = { static const char *Attenuations[] = {
@ -529,11 +531,17 @@ void S_ParseSndSeq (int levellump)
else else
{ // Add a selection { // Add a selection
SC_UnGet(); SC_UnGet();
SC_MustGetNumber(); if (SC_CheckNumber())
{
ScriptTemp.Push (sc_Number); ScriptTemp.Push (sc_Number);
SC_MustGetString(); SC_MustGetString();
ScriptTemp.Push (FName(sc_String)); ScriptTemp.Push (FName(sc_String));
} }
else
{
AssignTranslations (curseq, seqtype_t(SC_MustMatchString (SSStrings + SS_STRING_PLATFORM)));
}
}
continue; continue;
} }
switch (SC_MustMatchString (SSStrings)) switch (SC_MustMatchString (SSStrings))