ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/deliantra/server/include/network.h
(Generate patch)

Comparing deliantra/server/include/network.h (file contents):
Revision 1.14 by root, Sun Jul 1 05:00:18 2007 UTC vs.
Revision 1.17 by root, Sun Jul 29 19:11:47 2007 UTC

45 45
46#include <cstdarg> 46#include <cstdarg>
47 47
48/* Maximum size of any packet we expect. 48/* Maximum size of any packet we expect.
49 * 49 *
50 * The size must be the same in the server and the client (stupid), and its also NOT 50 * The size must be the same in the server and the client (stupid).
51 * the maximum buffer size as one would expect, but the maximum buffer size + 1. 51 * TODO: make the actual network configurable per clietn and use 2**16.
52 */ 52 */
53#define MAXSOCKBUF 10240 53#define MAXSOCKBUF 10239
54 54
55#define CS_QUERY_YESNO 0x1 /* Yes/no question */ 55#define CS_QUERY_YESNO 0x1 /* Yes/no question */
56#define CS_QUERY_SINGLECHAR 0x2 /* Single character response expected */ 56#define CS_QUERY_SINGLECHAR 0x2 /* Single character response expected */
57#define CS_QUERY_HIDEINPUT 0x4 /* Hide input being entered */ 57#define CS_QUERY_HIDEINPUT 0x4 /* Hide input being entered */
58 58
174#define NDI_BROWN 10 /* Sienna */ 174#define NDI_BROWN 10 /* Sienna */
175#define NDI_GOLD 11 175#define NDI_GOLD 11
176#define NDI_TAN 12 /* Khaki */ 176#define NDI_TAN 12 /* Khaki */
177 177
178#define NDI_MAX_COLOR 12 /* Last value in */ 178#define NDI_MAX_COLOR 12 /* Last value in */
179#define NDI_COLOR_MASK 0xff /* Gives lots of room for expansion - we are */ 179#define NDI_COLOR_MASK 0x1f /* Gives lots of room for expansion - we are */
180 /* using an int anyways, so we have the space */ 180 /* using an int anyways, so we have the space */
181 /* to still do all the flags */ 181 /* to still do all the flags */
182 182
183#define NDI_REPLY 0x20 // is a direct reply to a user command
184#define NDI_NOCREATE 0x40 // do not create a tba if one doesn't exist
185#define NDI_CLIENT_MASK 0x7f // what the client is allowed to see
183 186
184#define NDI_UNIQUE 0x100 /* Print this out immediately, don't buffer */ 187#define NDI_UNIQUE 0x1000 /* Print this out immediately, don't buffer */
185#define NDI_ALL 0x200 /* Inform all players of this message */ 188#define NDI_ALL 0x2000 /* Inform all players of this message */
189#define NDI_DEF 0x4000 // ignore colour for channel protocol
186 190
187/* Flags for the item command */ 191/* Flags for the item command */
188enum {a_none, a_readied, a_wielded, a_worn, a_active, a_applied}; 192enum {a_none, a_readied, a_wielded, a_worn, a_active, a_applied};
189#define F_APPLIED 0x000F 193#define F_APPLIED 0x000F
190#define F_LOCATION 0x00F0 194#define F_LOCATION 0x00F0
263{ 267{
264 enum { size = 5 }; // maximum length of an encoded ber32 268 enum { size = 5 }; // maximum length of an encoded ber32
265 uint32 val; 269 uint32 val;
266 270
267 ber32 (uint32 val) : val (val) { } 271 ber32 (uint32 val) : val (val) { }
272
273 static int encoded_size (uint32 val)
274 {
275 if (val >= (1 << 7*4)) return 5;
276 if (val >= (1 << 7*3)) return 4;
277 if (val >= (1 << 7*2)) return 3;
278 if (val >= (1 << 7*1)) return 2;
279 return 1;
280 }
268}; 281};
269 282
270/* Contains the base information we use to make up a packet we want to send. */ 283/* Contains the base information we use to make up a packet we want to send. */
271struct packet 284struct packet
272{ 285{

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines