X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=netconn.h;h=5e6f4ad7906762ed351b94070fbcb1f428d47754;hb=621a83652554f7c89b94f3553aee063c5a71fb4f;hp=b359c949c3d877a917e8e354cb1d2d029fe07798;hpb=cba5fa23fae2738f9618a90fc0ee0bdb4c2a4d9e;p=xonotic%2Fdarkplaces.git diff --git a/netconn.h b/netconn.h index b359c949..5e6f4ad7 100755 --- a/netconn.h +++ b/netconn.h @@ -142,11 +142,13 @@ typedef struct netconn_s int receiveMessageLength; unsigned char receiveMessage[NET_MAXMESSAGE]; + // used by both NQ and QW protocols + unsigned int outgoing_unreliable_sequence; + struct netconn_nq_s { unsigned int ackSequence; unsigned int sendSequence; - unsigned int unreliableSendSequence; unsigned int receiveSequence; unsigned int unreliableReceiveSequence; @@ -176,7 +178,6 @@ typedef struct netconn_s int incoming_reliable_sequence; // single bit, maintained local - int outgoing_sequence; int reliable_sequence; // single bit int last_reliable_sequence; // sequence number of last send } @@ -226,7 +227,9 @@ typedef enum serverlist_maskop_e SLMO_EQUAL, SLMO_GREATER, SLMO_GREATEREQUAL, - SLMO_NOTEQUAL + SLMO_NOTEQUAL, + SLMO_STARTSWITH, + SLMO_NOTSTARTSWITH } serverlist_maskop_t; // struct with all fields that you can search for or sort by @@ -244,6 +247,10 @@ typedef struct serverlist_info_s char map[32]; // name of the session char name[128]; + // qc-defined short status string + char qcstatus[128]; + // frags/ping/name list (if they fit in the packet) + char players[1400]; // max client number int maxplayers; // number of currently connected players (including bots) @@ -260,6 +267,8 @@ typedef struct serverlist_info_s // (an integer that is used for filtering incompatible servers, // not filterable by QC) int gameversion; + // favorite server flag + qboolean isfavorite; } serverlist_info_t; typedef enum @@ -275,10 +284,19 @@ typedef enum SLIF_PROTOCOL, SLIF_NUMBOTS, SLIF_NUMHUMANS, - SLIF_COUNT, - SLIF_FREESLOTS + SLIF_FREESLOTS, + SLIF_QCSTATUS, + SLIF_PLAYERS, + SLIF_ISFAVORITE, + SLIF_COUNT } serverlist_infofield_t; +typedef enum +{ + SLSF_DESCENDING = 1, + SLSF_FAVORITESFIRST = 2 +} serverlist_sortflags_t; + typedef enum { SQS_NONE = 0, @@ -317,7 +335,7 @@ extern serverlist_mask_t serverlist_andmasks[SERVERLIST_ANDMASKCOUNT]; extern serverlist_mask_t serverlist_ormasks[SERVERLIST_ORMASKCOUNT]; extern serverlist_infofield_t serverlist_sortbyfield; -extern qboolean serverlist_sortdescending; +extern int serverlist_sortflags; // not using the enum, as it is a bitmask extern int serverlist_viewcount; extern serverlist_entry_t *serverlist_viewlist[SERVERLIST_VIEWLISTSIZE]; @@ -326,6 +344,8 @@ extern int serverlist_cachecount; extern qboolean serverlist_consoleoutput; +void ServerList_GetPlayerStatistics(int *numplayerspointer, int *maxplayerspointer); + //============================================================================ // // public network functions