- 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

@ -1177,7 +1177,7 @@ static int PatchFrame (int frameNum)
{
if (memcmp (OrgSprNames[val], sprites[i].name, 4) == 0)
{
info->sprite.index = (int)i;
info->sprite = (int)i;
break;
}
}
@ -1217,11 +1217,10 @@ static int PatchFrame (int frameNum)
{
Printf ("Frame %d: Subnumber must be in range [0,63]\n", frameNum);
}
info->Tics = (tics+1) & 255;
info->Misc1 = ((tics+1)>>8) | misc1;
info->Tics = tics;
info->Misc1 = misc1;
info->Frame = (frame & 0x3f) |
(frame & 0x8000 ? SF_FULLBRIGHT : 0) |
(tics > 254 ? SF_BIGTIC : 0);
(frame & 0x8000 ? SF_FULLBRIGHT : 0);
}
return result;