]> git.xonotic.org Git - xonotic/darkplaces.git/commitdiff
Add qdefs.h and qstats.h to split up quakedef.h. Make a lot of headers standalone...
authorcloudwalk <cloudwalk@d7cf8633-e32d-0410-b094-e92efae38249>
Tue, 29 Sep 2020 00:33:16 +0000 (00:33 +0000)
committercloudwalk <cloudwalk@d7cf8633-e32d-0410-b094-e92efae38249>
Tue, 29 Sep 2020 00:33:16 +0000 (00:33 +0000)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12961 d7cf8633-e32d-0410-b094-e92efae38249

49 files changed:
bspfile.h
cap_ogg.h
cdaudio.h
cl_screen.h
cl_video.h
cmd.h
collision.h
com_list.h
common.h
console.h
crypto.h
cvar.h
darkplaces-sdl2-vs2017.vcxproj
darkplaces-sdl2-vs2019.vcxproj
dpvsimpledecode.h
draw.h
fs.h
hmac.h
host.h
image.c
image.h
image_png.h
input.h
jpeg.h
keys.h
lhfont.h
lhnet.h
libcurl.h
matrixlib.h
menu.h
netconn.h
protocol.h
qdefs.h [new file with mode: 0644]
qstats.h [new file with mode: 0644]
quakedef.h
r_textures.h
sbar.h
screen.h
snd_xmp.h
sound.h
sv_demo.h
sys.h
taskqueue.h
thread.h
utf8lib.h
vid.h
wad.h
world.h
zone.h

index f918d7943798adbadb8e607e3e2632f2a61b3710..1341b9e07aa8c470b6eb92e5860afb223ed4dfcc 100644 (file)
--- 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
index d56439f3f4726c816129856d00e6fb523f9289d1..1dfbab273ce5c700e76079bbf750f36aa87f5766 100644 (file)
--- 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);
index 50065aa4e68327849b453d49615d723cec9e605b..09099190e1fa2c4cd0a7b70de94fc8818fcd3595 100644 (file)
--- 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);
index d978726235d6b2e11799c436a9fd096dd7e6de27..77281d99a34d15815374d69a8ec9f15448860de9 100644 (file)
@@ -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);
index d3a4763aef20e943d9933abc4a64ca103778fb25..9976c738ece13d64d188566a8d0abe3b2552182b 100644 (file)
@@ -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 cba96ef2d3aa8b5cb4c9d31f7b6b6c24359bfc39..dd9b43265debbe51c61f738a70894b38f04bcd2d 100644 (file)
--- 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;
 
index fd693375bed82c88fbc74e06485a8a81dc6ab941..ebd1f22f1a408cdb7e61599a6a09478a1a3721f2 100644 (file)
@@ -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
index 8f31dc413d377bf6ed834d8f88cdf43eba0eecaf..e99ee346b0a9b3541dc42d737ef5a74dae325618 100644 (file)
@@ -24,6 +24,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 #define LIST_H
 
 #include <stddef.h>
+#include "qtypes.h"
 
 typedef struct llist_s
 {
index 360ed9c0435b7559ff09c0fa92a65b31c70da675..24619a147bcdf61581a629d5ae8efec8aa681353 100644 (file)
--- 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 <stdarg.h>
+#include "qtypes.h"
+#include "qdefs.h"
 
 /// MSVC has a different name for several standard functions
 #ifdef WIN32
index 9279b1c96ffbd8583a497ac695c2bba7535ade2f..cc456355ed6b7555a62791392c3b5a178d50a293 100644 (file)
--- 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 <stddef.h>
+#include "qtypes.h"
+#include "cmd.h"
+#include "lhnet.h"
+
 //
 // console
 //
index 80eea7a257d37d73dfff42744bdd1ff71d82279c..2d97948a7203e009d7d6a8b774f45d36d66232bc 100644 (file)
--- a/crypto.h
+++ b/crypto.h
@@ -1,6 +1,11 @@
 #ifndef CRYPTO_H
 #define CRYPTO_H
 
+#include <stddef.h>
+#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 525d4f004695b955f7dce91b1c7c441eabdb6e4d..65a2e1c5301d586b65895a261bbdb0cdcb714016 100644 (file)
--- 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;
index 1c3cc255ad1ae228673ef1e170fac49ea865d9ed..925a88fc42f575228dbee5b6d0eb45dc27757ccf 100644 (file)
     <ClInclude Include="protocol.h" />\r
     <ClInclude Include="prvm_cmds.h" />\r
     <ClInclude Include="prvm_execprogram.h" />\r
+    <ClInclude Include="qdefs.h" />\r
+    <ClInclude Include="qstats.h" />\r
     <ClInclude Include="qtypes.h" />\r
     <ClInclude Include="quakedef.h" />\r
     <ClInclude Include="r_lerpanim.h" />\r
index 2d5ff7a0eae408dc2abfe3c0af3188e5d5424319..c39d16af566c3454b5130a5ef3f0a3350e3a6fc7 100644 (file)
     <ClInclude Include="protocol.h" />\r
     <ClInclude Include="prvm_cmds.h" />\r
     <ClInclude Include="prvm_execprogram.h" />\r
+    <ClInclude Include="qdefs.h" />\r
+    <ClInclude Include="qstats.h" />\r
     <ClInclude Include="qtypes.h" />\r
     <ClInclude Include="quakedef.h" />\r
     <ClInclude Include="r_lerpanim.h" />\r
index 0b0ac35a140c8ff4311da8d29fab5c65a0582308..87b3127236009aad3363132de0c6b1ad7be0ac1e 100644 (file)
@@ -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 e1d4eaae3fcf1393750aa30660c89f053719225c..381dd35ebadc63e4da6d2b2d60237eab4ac2643a 100644 (file)
--- 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 <stddef.h>
+#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 aefa5b59b8b86261aa111e3588001720dbbb4e97..755e5c5046b5722f03c7249c91cf9e9436758824 100644 (file)
--- a/fs.h
+++ b/fs.h
 #ifndef FS_H
 #define FS_H
 
+#include <stddef.h>
+#include <stdarg.h>
+#include "qtypes.h"
+#include "qdefs.h"
+#include "zone.h"
 
 // ------ Types ------ //
 
diff --git a/hmac.h b/hmac.h
index 76ed655895d2cce39de219248c91c3e1e189a970..71108ab65d9a1679d55801cbe7276d851484fe35 100644 (file)
--- 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 591e6e8aa3e8eec3ddca1cb3e0c1f5aea9dc32b7..b2d0a623d597cf4ccbad9de01fe4c2a579476ab9 100644 (file)
--- a/host.h
+++ b/host.h
@@ -1,6 +1,11 @@
 #ifndef HOST_H
 #define HOST_H
 
+#include <setjmp.h>
+#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 f0243e5b38c0df96b5769e997deed791f24a592b..9f253a1dfb9a65461e69163cc4f995cca880bdf2 100644 (file)
--- 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 98173984cba5f71a1567278f2a489aed1466c8fd..99fd28c35d16bbba373d92664386fdc985c045e8 100644 (file)
--- a/image.h
+++ b/image.h
@@ -2,6 +2,11 @@
 #ifndef IMAGE_H
 #define IMAGE_H
 
+#include <stddef.h>
+#include "qtypes.h"
+#include "cvar.h"
+#include "r_textures.h"
+
 extern int image_width, image_height;
 
 unsigned char *Image_GenerateNoTexture(void);
index 37dc886c3efee53fc11739af501ca8849ea03dc7..af3ab97a7241c5a71cfce0c7b2fc30b6686cc38f 100644 (file)
@@ -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 db5b22d64ba939b0f5c67b45a57494e98892c5b1..9c94beedb973fc1fbcb6ce92ab2697c92b674bef 100644 (file)
--- 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 34f7dff38407ab5d3d00a0d45835085c2f7ccbc4..f869d6a091dd2e77741fa6f657b30c5b130678e6 100644 (file)
--- a/jpeg.h
+++ b/jpeg.h
@@ -24,6 +24,8 @@
 #ifndef JPEG_H
 #define JPEG_H
 
+#include <stddef.h>
+#include "qtypes.h"
 
 qbool JPEG_OpenLibrary (void);
 void JPEG_CloseLibrary (void);
diff --git a/keys.h b/keys.h
index ea104f1dcdcfc6e54f05fe358c7369a25977b3d0..baf1b9a16de4aa0e9f80861355608087bc2db6f9 100644 (file)
--- 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
index e6511809ccd83e765b31e30cb2b6fa26c84d92ea..83aedb5d564c08177986e9941ba75b39fe88bae9 100644 (file)
--- 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,
 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 764e361aefeaa9b1d8e17fcc3ca17b6107552ea5..1644fb17f2da7a237f8e2bf522b6d8678d886e45 100644 (file)
--- a/lhnet.h
+++ b/lhnet.h
@@ -4,6 +4,8 @@
 #ifndef LHNET_H
 #define LHNET_H
 
+#include <stddef.h>
+
 typedef enum lhnetaddresstype_e
 {
        LHNETADDRESSTYPE_NONE,
index 43ab1713856913553a8da7c86994b7e376651d73..b78955c6b1945c1f4dd253228a7f5964bb4a4baa 100644 (file)
--- a/libcurl.h
+++ b/libcurl.h
@@ -1,3 +1,7 @@
+#include <stddef.h>
+#include "qtypes.h"
+#include "qdefs.h"
+
 enum
 {
        CURLCBSTATUS_OK = 0,
index 7e98eab3c85a4d03d2fd624b90544e1863bcda70..cf76252447e6104d3100f32fb611692558aea90a 100644 (file)
@@ -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 e810587185e8f0e1907487f7f067c78041a3083a..93abb62453fb9f4861298c0d4183faff1ab34c0c 100644 (file)
--- 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,
index 1198db553ed23eed6b528af7e72787ee6afb5c0b..144a35b801b6c4bc911d30c0fc80f08c1eb8f2df 100755 (executable)
--- 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 <stdarg.h>
+#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))
 
index 3fa39244bad2f56d0e23a579645fd08b44d43bc6..31be978354d244d09d9fd72a243d478234a21579 100644 (file)
@@ -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 (file)
index 0000000..ce1d382
--- /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 (file)
index 0000000..098b82d
--- /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
index be607c0d044ff4dfedef62090ccd59529e4314e7..f1b59313f280ce0d53ae54edf93a7f069e2c354b 100644 (file)
@@ -26,16 +26,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 # include <TargetConditionals.h>
 #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 <sys/types.h>
 #include <ctype.h>
 #include <math.h>
@@ -44,7 +34,6 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 #include <stdio.h>
 #include <stdlib.h>
 #include <limits.h>
-#include <setjmp.h>
 
 #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
index a008112c5e5ab753a62be4983d873ac86a906ccb..5914f5d92bb6e7b3f5405225001a1617b502d843 100644 (file)
@@ -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 0739756abb16f3a528fe10226bba7bf3df49f9fc..68ecf9ea1ac665493cac5c8d4a7dd65f1a02a4a9 100644 (file)
--- 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
index 081c3c7cfc0307ccc3c2250251f971927202d54f..b2ad29905972e9eab07cf1e618d6c6c7d895ae3c 100644 (file)
--- 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);
index 799ffd1ee76537383581001665d576e7f30c00de..23171ea34a707747f1a058bd1821d89ac51e2084 100644 (file)
--- 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 5266231f50e0156dcb6cd2cf374f72e73b872f56..6a5813174ec92b0b4c8139518899bcf3ed9004a3 100644 (file)
--- 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"
 
 
index 8dbbd65f700ebec6e10be7e106308dcbd7faf606..dc16441dbf2dd9ba019114dad3b76d61452ea4d5 100644 (file)
--- 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 5f277e7861f13f0e0eedad9b7f1526ca08845cca..a44efae8ea97952d36e66a6d4979b7fefbc1af7d 100644 (file)
--- 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;
index 3f5ac3a4e31df918f36d2d970f98feef491da062..d87db72ec69d69b0811ea7e19b2672da0d60acae 100644 (file)
@@ -2,6 +2,7 @@
 #ifndef TASKQUEUE_H
 #define TASKQUEUE_H
 
+#include <stddef.h>
 #include "qtypes.h"
 #include "thread.h"
 
index 847cc26ce7e3cd15d0af245a1c3e970479c71488..05b0f8595cdbe43a6b705b8318e0162b8eddaf8c 100644 (file)
--- 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
index 275366e64a2c418f7f1420956e66f67f10e70e3d..41255a4e621dde26d7e11ccdf9328e92a4bfa7a8 100644 (file)
--- a/utf8lib.h
+++ b/utf8lib.h
@@ -4,7 +4,9 @@
 #ifndef UTF8LIB_H__
 #define UTF8LIB_H__
 
+#include <stddef.h>
 #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 91220d7519f31b24cc8e3d0f000bc67e9a461a65..b8cd2308d46d8fbaf1d86e2c12893afb55876192 100644 (file)
--- 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 <stddef.h>
+#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 ac085898ab82a5b6646dde6774a31f217fad7c81..18d7d41019928859bbb8e1d7797e0ba9f2a5e61d 100644 (file)
--- 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 3e4e38817ae775dd1336ecadc1d9fd2d22f76a6c..7e20c8019614a7195359139b2b0b08b23dd4adc8 100644 (file)
--- 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 00c0f267b16c756adca46d20e61d61b0eca00152..5fe3c63d19a43f8121aa66bdeeda62b8966730eb 100644 (file)
--- 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 <stddef.h>
+#include "qtypes.h"
+#include "qdefs.h"
+
 extern qbool mem_bigendian;
 
 // div0: heap overflow detection paranoia