diff --git a/src/p_mobj.h b/src/p_mobj.h index 1a86920b5..391735f39 100644 --- a/src/p_mobj.h +++ b/src/p_mobj.h @@ -186,47 +186,44 @@ typedef enum // // Mobj extra flags // -typedef enum -{ - // The mobj stands on solid floor (not on another mobj or in air) - MFE_ONGROUND = 1, - // The mobj just hit the floor while falling, this is cleared on next frame - // (instant damage in lava/slime sectors to prevent jump cheat..) - MFE_JUSTHITFLOOR = 1<<1, - // The mobj stands in a sector with water, and touches the surface - // this bit is set once and for all at the start of mobjthinker - MFE_TOUCHWATER = 1<<2, - // The mobj stands in a sector with water, and his waist is BELOW the water surface - // (for player, allows swimming up/down) - MFE_UNDERWATER = 1<<3, - // used for ramp sectors - MFE_JUSTSTEPPEDDOWN = 1<<4, - // Vertically flip sprite/allow upside-down physics - MFE_VERTICALFLIP = 1<<5, - // Goo water - MFE_GOOWATER = 1<<6, - // The mobj is touching a lava block - MFE_TOUCHLAVA = 1<<7, - // Mobj was already pushed this tic - MFE_PUSHED = 1<<8, - // Mobj was already sprung this tic - MFE_SPRUNG = 1<<9, - // Platform movement - MFE_APPLYPMOMZ = 1<<10, - // Compute and trigger on mobj angle relative to tracer - // See Linedef Exec 457 (Track mobj angle to point) - MFE_TRACERANGLE = 1<<11, - // SRB2Kart: The mobj just hit & bounced off a wall, this is cleared on next frame - MFE_JUSTBOUNCEDWALL = 1<<12, - // SRB2Kart: In damage hitlag (displays different visual efx) - MFE_DAMAGEHITLAG = 1<<13, - // Slope physics sent you airborne - MFE_SLOPELAUNCHED = 1<<14, - // Thinker is paused due to hitlag - MFE_PAUSED = 1<<15, - // Don't launch off of slopes - MFE_DONTSLOPELAUNCH = 1<<16, -} mobjeflag_t; +typedef INT32 mobjeflag_t; +#define MFE_ONGROUND (1) // The mobj stands on solid floor (not on another mobj or in air) +// The mobj just hit the floor while falling, this is cleared on next frame +// (instant damage in lava/slime sectors to prevent jump cheat..) +#define MFE_JUSTHITFLOOR (1<<1) +// The mobj stands in a sector with water, and touches the surface +// this bit is set once and for all at the start of mobjthinker +#define MFE_TOUCHWATER (1<<2) +// The mobj stands in a sector with water, and his waist is BELOW the water surface +// (for player, allows swimming up/down) +#define MFE_UNDERWATER (1<<3) +// used for ramp sectors +#define MFE_JUSTSTEPPEDDOWN (1<<4) +// Vertically flip sprite/allow upside-down physics +#define MFE_VERTICALFLIP (1<<5) +// Goo water +#define MFE_GOOWATER (1<<6) +// The mobj is touching a lava block +#define MFE_TOUCHLAVA (1<<7) +// Mobj was already pushed this tic +#define MFE_PUSHED (1<<8) +// Mobj was already sprung this tic +#define MFE_SPRUNG (1<<9) +// Platform movement +#define MFE_APPLYPMOMZ (1<<10) +// Compute and trigger on mobj angle relative to tracer +// See Linedef Exec 457 (Track mobj angle to point) +#define MFE_TRACERANGLE (1<<11) +// SRB2Kart: The mobj just hit & bounced off a wall, this is cleared on next frame +#define MFE_JUSTBOUNCEDWALL (1<<12) +// SRB2Kart: In damage hitlag (displays different visual efx) +#define MFE_DAMAGEHITLAG (1<<13) +// Slope physics sent you airborne +#define MFE_SLOPELAUNCHED (1<<14) +// Thinker is paused due to hitlag +#define MFE_PAUSED (1<<15) +// Don't launch off of slopes +#define MFE_DONTSLOPELAUNCH (1<<16) // // PRECIPITATION flags ?! ?! ?!