Things.h - Doom Legacy Wiki

Things.h

From Doom Legacy Wiki

Jump to: navigation, search
// Thing numbers - add one to find the thing's number in dehacked
// Accurate as of 26/07/2004
const PLAYER = 0;
const TROOPER = 1;
const SHOTGUY = 2;
const ARCHVILE = 3;
const VILEFIRE = 4;
const REVENANT = 5;
const REVENANTMISL = 6;
const SMOKE = 7;                    // Revenant fireball trail
const MANCUBUS = 8;
const CHAINGUY = 10;
const IMP = 11;
const DEMON = 12;
const SPECTRE = 13;
const CACODEMON = 14;
const BARONOFHELL = 15;
const HELLKNIGHT = 17;
const LOSTSOUL = 18;
const SPIDERBOSS = 19;
const ARACHNOTRON = 20;
const CYBERDEMON = 21;
const PAINELEMENTAL = 22;
const WOLFSS = 23;
const KEEN = 24;
const BOSSBRAIN = 25;
const BOSSSPIT = 26;
const BOSSTARGET = 27;
const IMPSHOT = 31;
const CACOSHOT = 32;
const FLYINGROCKET = 33;
const FLYINGPLASMA = 34;
const FLYINGBFG = 35;
const ARACHPLAZ = 36;
const MANCUBUSSHOT = 9;
const BARONSHOT = 16;
const SPAWNSHOT = 28;
const PUFF = 37;                    // Bullet puff
const BLOOD = 38;
const TFOG = 39;                    // Teleport fog
const IFOG = 40;                    // Item respawn fog
const TELEPORTMAN = 41;
const EXTRABFG = 42;
const SPAWNFIRE = 29;
const GREENARMOR = 43;
const BLUEARMOR = 44;
const HEALTHPOTION = 45;
const ARMORHELMET = 46;
const STIMPACK = 53;
const MEDIKIT = 54;
const BLUEKEYCARD = 47;
const REDKEYCARD = 48;
const YELLOWKEYCARD = 49;
const YELLOWSKULLKEY = 50;
const REDSKULLKEY = 51;
const BLUESKULLKEY = 52;
const SUPERCHARGE = 55;
const INVULNERABILITY = 56;
const BESERKPACK = 57;
const INVISIBILITY = 58;
const RADSUIT = 59;
const AUTOMAP = 60;
const LITEAMP = 61;
const MEGASPHERE = 62;
const CLIP = 63;
const BULLETBOX = 64;
const ROCKET = 65;
const ROCKETBOX = 66;
const ECELL = 67;
const ECELLPACK = 68;
const SHELLS = 69;
const SHELLBOX = 70;
const BACKPACK = 71;
const BFG = 72;
const CHAINGUN = 73;
const CHAINSAW = 74;
const RLAUNCHER = 75;
const PLASMAGUN = 76;
const SHOTGUN = 77;
const SUPERSHOTGUN = 78;
const BARREL = 30;
const TALLTECHLAMP = 79;
const SHORTTECHLAMP = 80;
const FLOORLAMP = 81;
const TALLGRNPILLAR = 82;
const SHRTGRNPILLAR = 83;
const TALLREDPILLAR = 84;
const SHRTREDPILLAR = 85;
const SKULLCOLUMN = 86;
const HEARTCOLUMN = 87;
const EVILEYE = 88;
const SKULLROCK = 89;
const GRAYTREE = 90;
const TALLBLUFIRESTICK = 91;
const TALLGRNFIRESTICK = 92;
const TALLREDFIRESTICK = 93;
const SHRTBLUFIRESTICK = 94;
const SHRTGRNFIRESTICK = 95;
const SHRTREDFIRESTICK = 96;
const STALAGMITE = 97;
const TALLTECHPILLAR = 98;
const CANDLE = 99;
const CANDELABRA = 100;
const TREE = 126;
const BURNINGBARREL = 127;
const TWITCHCORPSE1 = 101;
const TWITCHCORPSE2 = 110;
const HANGINGMAN1 = 102;
const HANGINGMAN2 = 103;
const HANGINGMAN3 = 104;
const HANGINGMAN4 = 105;
const HANGINGMAN5 = 106;
const HANGINGMAN6 = 107;
const HANGINGMAN7 = 108;
const HANGINGMAN8 = 109;
const HANGINGMAN9 = 128;
const HANGINGMAN10 = 129;
const HANGINGMAN11 = 130;
const HANGINGMAN12 = 131;
const HANGINGMAN13 = 132;
const HANGINGMAN14 = 133;
const DEADCACO = 111;
const DEADPLAYER = 112;
const DEADTROOPER = 113;
const DEADDEMON = 114;
const DEADLOSTSOUL = 115;
const DEADIMP = 116;
const DEADSERGEANT = 117;
const SLOP = 118;
const SLOP2 = 119;
const SKULLPOLE1 = 120;
const SKULLPOLE2 = 122;
const BLOODPOOL1 = 121;
const SKULLPILE = 123;
const BLOODPOOL2 = 134;
const BLOODPOOL3 = 135;
const BLOODPOOL4 = 136;
const DEADCORPSE1 = 124;
const TWITCHCORPSE3 = 125;
const HANGINGTORSO = 133;
const GUTS = 134;
const BLOODPOOL5 = 135;
const BRAINSTEM = 136;
// Chasecam = 137
// Spirit = 138 (movement prediction)
const SMOKE = 139;
const SPLASH = 140;
const PUSH = 141;
const PULL = 142;
const DOGS = 143;
const PLASMA1 = 144;
const PLASMA2 = 145;
const CAMERA = 146;
const NODE = 147;


// Property constants, for use with the set/getobjproperty() functions
const RADIUS = 0;
const HEIGHT = 1;
const SPEED = 2;
const MASS = 3;
const DAMAGE = 4;
const PAINCHANCE = 5;
const SEESTATE = 6;
const MELEESTATE = 7;
const MISSILESTATE = 8;
const PAINSTATE = 9;
const DEATHSTATE = 10;
const XDEATHSTATE = 11;
const CRASHSTATE = 12;
const RAISESTATE  = 13;
const SEESOUND = 14;
const ACTIVESOUND = 15;
const PAINSOUND = 16;
const DEATHSOUND = 17;
// State constants, for use with the objstate() function
const ST_CRASHSTATE = 1;
const ST_DEATHSTATE = 2;
const ST_MELEESTATE = 3;
const ST_MISSILESTATE = 4;
const ST_PAINSTATE = 5;
const ST_RAISESTATE = 6;
const ST_SEESTATE = 7;
const ST_SPAWNSTATE = 8;
const ST_XDEATHSTATE = 9;
// Thing flags (objflag)
const MF_SPECIAL = 0;
const MF_SOLID = 1;
const MF_SHOOTABLE = 2;
const MF_NOSECTOR = 3;
const MF_NOBLOCKMAP = 4;
const MF_AMBUSH = 5;
const MF_JUSTHIT = 6;
const MF_JUSTATTACKED = 7;
const MF_SPAWNCEILING = 8;
const MF_NOGRAVITY = 9;
const MF_DROPOFF = 10;
const MF_PICKUP = 11;
const MF_NOCLIP = 12;
const MF_SLIDE = 13;
const MF_FLOAT = 14;
const MF_TELEPORT = 15;
const MF_MISSILE = 16;
const MF_DROPPED = 17;
const MF_SHADOW = 18;
const MF_NOBLOOD = 19;
const MF_CORPSE = 20;
const MF_INFLOAT = 21;
const MF_COUNTKILL = 22;
const MF_COUNTITEM = 23;
const MF_SKULLFLY = 24;
const MF_NOTDMATCH = 25;
const MF_NOCLIPTHING = 26;
const MF_FLOORHUGGER = 27;
// Heretic thing flags (objflag2)
const MF2_LOGRAV = 0;           // Alternate gravity setting
const MF2_WINDTHRUST = 1;       // Gets pushed around by the wind specials
const MF2_FLOORBOUNCE = 2;      // Bounces off the floor
const MF2_THRUGHOST = 3;        // Missile will pass through ghosts
const MF2_FLY = 4;              // Fly mode is active
const MF2_FOOTCLIP = 5;         // If feet are allowed to be clipped
const MF2_SPAWNFLOAT = 6;       // Spawn random float z
const MF2_NOTELEPORT = 7;       // Does not teleport
const MF2_RIP = 8;              // Missile rips through solid targets
const MF2_PUSHABLE = 9;         // Can be pushed by other moving mobjs
const MF2_SLIDE = 10;           // Slides against walls
const MF2_ONMOBJ = 11;          // Mobj is resting on top of another mobj
const MF2_PASSMOBJ = 12;        // Enable z block checking
const MF2_CANNOTPUSH = 13;      // Cannot push other pushable mobjs
const MF2_FEETARECLIPPED = 14;  // A mobj's feet are now being cut
const MF2_BOSS = 15;            // Mobj is a major boss
const MF2_FIREDAMAGE = 16;      // Does fire damage
const MF2_NODMGTHRUST = 17;     // Does not thrust target when damaging
const MF2_TELESTOMP = 18;       // Mobj can stomp another
const MF2_FLOATBOB = 19;        // Use float bobbing z movement
const MF2_DONTDRAW = 20;        // Don't generate a vissprite
// Extra flags
const MFE_ONGROUND = 0;          // The mobj stands on solid floor (not on another mobj or in air)
const MFE_JUSTHITFLOOR = 1;      // The mobj just hit the floor while falling, this is cleared on next frame
const MFE_TOUCHWATER = 2;        // The mobj stands in a sector with water, and touches the surface
const MFE_UNDERWATER = 3;        // The mobj stands in a sector with water, and his waist is BELOW the water surface
const MFE_SWIMMING = 4;          // Set by P_MovePlayer() to disable gravity add in P_MobjThinker()
const MFE_NOZCHECKING = 5;       // Used for client prediction code, player can't be blocked in Z by walls
const MFE_IGNOREPLAYER = 6;      // "Friendly"; the mobj ignores players
const MFE_PREDICT = 7;           // The mobj will predict where the player will be


// Line flags
const ML_BLOCKING = 0;         // Solid, blocks things
const ML_BLOCKMONSTERS = 1;    // Blocks monsters
const ML_TWOSIDED = 2;         // Is two sided
const ML_DONTPEGTOP = 3;       // Is upper-unpegged
const ML_DONTPEGBOTTOM = 4;    // Is lower-unpegged
const ML_SECRET = 5;           // Is secret
const ML_SOUNDBLOCK = 6;       // Blocks sound
const ML_DONTDRAW = 7;         // Don't draw on the automap at all.
const ML_MAPPED = 8;           // Set if already seen, thus drawn in automap.
const ML_PASSUSE = 9;          // If flag is set, the player can use through it.
const ML_ALLTRIGGER = 10;      // If flag is set, anything can trigger the line.
// Corona or dynamic light numbers for use with setcorona
const PLASMA_L = 1;
const PLASMAEXP_L = 2;
const ROCKET_L = 3;
const ROCKETEXP_L = 4;
const BFG_L = 5;
const BFGEXP_L = 6;
const BLUETALL_L = 7;
const GREENTALL_L = 8;
const REDTALL_L = 9;
const BLUESMALL_L = 10;
const GREENSMALL_L = 11;
const REDSMALL_L = 12;
const TECHLAMP_L = 13;
const TECHLAMP2_L = 14;
const COLUMN_L = 15;
const CANDLE_L = 16;
const CANDLEABRE_L = 17;
const REDBALL_L = 18;
const GREENBALL_L = 19;
const ROCKET2_L = 20;
const FX03_L = 21;   // Shows up for sprite no. 224
const FX17_L = 22;   // Shows up for sprite no. 204
const FX00_L = 23;   // Shows up for sprite no. 210
const FX08_L = 24;   // 220
const FX04_L = 25;   // 219
const FX02_L = 26;   // 207
const WTRH_L = 27;   // 182
const SRTC_L = 28;   // 171
const CHDL_L = 29;   // 170
const KFR1_L = 30;   // 177


// Setcorona constants
const CORONA_TYPE = 0;
const CORONA_OFFX = 1;
const CORONA_OFFY = 2;
const CORONA_COLOR = 3;
const CORONA_SIZE = 4;
const LIGHT_COLOR = 5;
const LIGHT_RADIUS = 6;
// Corona sprites, for use with the CORONA_TYPE function
const UNDEFINED_SPR = 0;
const CORONA_SPR = 1;
const DYNLIGHT_SPR = 2;
const LIGHT_SPR = 3;
const ROCKET_SPR = 19;


// Player property types
const PROP_SPEED = 0;
const PROP_JUMPHEIGHT = 1;
const PROP_LOCKED = 2;


Personal tools