]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - protocol.h
ODE physics engine support, needs more work, disabled by default
[xonotic/darkplaces.git] / protocol.h
index 7e01d764a286d42399dbce356fb36c2104e8618a..9fdd636bb8e6b740623deb1366a0e24869b7f52c 100644 (file)
@@ -332,11 +332,21 @@ void Protocol_Names(char *buffer, size_t buffersize);
 #define RENDER_EXTERIORMODEL 8
 #define RENDER_LOWPRECISION 16 // send as low precision coordinates to save bandwidth
 #define RENDER_COLORMAPPED 32
+#define RENDER_NOCULL 64 // do not cull this entity with r_cullentities
+
 #define RENDER_SHADOW 65536 // cast shadow
 #define RENDER_LIGHT 131072 // receive light
 #define RENDER_NOSELFSHADOW 262144 // render lighting on this entity before its own shadow is added to the scene
 // (note: all RENDER_NOSELFSHADOW entities are grouped together and rendered in a batch before their shadows are rendered, so they can not shadow eachother either)
 
+typedef enum entity_state_active_e
+{
+       ACTIVE_NOT = 0,
+       ACTIVE_NETWORK = 1,
+       ACTIVE_SHARED = 2
+}
+entity_state_active_t;
+
 // this is 96 bytes
 typedef struct entity_state_s
 {
@@ -370,8 +380,9 @@ typedef struct entity_state_s
        unsigned char internaleffects; // INTEF_FLAG1QW and so on
        unsigned char tagindex;
        unsigned char colormod[3];
+       unsigned char glowmod[3];
        // padding to a multiple of 8 bytes (to align the double time)
-       unsigned char unused[5];
+       unsigned char unused[2];
 }
 entity_state_t;
 
@@ -697,8 +708,8 @@ void EntityFrame4_CL_ReadFrame(void);
 // bits >= (1<<24)
 #define E5_EXTEND3 (1<<23)
 
-// unused
-#define E5_UNUSED24 (1<<24)
+// byte[3] = s->glowmod[0], s->glowmod[1], s->glowmod[2]
+#define E5_GLOWMOD (1<<24)
 // unused
 #define E5_UNUSED25 (1<<25)
 // unused
@@ -969,7 +980,7 @@ void EntityFrameQW_CL_ReadFrame(qboolean delta);
 
 struct client_s;
 void EntityFrameCSQC_LostFrame(struct client_s *client, int framenum);
-qboolean EntityFrameCSQC_WriteFrame (sizebuf_t *msg, int maxsize, int numstates, const entity_state_t *states, int framenum);
+qboolean EntityFrameCSQC_WriteFrame (sizebuf_t *msg, int maxsize, int numnumbers, const unsigned short *numbers, int framenum);
 
 #endif