- Allow defaultenvironment to take names as well as numeric IDs.

SVN r2262 (trunk)
This commit is contained in:
Randy Heit 2010-03-31 23:33:18 +00:00
commit 69c777df4c
3 changed files with 24 additions and 7 deletions

View file

@ -1256,11 +1256,27 @@ DEFINE_MAP_OPTION(defaultenvironment, false)
int id;
parse.ParseAssign();
parse.sc.MustGetNumber();
id = parse.sc.Number << 8;
if (parse.CheckNumber())
{
id |= parse.sc.Number;
if (parse.sc.CheckNumber())
{ // Numeric ID XXX [, YYY]
id = parse.sc.Number << 8;
if (parse.CheckNumber())
{
id |= parse.sc.Number;
}
}
else
{ // Named environment
parse.sc.MustGetString();
ReverbContainer *reverb = S_FindEnvironment(parse.sc.String);
if (reverb == NULL)
{
parse.sc.ScriptMessage("Unknown sound environment '%s'\n", parse.sc.String);
id = 0;
}
else
{
id = reverb->ID;
}
}
info->DefaultEnvironment = id;
}