- Converted the rest of a_strifestuff.cpp to DECORATE.

- Fixed: AStalker::CheckMeleeRange did not perform all checks of AActor::CheckMeleeRange.
  I replaced this virtual override with a new flag MF5_NOVERTICALMELEERANGE so that
  this feature can also be used by other actors.
- Converted Strife's Stalker to DECORATE.
- Converted ArtiTeleport to DECORATE.


SVN r1126 (trunk)
This commit is contained in:
Christoph Oelckers 2008-08-07 20:16:07 +00:00
commit 6b3325b358
19 changed files with 433 additions and 430 deletions

View file

@ -237,10 +237,13 @@ bool AActor::CheckMeleeRange ()
return true;
// [RH] Don't melee things too far above or below actor.
if (pl->z > z + height)
return false;
if (pl->z + pl->height < z)
return false;
if (!(flags5 & MF5_NOVERTICALMELEERANGE))
{
if (pl->z > z + height)
return false;
if (pl->z + pl->height < z)
return false;
}
if (!P_CheckSight (this, pl, 0))
return false;
@ -2590,7 +2593,6 @@ void A_Explode (AActor *thing)
int distance = 128;
bool hurtSource = true;
thing->PreExplode ();
thing->GetExplodeParms (damage, distance, hurtSource);
P_RadiusAttack (thing, thing->target, damage, distance, thing->DamageType, hurtSource);
if (thing->z <= thing->floorz + (distance<<FRACBITS))