#define U_EFFECTS2 (1<<19) // 1 byte, this is .effects & 0xFF00 (second byte)
#define U_GLOWSIZE (1<<20) // 1 byte, encoding is float/8.0, signed (negative is darklight), not sent if 0
#define U_GLOWCOLOR (1<<21) // 1 byte, palette index, default is 254 (white), this IS used for darklight (allowing colored darklight), however the particles from a darklight are always black, not sent if default value (even if glowsize or glowtrail is set)
+// LordHavoc: colormod feature has been removed, because no one used it
#define U_COLORMOD (1<<22) // 1 byte, 3 bit red, 3 bit green, 2 bit blue, this lets you tint an object artifically, so you could make a red rocket, or a blue fiend...
#define U_EXTEND2 (1<<23) // another byte to follow
// LordHavoc: second extend byte
#define svc_showlmp 35 // [string] slotname [string] lmpfilename [short] x [short] y
#define svc_hidelmp 36 // [string] slotname
+#define svc_skybox 37 // [string] skyname
-#define svc_unusedlh1
-#define svc_fog 51 // unfinished
+#define svc_cgame 50 // [short] length [bytes] data
+#define svc_fog 51 // unfinished and obsolete
#define svc_effect 52 // [vector] org [byte] modelindex [byte] startframe [byte] framecount [byte] framerate
#define svc_effect2 53 // [vector] org [short] modelindex [short] startframe [byte] framecount [byte] framerate
#define svc_sound2 54 // short soundindex instead of byte
#define TE_SMALLFLASH 72 // [vector] origin
#define TE_CUSTOMFLASH 73 // [vector] origin [byte] radius / 8 - 1 [byte] lifetime / 256 - 1 [byte] red [byte] green [byte] blue
#define TE_FLAMEJET 74 // [vector] origin [vector] velocity [byte] count
+#define TE_PLASMABURN 75 // [vector] origin
#define RENDER_STEP 1
#define RENDER_GLOWTRAIL 2
#define RENDER_VIEWMODEL 4
#define RENDER_EXTERIORMODEL 8
-// LordHavoc: made this more compact, and added some more fields
typedef struct
{
- double time; // time this state was updated
- vec3_t origin;
- vec3_t angles;
- int effects;
+ double time; // time this state was built
+ unsigned short active; // true if a valid state
unsigned short modelindex;
unsigned short frame;
+ unsigned short effects;
+ vec3_t origin;
+ vec3_t angles;
byte colormap;
byte skin;
byte alpha;
byte scale;
byte glowsize;
byte glowcolor;
- byte colormod;
byte flags;
- byte active;
-} entity_state_t;
+}
+entity_state_t;
void ClearStateToDefault(entity_state_t *s);