- Changed the PowerTimeFreezer "blink" effect back to checking against

EffectTics (now + 1), because I wasn't convinced of the correctness of
  using level.time.
- Fixed: SC_CheckNumber() considered the empty string "" as the number 0.


SVN r586 (trunk)
This commit is contained in:
Randy Heit 2007-12-08 22:29:59 +00:00
commit 351ed8dcd1
3 changed files with 17 additions and 8 deletions

View file

@ -1428,14 +1428,14 @@ void APowerTimeFreezer::DoEffect( )
{
return;
}
// [RH] The "blinking" needs to check against level.time, not EffectTics,
// or it will never happen, because InitEffect ensures that EffectTics will
// always be odd when level.time is even.
// [RH] The "blinking" can't check against EffectTics exactly or it will
// never happen, because InitEffect ensures that EffectTics will always
// be odd when level.time is even.
if ( EffectTics > 4*32
|| (( EffectTics > 3*32 && EffectTics <= 4*32 ) && (level.time & 15) != 0 )
|| (( EffectTics > 2*32 && EffectTics <= 3*32 ) && (level.time & 7) != 0 )
|| (( EffectTics > 32 && EffectTics <= 2*32 ) && (level.time & 3) != 0 )
|| (( EffectTics > 0 && EffectTics <= 1*32 ) && (level.time & 1) != 0 ))
|| (( EffectTics > 3*32 && EffectTics <= 4*32 ) && ((EffectTics + 1) & 15) != 0 )
|| (( EffectTics > 2*32 && EffectTics <= 3*32 ) && ((EffectTics + 1) & 7) != 0 )
|| (( EffectTics > 32 && EffectTics <= 2*32 ) && ((EffectTics + 1) & 3) != 0 )
|| (( EffectTics > 0 && EffectTics <= 1*32 ) && ((EffectTics + 1) & 1) != 0 ))
level.flags |= LEVEL_FROZEN;
else
level.flags &= ~LEVEL_FROZEN;