- Converted the Heretic sound sequences and the particle fountains to DECORATE.
- Added DECORATE support for setting an actor's args. If this is done it will also disable the actor's special that can be set in a map. This is for actors that want to use A_CountdownArg or similar functions that use the args for something different than the special's parameters. - Converted a_sharedmisc.cpp to DECORATE. - Added a new NActorIterator that can search for classes specified by name. - Added a new constructor to TThinkerIterator that can search for DECORATE defined subclasses that are not represented by a real C++ class. - Fixed: BuildInfoDefaults must set the parent symbol table so that all actors can get to the global symbols stored in AActor. - Fixed some minor inconsistencies in the Arch-Vile's DECORATE definition. - Fixed: A_VileAttack moved the flame without relinking it into the sector lists. It also forgot to set the z-position correctly. (original Doom bug.) - Fixed: The Doom 2 cast finale didn't work with the dynamic state name handling. SVN r401 (trunk)
This commit is contained in:
parent
ca8765ed79
commit
c7644ca34e
26 changed files with 304 additions and 328 deletions
|
|
@ -2933,6 +2933,20 @@ static void ActorScale (AActor *defaults, Baggage &bag)
|
|||
defaults->scaleX= defaults->scaleY = FLOAT2FIXED(sc_Float);
|
||||
}
|
||||
|
||||
//==========================================================================
|
||||
//
|
||||
//==========================================================================
|
||||
static void ActorArgs (AActor *defaults, Baggage &bag)
|
||||
{
|
||||
for (int i=0;i<5;i++)
|
||||
{
|
||||
SC_MustGetNumber();
|
||||
defaults->args[i] = sc_Number;
|
||||
if (i < 4 && !SC_CheckToken(',')) break;
|
||||
}
|
||||
defaults->flags2|=MF2_ARGSDEFINED;
|
||||
}
|
||||
|
||||
//==========================================================================
|
||||
//
|
||||
//==========================================================================
|
||||
|
|
@ -3508,7 +3522,8 @@ static void ActorVSpeed (AActor *defaults, Baggage &bag)
|
|||
//==========================================================================
|
||||
static void ActorClearFlags (AActor *defaults, Baggage &bag)
|
||||
{
|
||||
defaults->flags=defaults->flags2=defaults->flags3=defaults->flags4=defaults->flags5=0;
|
||||
defaults->flags=defaults->flags3=defaults->flags4=defaults->flags5=0;
|
||||
defaults->flags2&=MF2_ARGSDEFINED; // this flag must not be cleared
|
||||
}
|
||||
|
||||
//==========================================================================
|
||||
|
|
@ -4300,6 +4315,7 @@ static const ActorProps props[] =
|
|||
{ "ammo.backpackamount", (apf)AmmoBackpackAmount, RUNTIME_CLASS(AAmmo) },
|
||||
{ "ammo.backpackmaxamount", (apf)AmmoBackpackMaxAmount, RUNTIME_CLASS(AAmmo) },
|
||||
{ "ammo.dropamount", (apf)AmmoDropAmount, RUNTIME_CLASS(AAmmo) },
|
||||
{ "args", ActorArgs, RUNTIME_CLASS(AActor) },
|
||||
{ "armor.maxsaveamount", (apf)ArmorMaxSaveAmount, RUNTIME_CLASS(ABasicArmorBonus) },
|
||||
{ "armor.saveamount", (apf)ArmorSaveAmount, RUNTIME_CLASS(AActor) },
|
||||
{ "armor.savepercent", (apf)ArmorSavePercent, RUNTIME_CLASS(AActor) },
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue