- fixed: P_SpawnMapThing forced gravity instead of disabling it when being given Gravity = 0 from UDMF.

This commit is contained in:
Christoph Oelckers 2016-11-23 14:32:18 +01:00
parent 6ae266c76e
commit 5b059971f0

View file

@ -5063,7 +5063,11 @@ AActor *P_SpawnMapThing (FMapThing *mthing, int position)
if (mthing->FloatbobPhase >= 0 && mthing->FloatbobPhase < 64) mobj->FloatBobPhase = mthing->FloatbobPhase; if (mthing->FloatbobPhase >= 0 && mthing->FloatbobPhase < 64) mobj->FloatBobPhase = mthing->FloatbobPhase;
if (mthing->Gravity < 0) mobj->Gravity = -mthing->Gravity; if (mthing->Gravity < 0) mobj->Gravity = -mthing->Gravity;
else if (mthing->Gravity > 0) mobj->Gravity *= mthing->Gravity; else if (mthing->Gravity > 0) mobj->Gravity *= mthing->Gravity;
else mobj->flags &= ~MF_NOGRAVITY; else
{
mobj->flags |= MF_NOGRAVITY;
mobj->Gravity = 0;
}
// For Hexen floatbob 'compatibility' we do not really want to alter the floorz. // For Hexen floatbob 'compatibility' we do not really want to alter the floorz.
if (mobj->specialf1 == 0 || !(mobj->flags2 & MF2_FLOATBOB) || !(ib_compatflags & BCOMPATF_FLOATBOB)) if (mobj->specialf1 == 0 || !(mobj->flags2 & MF2_FLOATBOB) || !(ib_compatflags & BCOMPATF_FLOATBOB))