- Added the ACS commands

ReplaceTextures (str old_texture, str new_texture, optional bool not_lower,
      optional bool not_mid, optional bool not_upper, optional bool not_floor,
      optional bool not_ceiling); and
  SectorDamage (int tag, int amount, str type, bool players_only, bool in_air,
      str protection_item, bool subclasses_okay);
- Added the vid_nowidescreen cvar to disable widescreen aspect ratio
  correction. When this is enabled, the only display ratio available is 4:3
  (and 5:4 if vid_tft is set).
- Added support for setting an actor's damage property to an expression
  through decorate. Just enclose it within parentheses, and the expression
  will be evaluated exactly as-is without the normal Doom damage calculation.
  So if you want something that does exactly 6 damage, use a "Damage (6)"
  property. To deal normal Doom missile damage, you can use
  "Damage (random(1,8)*6)" instead of "Damage 6".
- Moved InvFirst and InvSel into APlayerPawn so that they can be consistantly
  maintained by ObtainInventory.


SVN r288 (trunk)
This commit is contained in:
Randy Heit 2006-08-12 02:30:57 +00:00
commit b25c7722f3
30 changed files with 369 additions and 180 deletions

View file

@ -2365,8 +2365,22 @@ static void ActorPainChance (AActor *defaults, Baggage &bag)
//==========================================================================
static void ActorDamage (AActor *defaults, Baggage &bag)
{
SC_MustGetNumber();
defaults->damage=sc_Number;
// Damage can either be a single number, in which case it is subject
// to the original damage calculation rules. Or, it can be an expression
// and will be calculated as-is, ignoring the original rules. For
// compatibility reasons, expressions must be enclosed within
// parentheses.
if (SC_CheckString ("("))
{
SC_UnGet();
defaults->Damage = 0x40000000 | ParseExpression (false);
}
else
{
SC_MustGetNumber ();
defaults->Damage = sc_Number;
}
}
//==========================================================================