- Removed DECORATE's ParseClass because it was only used to add data to fully

internal actor classes which no longer exist.
- Changed the state structure so that the Tics value doesn't need to be hacked
  into misc1 with SF_BIGTIC anymore. 
- Changed sprite processing so that sprite names are converted to indices 
  during parsing so that an additional postprocessing step is no longer needed.
- Fixed: Sprite names in DECORATE were case sensitive.
- Exported AActor's defaults to DECORATE and removed all code for the 
  internal property parser which is no longer needed.


SVN r1146 (trunk)
This commit is contained in:
Christoph Oelckers 2008-08-10 14:19:47 +00:00
commit f4c07c45ec
33 changed files with 484 additions and 1662 deletions

View file

@ -439,7 +439,7 @@ void APlayerPawn::BeginPlay ()
// This assumes that player sprites always exist in rotated form and
// that the front view is always a separate sprite. So far this is
// true for anything that exists.
FString normspritename = sprites[SpawnState->sprite.index].name;
FString normspritename = sprites[SpawnState->sprite].name;
FString crouchspritename = sprites[crouchsprite].name;
int spritenorm = Wads.CheckNumForName(normspritename + "A1", ns_sprites);
@ -1081,8 +1081,7 @@ void APlayerPawn::Die (AActor *source, AActor *inflictor)
AInventory *item;
if (weap->SpawnState != NULL &&
weap->SpawnState != &AActor::States[0] &&
weap->SpawnState != &AActor::States[AActor::S_NULL])
weap->SpawnState != ::GetDefault<AActor>()->SpawnState)
{
item = P_DropItem (this, weap->GetClass(), -1, 256);
if (item != NULL)
@ -1322,7 +1321,7 @@ void P_CheckPlayerSprites()
if (player->crouchfactor < FRACUNIT*3/4)
{
if (mo->sprite == mo->SpawnState->sprite.index || mo->sprite == mo->crouchsprite)
if (mo->sprite == mo->SpawnState->sprite || mo->sprite == mo->crouchsprite)
{
crouchspriteno = mo->crouchsprite;
}
@ -1351,7 +1350,7 @@ void P_CheckPlayerSprites()
{
if (mo->sprite == mo->crouchsprite)
{
mo->sprite = mo->SpawnState->sprite.index;
mo->sprite = mo->SpawnState->sprite;
}
else if (mo->sprite == skins[player->userinfo.skin].crouchsprite)
{