]> de.git.xonotic.org Git - xonotic/darkplaces.git/blob - protocol.c
moved a lot of 2D/screen stuff out of gl_screen.c into cl_screen.c
[xonotic/darkplaces.git] / protocol.c
1
2 #include "quakedef.h"
3
4 void ClearStateToDefault(entity_state_t *s)
5 {
6         s->time = 0;
7         VectorClear(s->origin);
8         VectorClear(s->angles);
9         s->effects = 0;
10         s->modelindex = 0;
11         s->frame = 0;
12         s->colormap = 0;
13         s->skin = 0;
14         s->alpha = 255;
15         s->scale = 16;
16         s->glowsize = 0;
17         s->glowcolor = 254;
18         s->flags = 0;
19         s->active = 0;
20 }
21
22 // (server) clears the database to contain no frames (thus delta compression compresses against nothing)
23 void EntityFrame_ClearDatabase(entity_database_t *d)
24 {
25         memset(d, 0, sizeof(*d));
26         d->ackframe = -1;
27 }
28
29 // (server) acknowledge a frame as recieved by client (removes old frames from database, will use this new frame for delta compression)
30 void EntityFrame_AckFrame(entity_database_t *d, int frame)
31 {
32 }
33
34 // (server) clears frame, to prepare for adding entities
35 void EntityFrame_Clear(entity_frame_t *f)
36 {
37         memset(f, 0, sizeof(*f));
38 }
39
40 // (server) allocates an entity slot in frame, returns NULL if full
41 entity_state_t *EntityFrame_NewEntity(entity_frame_t *f, int number)
42 {
43         entity_state_t *e;
44         if (f->numentities >= MAX_ENTITY_DATABASE)
45                 return NULL;
46         e = &f->entitydata[f->numentities++];
47         e->active = true;
48         e->number = number;
49         return e;
50 }
51
52 // (server) writes a frame to network stream
53 void EntityFrame_Write(entity_database_t *d, entity_frame_t *f, int deltaframe, int newframe, sizebuf_t *msg)
54 {
55 }
56
57 // (client) reads a frame from network stream
58 void EntityFrame_Read(entity_database_t *d, entity_frame_t *f)
59 {
60 }
61
62 // (client) fetchs an entity from the database, read with _Read, fills in structs for current and previous state
63 void EntityFrame_FetchEntity(entity_database_t *d, entity_state_t *previous, entity_state_t *current)
64 {
65 }