]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - netconn.h
fix a few typos in comments
[xonotic/darkplaces.git] / netconn.h
index 671dff1e22e6f83e39d82dca9e1b034a282beb1a..f158e359eff47f0fe04f4878e636bb096000d175 100755 (executable)
--- a/netconn.h
+++ b/netconn.h
@@ -37,6 +37,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 
 
 #define NET_PROTOCOL_VERSION   3
+#define NET_EXTRESPONSE_MAX 16
 
 // This is the network info/connection protocol.  It is used to find Quake
 // servers, get info about them, and connect to them.  Once connected, the
@@ -185,6 +186,10 @@ typedef struct netconn_s
        }
        qw;
 
+       // this tracks which of the last 100 received packet sequence numbers were lost
+       int packetlostcounter;
+       unsigned char packetlost[100];
+
        char address[128];
 } netconn_t;
 
@@ -193,8 +198,6 @@ extern mempool_t *netconn_mempool;
 
 extern cvar_t hostname;
 extern cvar_t developer_networking;
-extern char playername[];
-extern int playercolor;
 
 #define SERVERLIST_TOTALSIZE           2048
 #define SERVERLIST_VIEWLISTSIZE                SERVERLIST_TOTALSIZE
@@ -237,6 +240,10 @@ typedef struct serverlist_info_s
        int numplayers;
        // protocol version
        int protocol;
+       // game data version
+       // (an integer that is used for filtering incompatible servers,
+       //  not filterable by QC)
+       int gameversion;
 } serverlist_info_t;
 
 typedef enum
@@ -269,6 +276,8 @@ typedef struct serverlist_entry_s
        unsigned querycounter;
        // used to calculate ping when update comes in
        double querytime;
+       // query protocol to use on this server
+       int protocol; // may be PROTOCOL_QUAKEWORLD or PROTOCOL_DARKPLACES7
 
        serverlist_info_t info;
 
@@ -297,27 +306,16 @@ extern int serverlist_cachecount;
 
 extern qboolean serverlist_consoleoutput;
 
-#if !defined(_WIN32) && !defined(__linux__) && !defined(SUNOS)
-#ifndef htonl
-extern unsigned long htonl (unsigned long hostlong);
-#endif
-#ifndef htons
-extern unsigned short htons (unsigned short hostshort);
-#endif
-#ifndef ntohl
-extern unsigned long ntohl (unsigned long netlong);
-#endif
-#ifndef ntohs
-extern unsigned short ntohs (unsigned short netshort);
-#endif
-#endif
-
 //============================================================================
 //
 // public network functions
 //
 //============================================================================
 
+extern char net_extresponse[NET_EXTRESPONSE_MAX][1400];
+extern int net_extresponse_count;
+extern int net_extresponse_last;
+
 extern double masterquerytime;
 extern int masterquerycount;
 extern int masterreplycount;
@@ -352,17 +350,18 @@ int NetConn_WriteString(lhnetsocket_t *mysocket, const char *string, const lhnet
 int NetConn_IsLocalGame(void);
 void NetConn_ClientFrame(void);
 void NetConn_ServerFrame(void);
-void NetConn_QueryMasters(void);
+void NetConn_QueryMasters(qboolean querydp, qboolean queryqw);
 void NetConn_Heartbeat(int priority);
 void NetConn_QueryQueueFrame(void);
 void Net_Stats_f(void);
 void Net_Slist_f(void);
+void Net_SlistQW_f(void);
 
 // ServerList interface (public)
 // manually refresh the view set, do this after having changed the mask or any other flag
 void ServerList_RebuildViewList(void);
 void ServerList_ResetMasks(void);
-void ServerList_QueryList(void);
+void ServerList_QueryList(qboolean querydp, qboolean queryqw);
 
 #endif