--- deliantra/server/include/client.h 2008/12/28 06:59:26 1.85
+++ deliantra/server/include/client.h 2009/11/09 18:47:56 1.91
@@ -2,21 +2,20 @@
* This file is part of Deliantra, the Roguelike Realtime MMORPG.
*
* Copyright (©) 2005,2006,2007,2008 Marc Alexander Lehmann / Robin Redeker / the Deliantra team
- * Copyright (©) 2002,2007 Mark Wedel & Crossfire Development Team
- * Copyright (©) 1992,2007 Frank Tore Johansen
*
- * Deliantra is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
+ * Deliantra is free software: you can redistribute it and/or modify it under
+ * the terms of the Affero GNU General Public License as published by the
+ * Free Software Foundation, either version 3 of the License, or (at your
+ * option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see .
+ * You should have received a copy of the Affero GNU General Public License
+ * and the GNU General Public License along with this program. If not, see
+ * .
*
* The authors can be reached via e-mail to
*/
@@ -65,6 +64,8 @@
};
#endif
+//+GPL
+
// (possibly) max. number of objects "per page" in the ground container
#define FLOORBOX_PAGESIZE 50
@@ -148,6 +149,8 @@
int datalen;
};
+//-GPL
+
/* how many times we are allowed to give the wrong password before being kicked. */
#define MAX_PASSWORD_FAILURES 5
@@ -184,6 +187,7 @@
bool ACC (RW, mapinfocmd); // return map info and send map change info
uint8_t ACC (RW, extcmd); // call into extensions/plugins
bool ACC (RW, update_look); /* If true, we need to send the look window */
+ bool ACC (RW, update_spells); // If true, we need to esrv_update_spells
bool ACC (RW, has_readable_type); /* If true client accept additional text information */
/* used to arrange text in books, scrolls, or scripted dialogs */
bool ACC (RW, monitor_spells); /* Client wishes to be informed when their spell list changes */
@@ -206,6 +210,7 @@
tstamp ACC (RW, last_send); // last data send on socket.
+ float ACC (RW, socket_timeout); /* after how many seconds of no ack do we declare dead */
int ACC (RW, rate_avail); // current rate balance
int ACC (RW, max_rate); // max. # of bytes to send per tick
faceidx ACC (RW, scrub_idx); // which face to send next
@@ -289,7 +294,7 @@
void send_packet (const char *buf);
void send_packet (const char *buf, int len);
- void send_packet_printf (const char *format, ...);
+ void send_packet_printf (const char *format, ...) attribute ((format (printf, 2, 3)));
void send_packet (packet &sl);
void send_drawinfo (const char *msg, int flags = NDI_BLACK);
@@ -348,6 +353,8 @@
ACC (RW, tcpi.tcpi_reordering);
#endif
+//+GPL
+
#define CLIENT_SUPPORT_READABLES(__sockPtr,__type)\
( ((__type)>0) &&\
((__sockPtr)->has_readable_type) && \
@@ -361,6 +368,8 @@
//#define VERSION_SC 1027 // requestinfo image_info and image_sums, makes extending faces on the fly impossible
#define VERSION_INFO "Deliantra Server"
+//-GPL
+
typedef object_vector sockvec;
extern sockvec clients;