604 lines
18 KiB
C++
604 lines
18 KiB
C++
|
/*
|
||
|
* $Header: /H3/game/hcode/constant.hc 138 10/10/97 9:13a Rlove $
|
||
|
*/
|
||
|
|
||
|
//
|
||
|
// constants
|
||
|
//
|
||
|
|
||
|
float FALSE = 0;
|
||
|
float TRUE = 1;
|
||
|
|
||
|
float HX_FRAME_TIME = 0.05;
|
||
|
float HX_FPS = 20;
|
||
|
|
||
|
// edict.flags
|
||
|
float FL_FLY = 1;
|
||
|
float FL_SWIM = 2;
|
||
|
float FL_PUSH = 4; // Object is pushable
|
||
|
float FL_CLIENT = 8; // set for all client edicts
|
||
|
float FL_INWATER = 16; // for enter / leave water splash
|
||
|
float FL_MONSTER = 32;
|
||
|
float FL_GODMODE = 64; // player cheat
|
||
|
float FL_NOTARGET = 128; // player cheat
|
||
|
float FL_ITEM = 256; // extra wide size for bonus items
|
||
|
float FL_ONGROUND = 512; // standing on something
|
||
|
float FL_PARTIALGROUND = 1024; // not all corners are valid
|
||
|
float FL_WATERJUMP = 2048; // player jumping out of water
|
||
|
float FL_JUMPRELEASED = 4096; // for jump debouncing
|
||
|
float FL_FLASHLIGHT = 8192; // quake 2 thingy
|
||
|
float FL_ARTIFACTUSED = 16384; // an artifact was just used
|
||
|
float FL_MOVECHAIN_ANGLE = 32768; // when in a move chain, will update the angle
|
||
|
float FL_FIRERESIST = 65536; // resistant to fire and heat and lava
|
||
|
float FL_FIREHEAL = 131072; // healed by fire, heat, and lava
|
||
|
float FL_COLDHEAL = 524288; // healed by freezing
|
||
|
float FL_ARCHIVE_OVERRIDE = 1048576; // quake 2 thingy
|
||
|
float FL_CLASS_DEPENDENT = 2097152; // model will appear different to each player
|
||
|
float FL_SPECIAL_ABILITY1 = 4194304; // has 1st special ability
|
||
|
float FL_SPECIAL_ABILITY2 = 8388608; // has 2nd special ability
|
||
|
|
||
|
//edict.flags2
|
||
|
//FIXME: Shielded and small may be able to be determined by
|
||
|
//other means...
|
||
|
float FL2_ADJUST_MON_DAM = 1; //Do more damage to monsters
|
||
|
float FL_NODAMAGE = 2; //Special flag put on a missle to make it not do damage- used only by mezzoman
|
||
|
float FL_SMALL = 4; //Small enough to be crsuhed underfoot
|
||
|
float FL_ALIVE = 8; //Dead or alive.
|
||
|
float FL_FAKE_WATER = 16; //Fake water
|
||
|
float FL_SUMMONED = 32; //Summoned monster, stops it from precaching
|
||
|
float FL_LEDGEHOLD = 64; //Can realistically pull yourself up over ledges, etc.
|
||
|
float FL_TORNATO_SAFE = 512;
|
||
|
float FL_CHAINED = 2048; //Held by chains
|
||
|
float FL2_CROUCHED = 4096;
|
||
|
float FL2_CROUCH_TOGGLE = 8192;
|
||
|
|
||
|
// edict.drawflags
|
||
|
float MLS_MASKIN = 7; // MLS: Model Light Style
|
||
|
float MLS_MASKOUT = 248;
|
||
|
float MLS_NONE = 0;
|
||
|
float MLS_FULLBRIGHT = 1;
|
||
|
float MLS_POWERMODE = 2;
|
||
|
float MLS_TORCH = 3;
|
||
|
float MLS_FIREFLICKER = 4;
|
||
|
float MLS_CRYSTALGOLEM = 5;
|
||
|
float MLS_ABSLIGHT = 7;
|
||
|
float SCALE_TYPE_MASKIN = 24;
|
||
|
float SCALE_TYPE_MASKOUT = 231;
|
||
|
float SCALE_TYPE_UNIFORM = 0; // Scale X, Y, and Z
|
||
|
float SCALE_TYPE_XYONLY = 8; // Scale X and Y
|
||
|
float SCALE_TYPE_ZONLY = 16; // Scale Z
|
||
|
float SCALE_ORIGIN_MASKIN = 96;
|
||
|
float SCALE_ORIGIN_MASKOUT = 159;
|
||
|
float SCALE_ORIGIN_CENTER = 0; // Scaling origin at object center
|
||
|
float SCALE_ORIGIN_BOTTOM = 32; // Scaling origin at object bottom
|
||
|
float SCALE_ORIGIN_TOP = 64; // Scaling origin at object top
|
||
|
float DRF_TRANSLUCENT = 128;
|
||
|
|
||
|
// Artifact Flags
|
||
|
float AFL_CUBE_RIGHT = 1;
|
||
|
float AFL_CUBE_LEFT = 2;
|
||
|
float AFL_TORCH = 4;
|
||
|
float AFL_SUPERHEALTH = 8;
|
||
|
|
||
|
// edict.movetype values
|
||
|
float MOVETYPE_NONE = 0; // never moves
|
||
|
//float MOVETYPE_ANGLENOCLIP = 1;
|
||
|
//float MOVETYPE_ANGLECLIP = 2;
|
||
|
float MOVETYPE_WALK = 3; // players only
|
||
|
float MOVETYPE_STEP = 4; // discrete, not real time unless fall
|
||
|
float MOVETYPE_FLY = 5;
|
||
|
float MOVETYPE_TOSS = 6; // gravity
|
||
|
float MOVETYPE_PUSH = 7; // no clip to world, push and crush
|
||
|
float MOVETYPE_NOCLIP = 8;
|
||
|
float MOVETYPE_FLYMISSILE = 9; // fly with extra size against monsters
|
||
|
float MOVETYPE_BOUNCE = 10;
|
||
|
float MOVETYPE_BOUNCEMISSILE = 11; // bounce with extra size and no gravity
|
||
|
float MOVETYPE_PUSHPULL = 13; // pushable/pullable object
|
||
|
float MOVETYPE_SWIM = 14; // object won't move out of water
|
||
|
|
||
|
// particle types
|
||
|
float PARTICLETYPE_STATIC = 0;
|
||
|
float PARTICLETYPE_GRAV = 1;
|
||
|
float PARTICLETYPE_FASTGRAV = 2;
|
||
|
float PARTICLETYPE_SLOWGRAV = 3;
|
||
|
float PARTICLETYPE_FIRE = 4;
|
||
|
float PARTICLETYPE_EXPLODE = 5;
|
||
|
float PARTICLETYPE_EXPLODE2 = 6;
|
||
|
float PARTICLETYPE_BLOB = 7;
|
||
|
float PARTICLETYPE_BLOB2 = 8;
|
||
|
float PARTICLETYPE_RAIN = 9;
|
||
|
float PARTICLETYPE_C_EXPLODE = 10;
|
||
|
float PARTICLETYPE_C_EXPLODE2 = 11;
|
||
|
float PARTICLETYPE_SPIT = 12;
|
||
|
float PARTICLETYPE_FIREBALL = 13;
|
||
|
float PARTICLETYPE_ICE = 14;
|
||
|
float PARTICLETYPE_SPELL = 15;
|
||
|
|
||
|
// Hexen hull constants
|
||
|
float HULL_IMPLICIT = 0; //Choose the hull based on bounding box- like in Quake
|
||
|
float HULL_POINT = 1; //0 0 0, 0 0 0
|
||
|
float HULL_PLAYER = 2; //'-16 -16 0', '16 16 56'
|
||
|
float HULL_SCORPION = 3; //'-24 -24 -20', '24 24 20'
|
||
|
float HULL_CROUCH = 4; //'-16 -16 0', '16 16 28'
|
||
|
//Next 2 clip though world?
|
||
|
float HULL_HYDRA = 5; //'-28 -28 -24', '28 28 24'
|
||
|
float HULL_GOLEM = 6; //???,???
|
||
|
|
||
|
// Keep around old constants until all references are removed
|
||
|
float HULL_OLD = 0;
|
||
|
float HULL_SMALL = 1;
|
||
|
float HULL_NORMAL = 2;
|
||
|
float HULL_BIG = 3;
|
||
|
|
||
|
// edict.solid values
|
||
|
float SOLID_NOT = 0; // no interaction with other objects
|
||
|
float SOLID_TRIGGER = 1; // touch on edge, but not blocking
|
||
|
float SOLID_BBOX = 2; // touch on edge, block
|
||
|
float SOLID_SLIDEBOX = 3; // touch on edge, but not an onground
|
||
|
float SOLID_BSP = 4; // bsp clip, touch on edge, block
|
||
|
float SOLID_PHASE = 5; // will interact with all objects except entities with FL_MONSTER & FL_CLIENT - those it will pass through
|
||
|
|
||
|
// range values
|
||
|
float RANGE_MELEE = 0;
|
||
|
float RANGE_NEAR = 1;
|
||
|
float RANGE_MID = 2;
|
||
|
float RANGE_FAR = 3;
|
||
|
|
||
|
// deadflag values
|
||
|
|
||
|
float DEAD_NO = 0;
|
||
|
float DEAD_DYING = 1;
|
||
|
float DEAD_DEAD = 2;
|
||
|
float DEAD_RESPAWNABLE = 3;
|
||
|
|
||
|
// takedamage values
|
||
|
|
||
|
float DAMAGE_NO = 0; // Entity cannot be hurt
|
||
|
float DAMAGE_YES = 1; // Can be hurt
|
||
|
float DAMAGE_NO_GRENADE = 2; // Will not trigger a grenade to explode
|
||
|
|
||
|
|
||
|
// use inventory flags to show which item is the current item
|
||
|
float INV_NONE = 0;
|
||
|
float INV_TORCH = 1;
|
||
|
float INV_HP_BOOST = 2;
|
||
|
float INV_SUPER_HP_BOOST = 3;
|
||
|
float INV_MANA_BOOST = 4;
|
||
|
float INV_TELEPORT = 5;
|
||
|
float INV_TOME = 6;
|
||
|
float INV_SUMMON = 7;
|
||
|
float INV_INVISIBILITY = 8;
|
||
|
float INV_GLYPH = 9;
|
||
|
float INV_HASTE = 10;
|
||
|
float INV_BLAST = 11;
|
||
|
float INV_POLYMORPH = 12;
|
||
|
float INV_FLIGHT = 13;
|
||
|
float INV_CUBEOFFORCE = 14;
|
||
|
float INV_INVINCIBILITY = 15;
|
||
|
|
||
|
float ARTIFACT_TORCH = 1;
|
||
|
float ARTIFACT_HP_BOOST = 2;
|
||
|
float ARTIFACT_SUPER_HP_BOOST = 3;
|
||
|
float ARTIFACT_MANA_BOOST = 4;
|
||
|
float ARTIFACT_TELEPORT = 5;
|
||
|
float ARTIFACT_TOME = 6;
|
||
|
float ARTIFACT_SUMMON = 7;
|
||
|
float ARTIFACT_INVISIBILITY = 8;
|
||
|
float ARTIFACT_GLYPH = 9;
|
||
|
float ARTIFACT_HASTE = 10;
|
||
|
float ARTIFACT_BLAST = 11;
|
||
|
float ARTIFACT_POLYMORPH = 12;
|
||
|
float ARTIFACT_FLIGHT = 13;
|
||
|
float ARTIFACT_CUBEOFFORCE = 14;
|
||
|
float ARTIFACT_INVINCIBILITY = 15;
|
||
|
|
||
|
|
||
|
// Use ring flags to show which rings hero carries
|
||
|
float RING_NONE = 0;
|
||
|
float RING_FLIGHT = 1;
|
||
|
float RING_WATER = 2;
|
||
|
float RING_REGENERATION = 4;
|
||
|
float RING_TURNING = 8;
|
||
|
|
||
|
|
||
|
// Use artifact flags to show which artifacts are in use
|
||
|
float ART_NONE = 0;
|
||
|
float ART_HASTE = 1;
|
||
|
float ART_INVINCIBILITY = 2;
|
||
|
float ART_TOMEOFPOWER = 4;
|
||
|
float ART_INVISIBILITY = 8;
|
||
|
float ARTFLAG_FROZEN = 128;
|
||
|
float ARTFLAG_STONED = 256;
|
||
|
float ARTFLAG_DIVINE_INTERVENTION = 512;
|
||
|
|
||
|
|
||
|
// Gobal skin textures
|
||
|
float GLOBAL_SKIN_STONE = 100;
|
||
|
float GLOBAL_SKIN_ICE = 101;
|
||
|
|
||
|
|
||
|
// Player Classes
|
||
|
float CLASS_NONE = 0;
|
||
|
float CLASS_PALADIN = 1;
|
||
|
float CLASS_CRUSADER = 2;
|
||
|
float CLASS_NECROMANCER = 3;
|
||
|
float CLASS_ASSASSIN = 4;
|
||
|
|
||
|
|
||
|
// Monster Classes
|
||
|
float CLASS_GRUNT = 1;
|
||
|
float CLASS_HENCHMAN = 2;
|
||
|
float CLASS_LEADER = 3;
|
||
|
float CLASS_BOSS = 4;
|
||
|
float CLASS_FINAL_BOSS = 5;
|
||
|
|
||
|
|
||
|
float MAX_HEALTH = 200;
|
||
|
|
||
|
// Player Mode
|
||
|
float MODE_NORMAL = 0; // normal play mode
|
||
|
float MODE_CAMERA = 1; // player is a camera right now
|
||
|
|
||
|
float AS_STRAIGHT = 1;
|
||
|
float AS_SLIDING = 2;
|
||
|
float AS_MELEE = 3;
|
||
|
float AS_MISSILE = 4;
|
||
|
float AS_WAIT = 5;
|
||
|
float AS_FERRY = 6;
|
||
|
|
||
|
// Generic Weapon Names
|
||
|
float IT_WEAPON1 = 4096;
|
||
|
float IT_WEAPON2 = 1;
|
||
|
float IT_WEAPON3 = 2;
|
||
|
float IT_WEAPON4 = 4;
|
||
|
float IT_TESTWEAP = 8;
|
||
|
float IT_WEAPON4_1 = 16; // First half of weapon
|
||
|
float IT_WEAPON4_2 = 32; // Second half of weapon
|
||
|
|
||
|
|
||
|
// paladin weapons
|
||
|
float IT_GAUNTLETS = 4096;
|
||
|
|
||
|
|
||
|
// items
|
||
|
float IT_AXE = 4096;
|
||
|
float IT_SHOTGUN = 1;
|
||
|
float IT_SUPER_SHOTGUN = 2;
|
||
|
float IT_NAILGUN = 4;
|
||
|
float IT_SUPER_NAILGUN = 8;
|
||
|
float IT_GRENADE_LAUNCHER = 16;
|
||
|
float IT_ROCKET_LAUNCHER = 32;
|
||
|
float IT_LIGHTNING = 64;
|
||
|
float IT_EXTRA_WEAPON = 128;
|
||
|
|
||
|
|
||
|
float IT_ARMOR1 = 8192;
|
||
|
float IT_ARMOR2 = 16384;
|
||
|
float IT_ARMOR3 = 32768;
|
||
|
float IT_SUPERHEALTH = 65536;
|
||
|
|
||
|
|
||
|
float IT_INVISIBILITY = 524288;
|
||
|
float IT_INVULNERABILITY = 1048576;
|
||
|
float IT_SUIT = 2097152;
|
||
|
float IT_QUAD = 4194304;
|
||
|
|
||
|
// rings - amount of time they work
|
||
|
float FLIGHT_TIME = 30;
|
||
|
float WATER_TIME = 30;
|
||
|
float ABSORPTION_TIME = 30;
|
||
|
float REGEN_TIME = 30;
|
||
|
float TURNING_TIME = 30;
|
||
|
|
||
|
// artifacts - amount of time they work
|
||
|
float HASTE_TIME = 15;
|
||
|
float TOME_TIME = 30;
|
||
|
|
||
|
float RESPAWN_TIME = 30;
|
||
|
|
||
|
// weapon damage values
|
||
|
float WEAPON1_BASE_DAMAGE = 12;
|
||
|
float WEAPON1_ADD_DAMAGE = 12;
|
||
|
float WEAPON1_PWR_BASE_DAMAGE = 30;
|
||
|
float WEAPON1_PWR_ADD_DAMAGE = 20;
|
||
|
float WEAPON1_PUSH = 5;
|
||
|
|
||
|
|
||
|
// glyph of the ancients
|
||
|
float GLYPH_BASE_DAMAGE = 100;
|
||
|
float GLYPH_ADD_DAMAGE = 20;
|
||
|
|
||
|
// Modifier for HASTE
|
||
|
//float HASTE_MOD = 2;
|
||
|
float BLAST_RADIUS = 200;
|
||
|
float BLASTDAMAGE = 2;
|
||
|
|
||
|
// Damage values for attacks from monsters
|
||
|
float DMG_ARCHER_PUNCH = 4;
|
||
|
float DMG_MUMMY_PUNCH = 8;
|
||
|
float DMG_MUMMY_BITE = 2;
|
||
|
|
||
|
|
||
|
//Thing Types
|
||
|
float THINGTYPE_GREYSTONE = 1;
|
||
|
float THINGTYPE_WOOD = 2;
|
||
|
float THINGTYPE_METAL = 3;
|
||
|
float THINGTYPE_FLESH = 4;
|
||
|
float THINGTYPE_FIRE = 5;
|
||
|
float THINGTYPE_CLAY = 6;
|
||
|
float THINGTYPE_LEAVES = 7;
|
||
|
float THINGTYPE_HAY = 8;
|
||
|
float THINGTYPE_BROWNSTONE = 9;
|
||
|
float THINGTYPE_CLOTH = 10;
|
||
|
float THINGTYPE_WOOD_LEAF = 11;
|
||
|
float THINGTYPE_WOOD_METAL = 12;
|
||
|
float THINGTYPE_WOOD_STONE = 13;
|
||
|
float THINGTYPE_METAL_STONE = 14;
|
||
|
float THINGTYPE_METAL_CLOTH = 15;
|
||
|
float THINGTYPE_WEBS = 16;
|
||
|
float THINGTYPE_GLASS = 17;
|
||
|
float THINGTYPE_ICE = 18;
|
||
|
float THINGTYPE_CLEARGLASS = 19;
|
||
|
float THINGTYPE_REDGLASS = 20;
|
||
|
|
||
|
|
||
|
// point content values
|
||
|
float CONTENT_EMPTY = -1;
|
||
|
float CONTENT_SOLID = -2;
|
||
|
float CONTENT_WATER = -3;
|
||
|
float CONTENT_SLIME = -4;
|
||
|
float CONTENT_LAVA = -5;
|
||
|
float CONTENT_SKY = -6;
|
||
|
|
||
|
float STATE_TOP = 0;
|
||
|
float STATE_BOTTOM = 1;
|
||
|
float STATE_UP = 2;
|
||
|
float STATE_DOWN = 3;
|
||
|
float STATE_MOVING = 4;
|
||
|
|
||
|
vector VEC_ORIGIN = '0 0 0';
|
||
|
vector VEC_HULL_MIN = '-16 -16 -24';
|
||
|
vector VEC_HULL_MAX = '16 16 32';
|
||
|
//Temp- because player models origins are at feet,
|
||
|
//Above values raise them 12 above the floor!
|
||
|
//But what about monsters using this Hull size??
|
||
|
//vector VEC_HULL_MIN = '-16 -16 0';
|
||
|
//vector VEC_HULL_MAX = '16 16 56';
|
||
|
|
||
|
vector VEC_HULL2_MIN = '-32 -32 -24';
|
||
|
vector VEC_HULL2_MAX = '32 32 64';
|
||
|
|
||
|
// protocol bytes
|
||
|
float SVC_TEMPENTITY = 23;
|
||
|
float SVC_KILLEDMONSTER = 27;
|
||
|
float SVC_FOUNDSECRET = 28;
|
||
|
float SVC_INTERMISSION = 30;
|
||
|
float SVC_FINALE = 31;
|
||
|
float SVC_CDTRACK = 32;
|
||
|
float SVC_SELLSCREEN = 33;
|
||
|
float SVC_SET_VIEW_FLAGS = 40;
|
||
|
float SVC_CLEAR_VIEW_FLAGS = 41;
|
||
|
float SVC_SET_VIEW_TINT = 46;
|
||
|
|
||
|
// Client Effects
|
||
|
float CE_RAIN = 1;
|
||
|
float CE_FOUNTAIN = 2;
|
||
|
float CE_QUAKE = 3;
|
||
|
float CE_WHITE_SMOKE = 4;
|
||
|
float CE_BLUESPARK = 5;
|
||
|
float CE_YELLOWSPARK = 6;
|
||
|
float CE_SM_CIRCLE_EXP = 7;
|
||
|
float CE_BG_CIRCLE_EXP = 8;
|
||
|
float CE_SM_WHITE_FLASH = 9;
|
||
|
float CE_WHITE_FLASH = 10;
|
||
|
float CE_YELLOWRED_FLASH = 11;
|
||
|
float CE_BLUE_FLASH = 12;
|
||
|
float CE_SM_BLUE_FLASH = 13;
|
||
|
float CE_RED_FLASH = 14;
|
||
|
float CE_SM_EXPLOSION = 15;
|
||
|
float CE_LG_EXPLOSION = 16;
|
||
|
float CE_FLOOR_EXPLOSION = 17;
|
||
|
float CE_RIDER_DEATH = 18;
|
||
|
float CE_BLUE_EXPLOSION = 19;
|
||
|
float CE_GREEN_SMOKE = 20;
|
||
|
float CE_GREY_SMOKE = 21;
|
||
|
float CE_RED_SMOKE = 22;
|
||
|
float CE_SLOW_WHITE_SMOKE = 23;
|
||
|
float CE_REDSPARK = 24;
|
||
|
float CE_GREENSPARK = 25;
|
||
|
float CE_TELESMK1 = 26;
|
||
|
float CE_TELESMK2 = 27;
|
||
|
float CE_ICE_HIT = 28;// icehit.spr 0-5
|
||
|
float CE_MEDUSA_HIT = 29;// medhit.spr 0-6
|
||
|
float CE_MEZZO_REFLECT = 30;// mezzoref.spr 0-5
|
||
|
float CE_FLOOR_EXPLOSION2 = 31;// flrexpl2.spr 0-19
|
||
|
float CE_XBOW_EXPLOSION = 32;// xbowexpl.spr 0-16
|
||
|
float CE_NEW_EXPLOSION = 33;// gen_expl.spr 0-13
|
||
|
float CE_MAGIC_MISSILE_EXPLOSION = 34;// mm_expld.spr
|
||
|
float CE_GHOST = 35;// ghost.spr- translucent
|
||
|
float CE_BONE_EXPLOSION = 36;// bonexpld.spr
|
||
|
float CE_REDCLOUD = 37;// rcloud.spr
|
||
|
float CE_TELEPORTERPUFFS = 38;
|
||
|
float CE_TELEPORTERBODY = 39;
|
||
|
float CE_BONESHARD = 40;
|
||
|
float CE_BONESHRAPNEL = 41;
|
||
|
|
||
|
// Temporary entities
|
||
|
float TE_SPIKE = 0;
|
||
|
float TE_SUPERSPIKE = 1;
|
||
|
float TE_GUNSHOT = 2;
|
||
|
float TE_EXPLOSION = 3;
|
||
|
float TE_TAREXPLOSION = 4;
|
||
|
float TE_LIGHTNING1 = 5;
|
||
|
float TE_LIGHTNING2 = 6;
|
||
|
float TE_WIZSPIKE = 7;
|
||
|
float TE_KNIGHTSPIKE = 8;
|
||
|
float TE_LIGHTNING3 = 9;
|
||
|
float TE_LAVASPLASH = 10;
|
||
|
float TE_TELEPORT = 11;
|
||
|
float TE_STREAM_CHAIN = 25;
|
||
|
float TE_STREAM_SUNSTAFF1 = 26;
|
||
|
float TE_STREAM_SUNSTAFF2 = 27;
|
||
|
float TE_STREAM_LIGHTNING = 28;
|
||
|
float TE_STREAM_COLORBEAM = 29;
|
||
|
float TE_STREAM_ICECHUNKS = 30;
|
||
|
float TE_STREAM_GAZE = 31;
|
||
|
float TE_STREAM_FAMINE = 32;
|
||
|
|
||
|
// Stream flags
|
||
|
float STREAM_ATTACHED = 16;
|
||
|
float STREAM_TRANSLUCENT = 32;
|
||
|
|
||
|
|
||
|
// sound channels
|
||
|
// channel 0 never willingly overrides
|
||
|
// other channels (1-7) allways override a playing sound on that channel
|
||
|
float CHAN_AUTO = 0;
|
||
|
float CHAN_WEAPON = 1;
|
||
|
float CHAN_VOICE = 2;
|
||
|
float CHAN_ITEM = 3;
|
||
|
float CHAN_BODY = 4;
|
||
|
|
||
|
float ATTN_NONE = 0;
|
||
|
float ATTN_NORM = 1;
|
||
|
float ATTN_IDLE = 2;
|
||
|
float ATTN_STATIC = 3;
|
||
|
|
||
|
// update types
|
||
|
float UPDATE_GENERAL = 0;
|
||
|
float UPDATE_STATIC = 1;
|
||
|
float UPDATE_BINARY = 2;
|
||
|
float UPDATE_TEMP = 3;
|
||
|
|
||
|
// entity effects
|
||
|
float EF_BRIGHTFIELD = 1;
|
||
|
float EF_MUZZLEFLASH = 2;
|
||
|
float EF_BRIGHTLIGHT = 4;
|
||
|
float EF_TORCHLIGHT = 6;
|
||
|
float EF_DIMLIGHT = 8;
|
||
|
float EF_DARKLIGHT = 16;
|
||
|
float EF_DARKFIELD = 32;
|
||
|
float EF_LIGHT = 64;
|
||
|
float EF_NODRAW = 128;
|
||
|
|
||
|
// messages
|
||
|
float MSG_BROADCAST = 0; // unreliable to all
|
||
|
float MSG_ONE = 1; // reliable to one (msg_entity)
|
||
|
float MSG_ALL = 2; // reliable to all
|
||
|
float MSG_INIT = 3; // write to the init string
|
||
|
|
||
|
float STEP_HEIGHT = 18; // Max step height
|
||
|
|
||
|
// monster AI states
|
||
|
float AI_DECIDE = 0; // An action was just finished - time to decide what to do
|
||
|
float AI_STAND = 1; // Standing guard
|
||
|
float AI_WALK = 2; // Walking
|
||
|
float AI_CHARGE = 4; // Charging enemy
|
||
|
float AI_WANDER = 8; // Wandering around mindlessly
|
||
|
float AI_MELEE_ATTACK = 16; //
|
||
|
float AI_MISSILE_ATTACK = 32; //
|
||
|
float AI_MISSILE_REATTACK = 64; // Attacking again from attack stance (archer)
|
||
|
float AI_PAIN = 128; // Monster has only 1 type of pain
|
||
|
float AI_PAIN_CLOSE = 256; // Pain when close to enemy
|
||
|
float AI_PAIN_FAR = 512; // Pain when far from enemy
|
||
|
float AI_DEAD = 1024; //
|
||
|
float AI_TURNLOOK = 2048; // Turning to look for enemy
|
||
|
float AI_DEAD_GIB = 4096; // Can be gibbed when killed
|
||
|
float AI_DEAD_TWITCH = 8192; // Twitches while dead
|
||
|
|
||
|
// Return values for AdvanceFrame()
|
||
|
float AF_NORMAL = 0;
|
||
|
float AF_BEGINNING = 1;
|
||
|
float AF_END = 2;
|
||
|
|
||
|
float CHUNK_MAX = 30; // Max number of chunks (models) that can be alive at one time
|
||
|
float MAX_LEVELS = 10;
|
||
|
|
||
|
|
||
|
// server flags
|
||
|
float SFL_EPISODE_1 = 1;
|
||
|
float SFL_EPISODE_2 = 2;
|
||
|
float SFL_EPISODE_3 = 4;
|
||
|
float SFL_EPISODE_4 = 8;
|
||
|
float SFL_NEW_UNIT = 16;
|
||
|
float SFL_NEW_EPISODE = 32;
|
||
|
// = 64;
|
||
|
// = 128;
|
||
|
float SFL_CROSS_TRIGGER_1 = 256;
|
||
|
float SFL_CROSS_TRIGGER_2 = 512;
|
||
|
float SFL_CROSS_TRIGGER_3 = 1024;
|
||
|
float SFL_CROSS_TRIGGER_4 = 2048;
|
||
|
float SFL_CROSS_TRIGGER_5 = 4096;
|
||
|
float SFL_CROSS_TRIGGER_6 = 8192;
|
||
|
float SFL_CROSS_TRIGGER_7 = 16384;
|
||
|
float SFL_CROSS_TRIGGER_8 = 32768;
|
||
|
|
||
|
float SFL_CROSS_TRIGGERS = 65280;
|
||
|
float attck_cnt;
|
||
|
|
||
|
float WF_NORMAL_ADVANCE = 0; // States when using advanceweaponframe
|
||
|
float WF_CYCLE_STARTED = 1;
|
||
|
float WF_CYCLE_WRAPPED = 2;
|
||
|
float WF_LAST_FRAME = 3;
|
||
|
|
||
|
float WORLDTYPE_CASTLE = 0;
|
||
|
float WORLDTYPE_EGYPT = 1;
|
||
|
float WORLDTYPE_MESO = 2;
|
||
|
float WORLDTYPE_ROMAN = 3;
|
||
|
|
||
|
//Spawnflags for monster spawners
|
||
|
float IMP = 1;
|
||
|
float ARCHER = 2;
|
||
|
float WIZARD = 4;
|
||
|
float SCORPION = 8;
|
||
|
float SPIDER = 16;
|
||
|
float ONDEATH = 32;
|
||
|
float QUIET = 64;
|
||
|
float TRIGGERONLY = 128;
|
||
|
|
||
|
//spawnflag for all monsters
|
||
|
float JUMP = 4; //Gives monster the ability to jump
|
||
|
float PLAY_DEAD = 8; //Makes a monster play dead at start
|
||
|
float NO_DROP = 32; //Keeps them from dropping to the ground at spawntime
|
||
|
|
||
|
//spawnflag for items, weapons, artifacts
|
||
|
float FLOATING = 1; //Keeps them from dropping to the ground at spawntime
|
||
|
|
||
|
//Spawnflags for barrels
|
||
|
float BARREL_DOWNHILL = 1;
|
||
|
float BARREL_NO_DROP = 2;
|
||
|
float ON_SIDE = 4;
|
||
|
float BARREL_SINK = 8;
|
||
|
float BARREL_UNBREAKABLE = 16;
|
||
|
float BARREL_NORMAL = 32;
|
||
|
float BARREL_EXPLODING = 64;
|
||
|
float BARREL_INDESTRUCTIBLE = 128;
|
||
|
|
||
|
//For func_rotate
|
||
|
float GRADUAL = 32;
|
||
|
float TOGGLE_REVERSE = 64;
|
||
|
float KEEP_START = 128;
|
||
|
|
||
|
float NO_RESPAWN = 0; // For the spawning of artifacts
|
||
|
float RESPAWN = 1;
|
||
|
|
||
|
float RING_REGENERATION_MAX = 150; // Number of health points ring gives you back
|
||
|
float RING_FLIGHT_MAX = 60; // Number of seconds you can fly
|
||
|
float RING_WATER_MAX = 60; // Number of seconds you can stay under water
|
||
|
float RING_TURNING_MAX = 60; // Number of seconds you can turn missiles
|
||
|
|
||
|
float SVC_SETVIEWPORT = 5; // Net.Protocol 0x05- for camera
|
||
|
float SVC_SETVIEWANGLES = 10; // Net.Protocol 0x0A- for camera
|
||
|
|
||
|
//act_states - for player anim
|
||
|
float ACT_STAND = 0;
|
||
|
float ACT_RUN = 1;
|
||
|
float ACT_SWIM_FLY = 2;
|
||
|
float ACT_ATTACK = 3;
|
||
|
float ACT_PAIN = 4;
|
||
|
float ACT_JUMP = 5;
|
||
|
float ACT_CROUCH_STAND = 6;
|
||
|
float ACT_CROUCH_MOVE = 7;
|
||
|
float ACT_DEAD = 8;
|
||
|
float ACT_DECAP = 9;
|