From e9ef9da90a206204b283dacd15c35bd3fd1fe5c9 Mon Sep 17 00:00:00 2001 From: cloudwalk Date: Tue, 29 Sep 2020 00:33:16 +0000 Subject: [PATCH] Add qdefs.h and qstats.h to split up quakedef.h. Make a lot of headers standalone-compilable. git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12961 d7cf8633-e32d-0410-b094-e92efae38249 --- bspfile.h | 3 + cap_ogg.h | 2 + cdaudio.h | 3 + cl_screen.h | 3 + cl_video.h | 2 + cmd.h | 4 + collision.h | 6 + com_list.h | 1 + common.h | 3 + console.h | 5 + crypto.h | 7 +- cvar.h | 8 +- darkplaces-sdl2-vs2017.vcxproj | 2 + darkplaces-sdl2-vs2019.vcxproj | 2 + dpvsimpledecode.h | 4 + draw.h | 4 + fs.h | 5 + hmac.h | 2 + host.h | 7 + image.c | 4 +- image.h | 5 + image_png.h | 2 + input.h | 3 + jpeg.h | 2 + keys.h | 3 + lhfont.h | 3 + lhnet.h | 2 + libcurl.h | 4 + matrixlib.h | 2 + menu.h | 4 + netconn.h | 6 + protocol.h | 7 + qdefs.h | 172 ++++++++++++++++++++++++ qstats.h | 67 ++++++++++ quakedef.h | 233 +-------------------------------- r_textures.h | 3 + sbar.h | 2 + screen.h | 3 + snd_xmp.h | 2 + sound.h | 1 + sv_demo.h | 4 + sys.h | 3 + taskqueue.h | 1 + thread.h | 2 + utf8lib.h | 2 + vid.h | 4 + wad.h | 3 + world.h | 7 + zone.h | 4 + 49 files changed, 394 insertions(+), 239 deletions(-) create mode 100644 qdefs.h create mode 100644 qstats.h diff --git a/bspfile.h b/bspfile.h index f918d794..1341b9e0 100644 --- a/bspfile.h +++ b/bspfile.h @@ -18,6 +18,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ +#ifndef BSPFILE_H +#define BSPFILE_H #define MAX_MAP_HULLS 16 // Q1BSP has 4, Hexen2 Q1BSP has 8, MCBSP has 16 @@ -322,3 +324,4 @@ typedef struct dleaf_s } dleaf_t; */ +#endif diff --git a/cap_ogg.h b/cap_ogg.h index d56439f3..1dfbab27 100644 --- a/cap_ogg.h +++ b/cap_ogg.h @@ -1,3 +1,5 @@ +#include "qtypes.h" + void SCR_CaptureVideo_Ogg_Init(void); qbool SCR_CaptureVideo_Ogg_Available(void); void SCR_CaptureVideo_Ogg_BeginVideo(void); diff --git a/cdaudio.h b/cdaudio.h index 50065aa4..09099190 100644 --- a/cdaudio.h +++ b/cdaudio.h @@ -18,6 +18,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ +#include "qtypes.h" +#include "cvar.h" + extern cvar_t cdaudioinitialized; int CDAudio_Init(void); diff --git a/cl_screen.h b/cl_screen.h index d9787262..77281d99 100644 --- a/cl_screen.h +++ b/cl_screen.h @@ -2,6 +2,9 @@ #ifndef CL_SCREEN_H #define CL_SCREEN_H +#include "qtypes.h" +#include "cvar.h" + void SHOWLMP_decodehide(void); void SHOWLMP_decodeshow(void); void SHOWLMP_drawall(void); diff --git a/cl_video.h b/cl_video.h index d3a4763a..9976c738 100644 --- a/cl_video.h +++ b/cl_video.h @@ -2,6 +2,8 @@ #ifndef CL_VIDEO_H #define CL_VIDEO_H +#include "draw.h" + #define CLVIDEOPREFIX "video/" #define CLTHRESHOLD 2.0 diff --git a/cmd.h b/cmd.h index cba96ef2..dd9b4326 100644 --- a/cmd.h +++ b/cmd.h @@ -37,7 +37,11 @@ The game starts with a Cbuf_AddText ("exec quake.rc\n"); Cbuf_Execute (); #ifndef CMD_H #define CMD_H +#include "qtypes.h" +#include "com_list.h" +#include "cvar.h" #include "thread.h" +#include "zone.h" struct cmd_state_s; diff --git a/collision.h b/collision.h index fd693375..ebd1f22f 100644 --- a/collision.h +++ b/collision.h @@ -2,6 +2,12 @@ #ifndef COLLISION_H #define COLLISION_H +#include "cvar.h" +#include "matrixlib.h" +#include "zone.h" +typedef struct texture_s texture_t; +typedef struct model_s dp_model_t; + typedef union plane_s { struct diff --git a/com_list.h b/com_list.h index 8f31dc41..e99ee346 100644 --- a/com_list.h +++ b/com_list.h @@ -24,6 +24,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #define LIST_H #include +#include "qtypes.h" typedef struct llist_s { diff --git a/common.h b/common.h index 360ed9c0..24619a14 100644 --- a/common.h +++ b/common.h @@ -21,6 +21,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #ifndef COMMON_H #define COMMON_H +#include +#include "qtypes.h" +#include "qdefs.h" /// MSVC has a different name for several standard functions #ifdef WIN32 diff --git a/console.h b/console.h index 9279b1c9..cc456355 100644 --- a/console.h +++ b/console.h @@ -21,6 +21,11 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #ifndef CONSOLE_H #define CONSOLE_H +#include +#include "qtypes.h" +#include "cmd.h" +#include "lhnet.h" + // // console // diff --git a/crypto.h b/crypto.h index 80eea7a2..2d97948a 100644 --- a/crypto.h +++ b/crypto.h @@ -1,6 +1,11 @@ #ifndef CRYPTO_H #define CRYPTO_H +#include +#include "qtypes.h" +#include "cvar.h" +#include "lhnet.h" + extern cvar_t crypto_developer; extern cvar_t crypto_aeslevel; #define ENCRYPTION_REQUIRED (crypto_aeslevel.integer >= 3) @@ -11,8 +16,6 @@ extern int crypto_keyfp_recommended_length; // applies to LOCAL IDs, and to ALL // AES case causes 16 to 31 bytes overhead // SHA256 case causes 16 bytes overhead as we truncate to 128bit -#include "lhnet.h" - #define FP64_SIZE 44 #define DHKEY_SIZE 16 diff --git a/cvar.h b/cvar.h index 525d4f00..65a2e1c5 100644 --- a/cvar.h +++ b/cvar.h @@ -19,9 +19,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ // cvar.h -struct cmd_state_s; -typedef struct cmd_state_s cmd_state_t; - /* cvar_t variables are used to hold scalar or string variables that can be changed or displayed at the console or prog code as well as accessed directly @@ -59,6 +56,11 @@ interface from being ambiguous. #ifndef CVAR_H #define CVAR_H +#include "qtypes.h" +#include "qdefs.h" +typedef struct cmd_state_s cmd_state_t; +typedef struct qfile_s qfile_t; + typedef struct cvar_s { int flags; diff --git a/darkplaces-sdl2-vs2017.vcxproj b/darkplaces-sdl2-vs2017.vcxproj index 1c3cc255..925a88fc 100644 --- a/darkplaces-sdl2-vs2017.vcxproj +++ b/darkplaces-sdl2-vs2017.vcxproj @@ -383,6 +383,8 @@ + + diff --git a/darkplaces-sdl2-vs2019.vcxproj b/darkplaces-sdl2-vs2019.vcxproj index 2d5ff7a0..c39d16af 100644 --- a/darkplaces-sdl2-vs2019.vcxproj +++ b/darkplaces-sdl2-vs2019.vcxproj @@ -384,6 +384,8 @@ + + diff --git a/dpvsimpledecode.h b/dpvsimpledecode.h index 0b0ac35a..87b31272 100644 --- a/dpvsimpledecode.h +++ b/dpvsimpledecode.h @@ -2,7 +2,11 @@ #ifndef DPVSIMPLEDECODE_H #define DPVSIMPLEDECODE_H +#include "qtypes.h" +#include "qdefs.h" +#include "cvar.h" #include "cl_video.h" +#include "draw.h" #define DPVSIMPLEDECODEERROR_NONE 0 #define DPVSIMPLEDECODEERROR_EOF 1 diff --git a/draw.h b/draw.h index e1d4eaae..381dd35e 100644 --- a/draw.h +++ b/draw.h @@ -24,6 +24,10 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #ifndef DRAW_H #define DRAW_H +#include +#include "qtypes.h" +#include "r_textures.h" + typedef struct cachepic_s cachepic_t; typedef enum cachepicflags_e diff --git a/fs.h b/fs.h index aefa5b59..755e5c50 100644 --- a/fs.h +++ b/fs.h @@ -25,6 +25,11 @@ #ifndef FS_H #define FS_H +#include +#include +#include "qtypes.h" +#include "qdefs.h" +#include "zone.h" // ------ Types ------ // diff --git a/hmac.h b/hmac.h index 76ed6558..71108ab6 100644 --- a/hmac.h +++ b/hmac.h @@ -1,6 +1,8 @@ #ifndef HMAC_H #define HMAC_H +#include "qtypes.h" + typedef void (*hashfunc_t) (unsigned char *out, const unsigned char *in, int n); qbool hmac( hashfunc_t hfunc, int hlen, int hblock, diff --git a/host.h b/host.h index 591e6e8a..b2d0a623 100644 --- a/host.h +++ b/host.h @@ -1,6 +1,11 @@ #ifndef HOST_H #define HOST_H +#include +#include "qtypes.h" +#include "qdefs.h" +#include "cmd.h" + typedef enum host_state_e { host_shutdown, @@ -39,3 +44,5 @@ void Host_NoOperation_f(cmd_state_t *cmd); void Host_LockSession(void); void Host_UnlockSession(void); void Host_AbortCurrentFrame(void); + +#endif diff --git a/image.c b/image.c index f0243e5b..9f253a1d 100644 --- a/image.c +++ b/image.c @@ -1842,10 +1842,8 @@ void Image_HeightmapToNormalmap_BGRA(const unsigned char *inpixels, unsigned cha } } -static const unsigned char concharimage[] = -{ + #include "lhfont.h" -}; static unsigned char *Image_GenerateConChars(void) { diff --git a/image.h b/image.h index 98173984..99fd28c3 100644 --- a/image.h +++ b/image.h @@ -2,6 +2,11 @@ #ifndef IMAGE_H #define IMAGE_H +#include +#include "qtypes.h" +#include "cvar.h" +#include "r_textures.h" + extern int image_width, image_height; unsigned char *Image_GenerateNoTexture(void); diff --git a/image_png.h b/image_png.h index 37dc886c..af3ab97a 100644 --- a/image_png.h +++ b/image_png.h @@ -24,6 +24,8 @@ #ifndef PNG_H #define PNG_H +#include "qtypes.h" + qbool PNG_OpenLibrary (void); void PNG_CloseLibrary (void); unsigned char* PNG_LoadImage_BGRA (const unsigned char *f, int filesize, int *miplevel); diff --git a/input.h b/input.h index db5b22d6..9c94beed 100644 --- a/input.h +++ b/input.h @@ -22,6 +22,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #ifndef INPUT_H #define INPUT_H +#include "qtypes.h" +#include "cvar.h" + extern cvar_t in_pitch_min; extern cvar_t in_pitch_max; diff --git a/jpeg.h b/jpeg.h index 34f7dff3..f869d6a0 100644 --- a/jpeg.h +++ b/jpeg.h @@ -24,6 +24,8 @@ #ifndef JPEG_H #define JPEG_H +#include +#include "qtypes.h" qbool JPEG_OpenLibrary (void); void JPEG_CloseLibrary (void); diff --git a/keys.h b/keys.h index ea104f1d..baf1b9a1 100644 --- a/keys.h +++ b/keys.h @@ -28,6 +28,9 @@ #define __KEYS_H #include "qtypes.h" +#include "qdefs.h" +#include "fs.h" +#include "cmd.h" // // these are the key numbers that should be passed to Key_Event diff --git a/lhfont.h b/lhfont.h index e6511809..83aedb5d 100644 --- a/lhfont.h +++ b/lhfont.h @@ -1,3 +1,5 @@ +static const unsigned char concharimage[] = +{ 0x00,0x00,0x0B,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x01,0x08,0x08,0x99,0x00,0x83,0xFF,0xFF,0x00,0xE1,0x00,0x99,0x00,0x83,0xFF,0xFF,0x00,0xE1,0x00,0x81,0x00,0x83,0xFF,0x93,0x00,0x83,0xFF,0x83,0x00,0x83,0xFF,0x8B,0x00,0x89,0xFF,0x8B,0x00,0x85,0xFF,0x85,0x00,0x87,0xFF,0x89,0x00,0x83,0xFF,0x87,0x00,0x83,0xFF,0x81,0x00,0x83,0xFF,0x83,0x00,0x83,0xFF,0x85,0x00,0x83,0xFF,0x85,0x00,0x83,0xFF,0x89,0x00,0x8B,0xFF,0x89,0x00,0x85,0xFF,0x87,0x00,0x83,0xFF,0x87,0x00,0x85,0xFF,0x9D,0x00,0x83,0xFF,0x85,0x00,0x81,0x00,0x83,0xFF,0x93,0x00,0x83,0xFF,0x83,0x00,0x83,0xFF,0x8B,0x00,0x8A,0xFF,0x89,0x00,0x86,0xFF,0x84,0x00,0x89,0xFF, 0x87,0x00,0x85,0xFF,0x86,0x00,0x83,0xFF,0x81,0x00,0x83,0xFF,0x83,0x00,0x84,0xFF,0x83,0x00,0x84,0xFF,0x85,0x00,0x84,0xFF,0x88,0x00,0x8B,0xFF,0x88,0x00,0x86,0xFF,0x87,0x00,0x83,0xFF,0x87,0x00,0x86,0xFF,0x9B,0x00,0x84,0xFF,0x85,0x00,0x81,0x00,0x89,0xFF,0x87,0x00,0x89,0xFF,0x83,0x00,0x83,0xFF,0x93,0x00,0x83,0xFF,0x87,0x00,0x83,0xFF,0x87,0x00,0x83,0xFF,0x83,0x00,0x83,0xFF,0x85,0x00,0x87,0xFF,0x85,0x00,0x89,0xFF,0x84,0x00,0x84,0xFF,0x81,0x00,0x84,0xFF,0x88,0x00,0x83,0xFF,0x88,0x00,0x84,0xFF,0x8D,0x00,0x83,0xFF,0x8B,0x00,0x83,0xFF,0x8B,0x00,0x83,0xFF,0x99,0x00,0x83,0xFF,0x87,0x00,0x81,0x00,0x8A,0xFF,0x85,0x00,0x8A,0xFF,0x83,0x00,0x83,0xFF, 0x93,0x00,0x83,0xFF,0x87,0x00,0x83,0xFF,0x87,0x00,0x83,0xFF,0x83,0x00,0x83,0xFF,0x84,0x00,0x89,0xFF,0x83,0x00,0x8B,0xFF,0x84,0x00,0x89,0xFF,0x89,0x00,0x83,0xFF,0x89,0x00,0x84,0xFF,0x8B,0x00,0x84,0xFF,0x8B,0x00,0x83,0xFF,0x8B,0x00,0x84,0xFF,0x97,0x00,0x84,0xFF,0x87,0x00,0x81,0x00,0x83,0xFF,0x83,0x00,0x83,0xFF,0x83,0x00,0x83,0xFF,0x83,0x00,0x83,0xFF,0x83,0x00,0x83,0xFF,0x8D,0x00,0x88,0xFF,0x88,0x00,0x83,0xFF,0x87,0x00,0x83,0xFF,0x83,0x00,0x83,0xFF,0x83,0x00,0x84,0xFF,0x81,0x00,0x84,0xFF,0x81,0x00,0x83,0xFF,0x81,0x00,0x81,0xFF,0x81,0x00,0x83,0xFF,0x84,0x00,0x87,0xFF,0x8A,0x00,0x83,0xFF,0x8A,0x00,0x84,0xFF,0x8A,0x00,0x82,0xFF,0x8D,0x00, @@ -104,3 +106,4 @@ 0x87,0x00,0x83,0xFF,0x8B,0x00,0x83,0xFF,0x85,0x00,0x85,0x00,0x83,0xFF,0x87,0x00,0xAB,0xFF,0x82,0x00,0x8D,0xFF,0x86,0x00,0x83,0xFF,0x88,0x00,0x89,0xFF,0x84,0x00,0x8B,0xFF,0x83,0x00,0x8B,0xFF,0x83,0x00,0x8B,0xFF,0x93,0x00,0x8B,0xFF,0x93,0x00,0x8B,0xFF,0x87,0x00,0x83,0xFF,0x8B,0x00,0x83,0xFF,0x85,0x00,0x85,0x00,0x83,0xFF,0x87,0x00,0xAB,0xFF,0x82,0x00,0x8D,0xFF,0x86,0x00,0x83,0xFF,0x88,0x00,0x89,0xFF,0x84,0x00,0x8B,0xFF,0x83,0x00,0x8B,0xFF,0x83,0x00,0x8B,0xFF,0x93,0x00,0x8B,0xFF,0x93,0x00,0x89,0xFF,0x89,0x00,0x83,0xFF,0x8B,0x00,0x83,0xFF,0x85,0x00,0x91,0x00,0xAB,0xFF,0x82,0x00,0x8D,0xFF,0x93,0x00,0x89,0xFF,0x84,0x00,0x8B,0xFF,0x83,0x00, 0x8B,0xFF,0x83,0x00,0x8B,0xFF,0x93,0x00,0x8B,0xFF,0x93,0x00,0x87,0xFF,0xA5,0x00,0x92,0x00,0xA9,0xFF,0x83,0x00,0x8D,0xFF,0x93,0x00,0x89,0xFF,0x84,0x00,0x8B,0xFF,0x83,0x00,0x8B,0xFF,0x83,0x00,0x8B,0xFF,0x93,0x00,0x8B,0xFF,0x93,0x00,0x85,0xFF,0xA7,0x00,0x93,0x00,0xA7,0xFF,0x84,0x00,0x8D,0xFF,0x93,0x00,0x89,0xFF,0x84,0x00,0x8B,0xFF,0x83,0x00,0x8B,0xFF,0x83,0x00,0x8B,0xFF,0x93,0x00,0x8B,0xFF,0x93,0x00,0x83,0xFF,0xA9,0x00,0xC1,0x00,0x8B,0xFF,0x95,0x00,0x87,0xFF,0x85,0x00,0x8B,0xFF,0x83,0x00,0x8B,0xFF,0x83,0x00,0x8B,0xFF,0x93,0x00,0x8B,0xFF,0x93,0x00,0x81,0xFF,0xAB,0x00,0xC2,0x00,0x89,0xFF,0x97,0x00,0x85,0xFF,0xFF,0x00,0x94,0x00,0xFF,0x00, 0xFF,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x54,0x52,0x55,0x45,0x56,0x49,0x53,0x49,0x4F,0x4E,0x2D,0x58,0x46,0x49,0x4C,0x45,0x2E,0x00 +}; \ No newline at end of file diff --git a/lhnet.h b/lhnet.h index 764e361a..1644fb17 100644 --- a/lhnet.h +++ b/lhnet.h @@ -4,6 +4,8 @@ #ifndef LHNET_H #define LHNET_H +#include + typedef enum lhnetaddresstype_e { LHNETADDRESSTYPE_NONE, diff --git a/libcurl.h b/libcurl.h index 43ab1713..b78955c6 100644 --- a/libcurl.h +++ b/libcurl.h @@ -1,3 +1,7 @@ +#include +#include "qtypes.h" +#include "qdefs.h" + enum { CURLCBSTATUS_OK = 0, diff --git a/matrixlib.h b/matrixlib.h index 7e98eab3..cf762524 100644 --- a/matrixlib.h +++ b/matrixlib.h @@ -2,6 +2,8 @@ #ifndef MATRIXLIB_H #define MATRIXLIB_H +#include "qtypes.h" + //#define MATRIX4x4_OPENGLORIENTATION typedef struct matrix4x4_s diff --git a/menu.h b/menu.h index e8105871..93abb624 100644 --- a/menu.h +++ b/menu.h @@ -21,6 +21,10 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #ifndef MENU_H #define MENU_H +#include "qtypes.h" + +typedef struct serverlist_entry_s serverlist_entry_t; + enum m_state_e { m_none, m_main, diff --git a/netconn.h b/netconn.h index 1198db55..144a35b8 100755 --- a/netconn.h +++ b/netconn.h @@ -22,7 +22,13 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #ifndef NET_H #define NET_H +#include +#include "qtypes.h" +#include "cmd.h" +#include "cvar.h" +#include "crypto.h" #include "lhnet.h" +#include "common.h" #define NET_HEADERSIZE (2 * sizeof(unsigned int)) diff --git a/protocol.h b/protocol.h index 3fa39244..31be9783 100644 --- a/protocol.h +++ b/protocol.h @@ -22,6 +22,13 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #ifndef PROTOCOL_H #define PROTOCOL_H +#include "qtypes.h" +#include "qdefs.h" +#include "cvar.h" +#include "zone.h" +#include "qstats.h" +#include "common.h" + // protocolversion_t is defined in common.h protocolversion_t Protocol_EnumForName(const char *s); diff --git a/qdefs.h b/qdefs.h new file mode 100644 index 00000000..ce1d3820 --- /dev/null +++ b/qdefs.h @@ -0,0 +1,172 @@ +#ifndef QDEFS_H +#define QDEFS_H + +#if (__GNUC__ > 2) || defined (__clang__) || (__TINYC__) +#define DP_FUNC_PRINTF(n) __attribute__ ((format (printf, n, n+1))) +#define DP_FUNC_PURE __attribute__ ((pure)) +#define DP_FUNC_NORETURN __attribute__ ((noreturn)) +#else +#define DP_FUNC_PRINTF(n) +#define DP_FUNC_PURE +#define DP_FUNC_NORETURN +#endif + +#define MAX_NUM_ARGVS 50 + +#ifdef DP_SMALLMEMORY +#define MAX_INPUTLINE 1024 +#define CON_TEXTSIZE 16384 +#define CON_MAXLINES 256 +#define HIST_TEXTSIZE 2048 +#define HIST_MAXLINES 16 +#define MAX_ALIAS_NAME 32 +#define CMDBUFSIZE 131072 +#define MAX_ARGS 80 + +#define NET_MAXMESSAGE 65536 +#define MAX_PACKETFRAGMENT 1024 +#define MAX_EDICTS 4096 +#define MAX_MODELS 1024 +#define MAX_SOUNDS 1024 +#define MAX_LIGHTSTYLES 64 +#define MAX_STYLESTRING 16 +#define MAX_SCOREBOARD 32 +#define MAX_SCOREBOARDNAME 128 +#define MAX_USERINFO_STRING 196 +#define MAX_SERVERINFO_STRING 512 +#define MAX_LOCALINFO_STRING 1 // not actually used by DP servers +#define CL_MAX_USERCMDS 32 +#define CVAR_HASHSIZE 1024 +#define M_MAX_EDICTS 4096 +#define MAX_DEMOS 8 +#define MAX_DEMONAME 16 +#define MAX_SAVEGAMES 12 +#define SAVEGAME_COMMENT_LENGTH 39 +#define MAX_CLIENTNETWORKEYES 2 +#define MAX_LEVELNETWORKEYES 0 // no portal support +#define MAX_OCCLUSION_QUERIES 256 + +#define CRYPTO_HOSTKEY_HASHSIZE 256 +#define MAX_NETWM_ICON 1026 // one 32x32 + +#define MAX_WATERPLANES 2 +#define MAX_CUBEMAPS 1024 +#define MAX_EXPLOSIONS 8 +#define MAX_DLIGHTS 16 +#define MAX_CACHED_PICS 2048 // this is 144 bytes each (or 152 on 64bit) +#define CACHEPICHASHSIZE 256 +#define MAX_PARTICLEEFFECTNAME 256 +#define MAX_PARTICLEEFFECTINFO 1024 +#define MAX_PARTICLETEXTURES 256 +#define MAXCLVIDEOS 1 +#define MAX_DYNAMIC_TEXTURE_COUNT 2 +#define MAX_MAP_LEAFS 8192 + +#define MAXTRACKS 256 +#define MAX_DYNAMIC_CHANNELS 64 +#define MAX_CHANNELS 260 +#define MODLIST_TOTALSIZE 32 +#define MAX_FAVORITESERVERS 32 +#define MAX_DECALSYSTEM_QUEUE 64 +#define PAINTBUFFER_SIZE 512 +#define MAX_BINDMAPS 8 +#define MAX_PARTICLES_INITIAL 8192 +#define MAX_PARTICLES 8192 +#define MAX_ENTITIES_INITIAL 256 +#define MAX_STATICENTITIES 256 +#define MAX_EFFECTS 16 +#define MAX_BEAMS 16 +#define MAX_TEMPENTITIES 256 +#define SERVERLIST_TOTALSIZE 1024 +#define SERVERLIST_ANDMASKCOUNT 5 +#define SERVERLIST_ORMASKCOUNT 5 +#else +#define MAX_INPUTLINE 16384 ///< maximum length of console commandline, QuakeC strings, and many other text processing buffers +#define CON_TEXTSIZE 1048576 ///< max scrollback buffer characters in console +#define CON_MAXLINES 16384 ///< max scrollback buffer lines in console +#define HIST_TEXTSIZE 262144 ///< max command history buffer characters in console +#define HIST_MAXLINES 4096 ///< max command history buffer lines in console +#define MAX_ALIAS_NAME 32 +#define CMDBUFSIZE 655360 ///< maximum script size that can be loaded by the exec command (8192 in Quake) +#define MAX_ARGS 80 ///< maximum number of parameters to a console command or alias + +#define NET_MAXMESSAGE 131072 ///< max reliable packet size (sent as multiple fragments of MAX_PACKETFRAGMENT) +#define MAX_PACKETFRAGMENT 1024 ///< max length of packet fragment +#define MAX_EDICTS 32768 ///< max number of objects in game world at once (32768 protocol limit) +#define MAX_MODELS 8192 ///< max number of models loaded at once (including during level transitions) +#define MAX_SOUNDS 4096 ///< max number of sounds loaded at once +#define MAX_LIGHTSTYLES 256 ///< max flickering light styles in level (note: affects savegame format) +#define MAX_STYLESTRING 64 ///< max length of flicker pattern for light style +#define MAX_SCOREBOARD 255 ///< max number of players in game at once (255 protocol limit) +#define MAX_SCOREBOARDNAME 128 ///< max length of player name in game +#define MAX_USERINFO_STRING 1280 ///< max length of infostring for PROTOCOL_QUAKEWORLD (196 in QuakeWorld) +#define MAX_SERVERINFO_STRING 1280 ///< max length of server infostring for PROTOCOL_QUAKEWORLD (512 in QuakeWorld) +#define MAX_LOCALINFO_STRING 32768 ///< max length of server-local infostring for PROTOCOL_QUAKEWORLD (32768 in QuakeWorld) +#define CL_MAX_USERCMDS 128 ///< max number of predicted input packets in queue +#define CVAR_HASHSIZE 65536 ///< number of hash buckets for accelerating cvar name lookups +#define M_MAX_EDICTS 32768 ///< max objects in menu vm +#define MAX_DEMOS 8 ///< max demos provided to demos command +#define MAX_DEMONAME 16 ///< max demo name length for demos command +#define MAX_SAVEGAMES 12 ///< max savegames listed in savegame menu +#define SAVEGAME_COMMENT_LENGTH 39 ///< max comment length of savegame in menu +#define MAX_CLIENTNETWORKEYES 16 ///< max number of locations that can be added to pvs when culling network entities (must be at least 2 for prediction) +#define MAX_LEVELNETWORKEYES 512 ///< max number of locations that can be added to pvs when culling network entities (must be at least 2 for prediction) +#define MAX_OCCLUSION_QUERIES 4096 ///< max number of query objects that can be used in one frame + +#define CRYPTO_HOSTKEY_HASHSIZE 8192 ///< number of hash buckets for accelerating host key lookups +#define MAX_NETWM_ICON 352822 // 16x16, 22x22, 24x24, 32x32, 48x48, 64x64, 128x128, 256x256, 512x512 + +#define MAX_WATERPLANES 16 ///< max number of water planes visible (each one causes additional view renders) +#define MAX_CUBEMAPS 1024 ///< max number of cubemap textures loaded for light filters +#define MAX_EXPLOSIONS 64 ///< max number of explosion shell effects active at once (not particle related) +#define MAX_DLIGHTS 256 ///< max number of dynamic lights (rocket flashes, etc) in scene at once +#define MAX_CACHED_PICS 2048 ///< max number of 2D pics loaded at once +#define CACHEPICHASHSIZE 256 ///< number of hash buckets for accelerating 2D pic name lookups +#define MAX_PARTICLEEFFECTNAME 4096 ///< maximum number of unique names of particle effects (for particleeffectnum) +#define MAX_PARTICLEEFFECTINFO 8192 ///< maximum number of unique particle effects (each name may associate with several of these) +#define MAX_PARTICLETEXTURES 256 ///< maximum number of unique particle textures in the particle font +#define MAXCLVIDEOS 65 ///< maximum number of video streams being played back at once (1 is reserved for the playvideo command) +#define MAX_DYNAMIC_TEXTURE_COUNT 64 ///< maximum number of dynamic textures (web browsers, playvideo, etc) +#define MAX_MAP_LEAFS 65536 ///< maximum number of BSP leafs in world (8192 in Quake) + +#define MAXTRACKS 256 ///< max CD track index +// 0 to NUM_AMBIENTS - 1 = water, etc +// NUM_AMBIENTS to NUM_AMBIENTS + MAX_DYNAMIC_CHANNELS - 1 = normal entity sounds +// NUM_AMBIENTS + MAX_DYNAMIC_CHANNELS to total_channels = static sounds +#define MAX_DYNAMIC_CHANNELS 512 +#define MAX_CHANNELS (8192 + 4) +#define MODLIST_TOTALSIZE 256 +#define MAX_FAVORITESERVERS 256 +#define MAX_DECALSYSTEM_QUEUE 1024 +#define PAINTBUFFER_SIZE 2048 +#define MAX_BINDMAPS 8 +#define MAX_PARTICLES_INITIAL 8192 ///< initial allocation for cl.particles +#define MAX_PARTICLES 1048576 ///< upper limit on cl.particles size +#define MAX_ENTITIES_INITIAL 256 ///< initial size of cl.entities +#define MAX_STATICENTITIES 4096 ///< limit on size of cl.static_entities +#define MAX_EFFECTS 256 ///< limit on size of cl.effects +#define MAX_BEAMS 256 ///< limit on size of cl.beams +#define MAX_TEMPENTITIES 4096 ///< max number of temporary models visible per frame (certain sprite effects, certain types of CSQC entities also use this) +#define SERVERLIST_TOTALSIZE 2048 ///< max servers in the server list +#define SERVERLIST_ANDMASKCOUNT 16 ///< max items in server list AND mask +#define SERVERLIST_ORMASKCOUNT 16 ///< max items in server list OR mask +#endif + + +#define CMD_TOKENIZELENGTH (MAX_INPUTLINE + MAX_ARGS) ///< maximum tokenizable commandline length (counting trailing 0) + + +#define MAX_QPATH 128 ///< max length of a quake game pathname +#ifdef PATH_MAX +#define MAX_OSPATH PATH_MAX +#elif MAX_PATH +#define MAX_OSPATH MAX_PATH +#else +#define MAX_OSPATH 1024 ///< max length of a filesystem pathname +#endif + +#define ON_EPSILON 0.1 ///< point on plane side epsilon + +#define NET_MINRATE 1000 ///< limits "rate" and "sv_maxrate" cvars + +#endif diff --git a/qstats.h b/qstats.h new file mode 100644 index 00000000..098b82d4 --- /dev/null +++ b/qstats.h @@ -0,0 +1,67 @@ +#ifndef QSTATS_H +#define QSTATS_H + +// +// stats are integers communicated to the client by the server +// +#define MAX_CL_STATS 256 +#define STAT_HEALTH 0 +//#define STAT_FRAGS 1 +#define STAT_WEAPON 2 +#define STAT_AMMO 3 +#define STAT_ARMOR 4 +#define STAT_WEAPONFRAME 5 +#define STAT_SHELLS 6 +#define STAT_NAILS 7 +#define STAT_ROCKETS 8 +#define STAT_CELLS 9 +#define STAT_ACTIVEWEAPON 10 +#define STAT_TOTALSECRETS 11 +#define STAT_TOTALMONSTERS 12 +#define STAT_SECRETS 13 ///< bumped on client side by svc_foundsecret +#define STAT_MONSTERS 14 ///< bumped by svc_killedmonster +#define STAT_ITEMS 15 ///< FTE, DP +#define STAT_VIEWHEIGHT 16 ///< FTE, DP +//#define STAT_TIME 17 ///< FTE +//#define STAT_VIEW2 20 ///< FTE +#define STAT_VIEWZOOM 21 ///< DP +#define MIN_VM_STAT 32 ///< stat range available to VM_SV_AddStat +#define MAX_VM_STAT 220 ///< stat range available to VM_SV_AddStat +#define STAT_MOVEVARS_AIRACCEL_QW_STRETCHFACTOR 220 ///< DP +#define STAT_MOVEVARS_AIRCONTROL_PENALTY 221 ///< DP +#define STAT_MOVEVARS_AIRSPEEDLIMIT_NONQW 222 ///< DP +#define STAT_MOVEVARS_AIRSTRAFEACCEL_QW 223 ///< DP +#define STAT_MOVEVARS_AIRCONTROL_POWER 224 ///< DP +#define STAT_MOVEFLAGS 225 ///< DP +#define STAT_MOVEVARS_WARSOWBUNNY_AIRFORWARDACCEL 226 ///< DP +#define STAT_MOVEVARS_WARSOWBUNNY_ACCEL 227 ///< DP +#define STAT_MOVEVARS_WARSOWBUNNY_TOPSPEED 228 ///< DP +#define STAT_MOVEVARS_WARSOWBUNNY_TURNACCEL 229 ///< DP +#define STAT_MOVEVARS_WARSOWBUNNY_BACKTOSIDERATIO 230 ///< DP +#define STAT_MOVEVARS_AIRSTOPACCELERATE 231 ///< DP +#define STAT_MOVEVARS_AIRSTRAFEACCELERATE 232 ///< DP +#define STAT_MOVEVARS_MAXAIRSTRAFESPEED 233 ///< DP +#define STAT_MOVEVARS_AIRCONTROL 234 ///< DP +#define STAT_FRAGLIMIT 235 ///< DP +#define STAT_TIMELIMIT 236 ///< DP +#define STAT_MOVEVARS_WALLFRICTION 237 ///< DP +#define STAT_MOVEVARS_FRICTION 238 ///< DP +#define STAT_MOVEVARS_WATERFRICTION 239 ///< DP +#define STAT_MOVEVARS_TICRATE 240 ///< DP +#define STAT_MOVEVARS_TIMESCALE 241 ///< DP +#define STAT_MOVEVARS_GRAVITY 242 ///< DP +#define STAT_MOVEVARS_STOPSPEED 243 ///< DP +#define STAT_MOVEVARS_MAXSPEED 244 ///< DP +#define STAT_MOVEVARS_SPECTATORMAXSPEED 245 ///< DP +#define STAT_MOVEVARS_ACCELERATE 246 ///< DP +#define STAT_MOVEVARS_AIRACCELERATE 247 ///< DP +#define STAT_MOVEVARS_WATERACCELERATE 248 ///< DP +#define STAT_MOVEVARS_ENTGRAVITY 249 ///< DP +#define STAT_MOVEVARS_JUMPVELOCITY 250 ///< DP +#define STAT_MOVEVARS_EDGEFRICTION 251 ///< DP +#define STAT_MOVEVARS_MAXAIRSPEED 252 ///< DP +#define STAT_MOVEVARS_STEPHEIGHT 253 ///< DP +#define STAT_MOVEVARS_AIRACCEL_QW 254 ///< DP +#define STAT_MOVEVARS_AIRACCEL_SIDEWAYS_FRICTION 255 ///< DP + +#endif diff --git a/quakedef.h b/quakedef.h index be607c0d..f1b59313 100644 --- a/quakedef.h +++ b/quakedef.h @@ -26,16 +26,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # include #endif -#if (__GNUC__ > 2) || defined (__clang__) || (__TINYC__) -#define DP_FUNC_PRINTF(n) __attribute__ ((format (printf, n, n+1))) -#define DP_FUNC_PURE __attribute__ ((pure)) -#define DP_FUNC_NORETURN __attribute__ ((noreturn)) -#else -#define DP_FUNC_PRINTF(n) -#define DP_FUNC_PURE -#define DP_FUNC_NORETURN -#endif - #include #include #include @@ -44,7 +34,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #include #include #include -#include #include "qtypes.h" @@ -53,226 +42,8 @@ extern char engineversion[128]; #define GAMENAME "id1" -#define MAX_NUM_ARGVS 50 - -#ifdef DP_SMALLMEMORY -#define MAX_INPUTLINE 1024 -#define CON_TEXTSIZE 16384 -#define CON_MAXLINES 256 -#define HIST_TEXTSIZE 2048 -#define HIST_MAXLINES 16 -#define MAX_ALIAS_NAME 32 -#define CMDBUFSIZE 131072 -#define MAX_ARGS 80 - -#define NET_MAXMESSAGE 65536 -#define MAX_PACKETFRAGMENT 1024 -#define MAX_EDICTS 4096 -#define MAX_MODELS 1024 -#define MAX_SOUNDS 1024 -#define MAX_LIGHTSTYLES 64 -#define MAX_STYLESTRING 16 -#define MAX_SCOREBOARD 32 -#define MAX_SCOREBOARDNAME 128 -#define MAX_USERINFO_STRING 196 -#define MAX_SERVERINFO_STRING 512 -#define MAX_LOCALINFO_STRING 1 // not actually used by DP servers -#define CL_MAX_USERCMDS 32 -#define CVAR_HASHSIZE 1024 -#define M_MAX_EDICTS 4096 -#define MAX_DEMOS 8 -#define MAX_DEMONAME 16 -#define MAX_SAVEGAMES 12 -#define SAVEGAME_COMMENT_LENGTH 39 -#define MAX_CLIENTNETWORKEYES 2 -#define MAX_LEVELNETWORKEYES 0 // no portal support -#define MAX_OCCLUSION_QUERIES 256 - -#define CRYPTO_HOSTKEY_HASHSIZE 256 -#define MAX_NETWM_ICON 1026 // one 32x32 - -#define MAX_WATERPLANES 2 -#define MAX_CUBEMAPS 1024 -#define MAX_EXPLOSIONS 8 -#define MAX_DLIGHTS 16 -#define MAX_CACHED_PICS 2048 // this is 144 bytes each (or 152 on 64bit) -#define CACHEPICHASHSIZE 256 -#define MAX_PARTICLEEFFECTNAME 256 -#define MAX_PARTICLEEFFECTINFO 1024 -#define MAX_PARTICLETEXTURES 256 -#define MAXCLVIDEOS 1 -#define MAX_DYNAMIC_TEXTURE_COUNT 2 -#define MAX_MAP_LEAFS 8192 - -#define MAXTRACKS 256 -#define MAX_DYNAMIC_CHANNELS 64 -#define MAX_CHANNELS 260 -#define MODLIST_TOTALSIZE 32 -#define MAX_FAVORITESERVERS 32 -#define MAX_DECALSYSTEM_QUEUE 64 -#define PAINTBUFFER_SIZE 512 -#define MAX_BINDMAPS 8 -#define MAX_PARTICLES_INITIAL 8192 -#define MAX_PARTICLES 8192 -#define MAX_ENTITIES_INITIAL 256 -#define MAX_STATICENTITIES 256 -#define MAX_EFFECTS 16 -#define MAX_BEAMS 16 -#define MAX_TEMPENTITIES 256 -#define SERVERLIST_TOTALSIZE 1024 -#define SERVERLIST_ANDMASKCOUNT 5 -#define SERVERLIST_ORMASKCOUNT 5 -#else -#define MAX_INPUTLINE 16384 ///< maximum length of console commandline, QuakeC strings, and many other text processing buffers -#define CON_TEXTSIZE 1048576 ///< max scrollback buffer characters in console -#define CON_MAXLINES 16384 ///< max scrollback buffer lines in console -#define HIST_TEXTSIZE 262144 ///< max command history buffer characters in console -#define HIST_MAXLINES 4096 ///< max command history buffer lines in console -#define MAX_ALIAS_NAME 32 -#define CMDBUFSIZE 655360 ///< maximum script size that can be loaded by the exec command (8192 in Quake) -#define MAX_ARGS 80 ///< maximum number of parameters to a console command or alias - -#define NET_MAXMESSAGE 131072 ///< max reliable packet size (sent as multiple fragments of MAX_PACKETFRAGMENT) -#define MAX_PACKETFRAGMENT 1024 ///< max length of packet fragment -#define MAX_EDICTS 32768 ///< max number of objects in game world at once (32768 protocol limit) -#define MAX_MODELS 8192 ///< max number of models loaded at once (including during level transitions) -#define MAX_SOUNDS 4096 ///< max number of sounds loaded at once -#define MAX_LIGHTSTYLES 256 ///< max flickering light styles in level (note: affects savegame format) -#define MAX_STYLESTRING 64 ///< max length of flicker pattern for light style -#define MAX_SCOREBOARD 255 ///< max number of players in game at once (255 protocol limit) -#define MAX_SCOREBOARDNAME 128 ///< max length of player name in game -#define MAX_USERINFO_STRING 1280 ///< max length of infostring for PROTOCOL_QUAKEWORLD (196 in QuakeWorld) -#define MAX_SERVERINFO_STRING 1280 ///< max length of server infostring for PROTOCOL_QUAKEWORLD (512 in QuakeWorld) -#define MAX_LOCALINFO_STRING 32768 ///< max length of server-local infostring for PROTOCOL_QUAKEWORLD (32768 in QuakeWorld) -#define CL_MAX_USERCMDS 128 ///< max number of predicted input packets in queue -#define CVAR_HASHSIZE 65536 ///< number of hash buckets for accelerating cvar name lookups -#define M_MAX_EDICTS 32768 ///< max objects in menu vm -#define MAX_DEMOS 8 ///< max demos provided to demos command -#define MAX_DEMONAME 16 ///< max demo name length for demos command -#define MAX_SAVEGAMES 12 ///< max savegames listed in savegame menu -#define SAVEGAME_COMMENT_LENGTH 39 ///< max comment length of savegame in menu -#define MAX_CLIENTNETWORKEYES 16 ///< max number of locations that can be added to pvs when culling network entities (must be at least 2 for prediction) -#define MAX_LEVELNETWORKEYES 512 ///< max number of locations that can be added to pvs when culling network entities (must be at least 2 for prediction) -#define MAX_OCCLUSION_QUERIES 4096 ///< max number of query objects that can be used in one frame - -#define CRYPTO_HOSTKEY_HASHSIZE 8192 ///< number of hash buckets for accelerating host key lookups -#define MAX_NETWM_ICON 352822 // 16x16, 22x22, 24x24, 32x32, 48x48, 64x64, 128x128, 256x256, 512x512 - -#define MAX_WATERPLANES 16 ///< max number of water planes visible (each one causes additional view renders) -#define MAX_CUBEMAPS 1024 ///< max number of cubemap textures loaded for light filters -#define MAX_EXPLOSIONS 64 ///< max number of explosion shell effects active at once (not particle related) -#define MAX_DLIGHTS 256 ///< max number of dynamic lights (rocket flashes, etc) in scene at once -#define MAX_CACHED_PICS 2048 ///< max number of 2D pics loaded at once -#define CACHEPICHASHSIZE 256 ///< number of hash buckets for accelerating 2D pic name lookups -#define MAX_PARTICLEEFFECTNAME 4096 ///< maximum number of unique names of particle effects (for particleeffectnum) -#define MAX_PARTICLEEFFECTINFO 8192 ///< maximum number of unique particle effects (each name may associate with several of these) -#define MAX_PARTICLETEXTURES 256 ///< maximum number of unique particle textures in the particle font -#define MAXCLVIDEOS 65 ///< maximum number of video streams being played back at once (1 is reserved for the playvideo command) -#define MAX_DYNAMIC_TEXTURE_COUNT 64 ///< maximum number of dynamic textures (web browsers, playvideo, etc) -#define MAX_MAP_LEAFS 65536 ///< maximum number of BSP leafs in world (8192 in Quake) - -#define MAXTRACKS 256 ///< max CD track index -// 0 to NUM_AMBIENTS - 1 = water, etc -// NUM_AMBIENTS to NUM_AMBIENTS + MAX_DYNAMIC_CHANNELS - 1 = normal entity sounds -// NUM_AMBIENTS + MAX_DYNAMIC_CHANNELS to total_channels = static sounds -#define MAX_DYNAMIC_CHANNELS 512 -#define MAX_CHANNELS (8192 + 4) -#define MODLIST_TOTALSIZE 256 -#define MAX_FAVORITESERVERS 256 -#define MAX_DECALSYSTEM_QUEUE 1024 -#define PAINTBUFFER_SIZE 2048 -#define MAX_BINDMAPS 8 -#define MAX_PARTICLES_INITIAL 8192 ///< initial allocation for cl.particles -#define MAX_PARTICLES 1048576 ///< upper limit on cl.particles size -#define MAX_ENTITIES_INITIAL 256 ///< initial size of cl.entities -#define MAX_STATICENTITIES 4096 ///< limit on size of cl.static_entities -#define MAX_EFFECTS 256 ///< limit on size of cl.effects -#define MAX_BEAMS 256 ///< limit on size of cl.beams -#define MAX_TEMPENTITIES 4096 ///< max number of temporary models visible per frame (certain sprite effects, certain types of CSQC entities also use this) -#define SERVERLIST_TOTALSIZE 2048 ///< max servers in the server list -#define SERVERLIST_ANDMASKCOUNT 16 ///< max items in server list AND mask -#define SERVERLIST_ORMASKCOUNT 16 ///< max items in server list OR mask -#endif - - -#define CMD_TOKENIZELENGTH (MAX_INPUTLINE + MAX_ARGS) ///< maximum tokenizable commandline length (counting trailing 0) - - -#define MAX_QPATH 128 ///< max length of a quake game pathname -#ifdef PATH_MAX -#define MAX_OSPATH PATH_MAX -#elif MAX_PATH -#define MAX_OSPATH MAX_PATH -#else -#define MAX_OSPATH 1024 ///< max length of a filesystem pathname -#endif - -#define ON_EPSILON 0.1 ///< point on plane side epsilon - -#define NET_MINRATE 1000 ///< limits "rate" and "sv_maxrate" cvars - -// -// stats are integers communicated to the client by the server -// -#define MAX_CL_STATS 256 -#define STAT_HEALTH 0 -//#define STAT_FRAGS 1 -#define STAT_WEAPON 2 -#define STAT_AMMO 3 -#define STAT_ARMOR 4 -#define STAT_WEAPONFRAME 5 -#define STAT_SHELLS 6 -#define STAT_NAILS 7 -#define STAT_ROCKETS 8 -#define STAT_CELLS 9 -#define STAT_ACTIVEWEAPON 10 -#define STAT_TOTALSECRETS 11 -#define STAT_TOTALMONSTERS 12 -#define STAT_SECRETS 13 ///< bumped on client side by svc_foundsecret -#define STAT_MONSTERS 14 ///< bumped by svc_killedmonster -#define STAT_ITEMS 15 ///< FTE, DP -#define STAT_VIEWHEIGHT 16 ///< FTE, DP -//#define STAT_TIME 17 ///< FTE -//#define STAT_VIEW2 20 ///< FTE -#define STAT_VIEWZOOM 21 ///< DP -#define MIN_VM_STAT 32 ///< stat range available to VM_SV_AddStat -#define MAX_VM_STAT 220 ///< stat range available to VM_SV_AddStat -#define STAT_MOVEVARS_AIRACCEL_QW_STRETCHFACTOR 220 ///< DP -#define STAT_MOVEVARS_AIRCONTROL_PENALTY 221 ///< DP -#define STAT_MOVEVARS_AIRSPEEDLIMIT_NONQW 222 ///< DP -#define STAT_MOVEVARS_AIRSTRAFEACCEL_QW 223 ///< DP -#define STAT_MOVEVARS_AIRCONTROL_POWER 224 ///< DP -#define STAT_MOVEFLAGS 225 ///< DP -#define STAT_MOVEVARS_WARSOWBUNNY_AIRFORWARDACCEL 226 ///< DP -#define STAT_MOVEVARS_WARSOWBUNNY_ACCEL 227 ///< DP -#define STAT_MOVEVARS_WARSOWBUNNY_TOPSPEED 228 ///< DP -#define STAT_MOVEVARS_WARSOWBUNNY_TURNACCEL 229 ///< DP -#define STAT_MOVEVARS_WARSOWBUNNY_BACKTOSIDERATIO 230 ///< DP -#define STAT_MOVEVARS_AIRSTOPACCELERATE 231 ///< DP -#define STAT_MOVEVARS_AIRSTRAFEACCELERATE 232 ///< DP -#define STAT_MOVEVARS_MAXAIRSTRAFESPEED 233 ///< DP -#define STAT_MOVEVARS_AIRCONTROL 234 ///< DP -#define STAT_FRAGLIMIT 235 ///< DP -#define STAT_TIMELIMIT 236 ///< DP -#define STAT_MOVEVARS_WALLFRICTION 237 ///< DP -#define STAT_MOVEVARS_FRICTION 238 ///< DP -#define STAT_MOVEVARS_WATERFRICTION 239 ///< DP -#define STAT_MOVEVARS_TICRATE 240 ///< DP -#define STAT_MOVEVARS_TIMESCALE 241 ///< DP -#define STAT_MOVEVARS_GRAVITY 242 ///< DP -#define STAT_MOVEVARS_STOPSPEED 243 ///< DP -#define STAT_MOVEVARS_MAXSPEED 244 ///< DP -#define STAT_MOVEVARS_SPECTATORMAXSPEED 245 ///< DP -#define STAT_MOVEVARS_ACCELERATE 246 ///< DP -#define STAT_MOVEVARS_AIRACCELERATE 247 ///< DP -#define STAT_MOVEVARS_WATERACCELERATE 248 ///< DP -#define STAT_MOVEVARS_ENTGRAVITY 249 ///< DP -#define STAT_MOVEVARS_JUMPVELOCITY 250 ///< DP -#define STAT_MOVEVARS_EDGEFRICTION 251 ///< DP -#define STAT_MOVEVARS_MAXAIRSPEED 252 ///< DP -#define STAT_MOVEVARS_STEPHEIGHT 253 ///< DP -#define STAT_MOVEVARS_AIRACCEL_QW 254 ///< DP -#define STAT_MOVEVARS_AIRACCEL_SIDEWAYS_FRICTION 255 ///< DP +#include "qdefs.h" +#include "qstats.h" // moveflags values #define MOVEFLAG_VALID 0x80000000 diff --git a/r_textures.h b/r_textures.h index a008112c..5914f5d9 100644 --- a/r_textures.h +++ b/r_textures.h @@ -2,6 +2,9 @@ #ifndef R_TEXTURES_H #define R_TEXTURES_H +#include "qtypes.h" +#include "cvar.h" + // transparent #define TEXF_ALPHA 0x00000001 // mipmapped diff --git a/sbar.h b/sbar.h index 0739756a..68ecf9ea 100644 --- a/sbar.h +++ b/sbar.h @@ -21,6 +21,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #ifndef SBAR_H #define SBAR_H +#include "cvar.h" + #define SBAR_HEIGHT 24 extern int sb_lines; ///< scan lines to draw diff --git a/screen.h b/screen.h index 081c3c7c..b2ad2990 100644 --- a/screen.h +++ b/screen.h @@ -22,6 +22,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #ifndef SCREEN_H #define SCREEN_H +#include "qtypes.h" +#include "cvar.h" + void CL_Screen_Init (void); void CL_UpdateScreen (void); void SCR_CenterPrint(const char *str); diff --git a/snd_xmp.h b/snd_xmp.h index 799ffd1e..23171ea3 100644 --- a/snd_xmp.h +++ b/snd_xmp.h @@ -20,6 +20,8 @@ #ifndef SND_XMP_H #define SND_XMP_H +#include "qtypes.h" +#include "sound.h" qbool XMP_OpenLibrary (void); void XMP_CloseLibrary (void); diff --git a/sound.h b/sound.h index 5266231f..6a581317 100644 --- a/sound.h +++ b/sound.h @@ -21,6 +21,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #ifndef SOUND_H #define SOUND_H +#include "cmd.h" #include "matrixlib.h" diff --git a/sv_demo.h b/sv_demo.h index 8dbbd65f..dc16441d 100644 --- a/sv_demo.h +++ b/sv_demo.h @@ -1,6 +1,10 @@ #ifndef SV_DEMO_H #define SV_DEMO_H +#include "qtypes.h" +#include "common.h" +typedef struct client_s client_t; + void SV_StartDemoRecording(client_t *client, const char *filename, int forcetrack); void SV_WriteDemoMessage(client_t *client, sizebuf_t *sendbuffer, qbool clienttoserver); void SV_StopDemoRecording(client_t *client); diff --git a/sys.h b/sys.h index 5f277e78..a44efae8 100644 --- a/sys.h +++ b/sys.h @@ -22,6 +22,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #ifndef SYS_H #define SYS_H +#include "qtypes.h" +#include "cvar.h" + typedef struct sys_s { int argc; diff --git a/taskqueue.h b/taskqueue.h index 3f5ac3a4..d87db72e 100644 --- a/taskqueue.h +++ b/taskqueue.h @@ -2,6 +2,7 @@ #ifndef TASKQUEUE_H #define TASKQUEUE_H +#include #include "qtypes.h" #include "thread.h" diff --git a/thread.h b/thread.h index 847cc26c..05b0f859 100644 --- a/thread.h +++ b/thread.h @@ -1,6 +1,8 @@ #ifndef THREAD_H #define THREAD_H +#include "qtypes.h" + // enable Sys_PrintfToTerminal calls on nearly every threading call //#define THREADDEBUG //#define THREADDISABLE diff --git a/utf8lib.h b/utf8lib.h index 275366e6..41255a4e 100644 --- a/utf8lib.h +++ b/utf8lib.h @@ -4,7 +4,9 @@ #ifndef UTF8LIB_H__ #define UTF8LIB_H__ +#include #include "qtypes.h" +#include "cvar.h" // types for unicode strings // let them be 32 bit for now diff --git a/vid.h b/vid.h index 91220d75..b8cd2308 100644 --- a/vid.h +++ b/vid.h @@ -22,6 +22,10 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #ifndef VID_H #define VID_H +#include +#include "qtypes.h" +#include "cmd.h" + #define ENGINE_ICON ( (gamemode == GAME_NEXUIZ) ? nexuiz_xpm : darkplaces_xpm ) extern int cl_available; diff --git a/wad.h b/wad.h index ac085898..18d7d410 100644 --- a/wad.h +++ b/wad.h @@ -22,6 +22,9 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #ifndef WAD_H #define WAD_H +#include "common.h" +#include "fs.h" + //=============== // TYPES //=============== diff --git a/world.h b/world.h index 3e4e3881..7e20c801 100644 --- a/world.h +++ b/world.h @@ -22,7 +22,14 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #ifndef WORLD_H #define WORLD_H +#include "qtypes.h" +#include "qdefs.h" +#include "cvar.h" +#include "com_list.h" #include "collision.h" +#include "matrixlib.h" +#include "r_textures.h" +typedef struct model_s dp_model_t; #define MOVE_NORMAL 0 #define MOVE_NOMONSTERS 1 diff --git a/zone.h b/zone.h index 00c0f267..5fe3c63d 100644 --- a/zone.h +++ b/zone.h @@ -21,6 +21,10 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #ifndef ZONE_H #define ZONE_H +#include +#include "qtypes.h" +#include "qdefs.h" + extern qbool mem_bigendian; // div0: heap overflow detection paranoia -- 2.39.2