X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=quakedef.h;h=ec5c72b6efb29fbb305e5d0f0ed17bb542fd3a24;hb=e3d73d3b315e86fc321b6ef02bb7dc14742d156a;hp=f698972a2e4fa7b7db837cc5cf26748c914b4d96;hpb=d7035ef4229a2462ad59a67160494593fbd8f2e0;p=xonotic%2Fdarkplaces.git diff --git a/quakedef.h b/quakedef.h index f698972a..ec5c72b6 100644 --- a/quakedef.h +++ b/quakedef.h @@ -8,7 +8,7 @@ of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. @@ -19,93 +19,20 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ // quakedef.h -- primary header for client -#define QUAKE_GAME // as opposed to utilities +#ifndef QUAKEDEF_H +#define QUAKEDEF_H -#define VERSION 1.50 -extern int buildnumber; +#include "darkplaces.h" -#ifndef FALSE -#define FALSE 0 -#define TRUE 1 -#endif - -//define PARANOID // speed sapping error checking -#ifdef _DEBUG -#define ASSERT(condition) if (!(condition)) Sys_Error("assertion (##condition) failed at " __FILE__ ":" __LINE__ "\n"); -#else -#define ASSERT(condition) -#endif - -#define GAMENAME "id1" - -#include -#include -#include -#include -#include -#include - -#define UNUSED(x) (x = x) // for pesky compiler / lint warnings - -// LordHavoc: default heap size (unless -heapsize, -mem, or -winmem is used), in megabytes -#define DEFAULTMEM 24 -//#define MINIMUM_MEMORY 0x550000 -//#define MINIMUM_MEMORY_LEVELPAK (MINIMUM_MEMORY + 0x100000) - -#define MAX_NUM_ARGVS 50 +#define GAMENAME "id1" +#define STARTCONFIGFILENAME "quake.rc" +#define CONFIGFILENAME "config.cfg" -// up / down -#define PITCH 0 - -// left / right -#define YAW 1 - -// fall over -#define ROLL 2 - - -#define MAX_QPATH 128 // max length of a quake game pathname -#define MAX_OSPATH 1024 // max length of a filesystem pathname - -#define ON_EPSILON 0.1 // point on plane side epsilon - -// LordHavoc: these were 8000 and 1024 respectively, now 64000 and 8000 -#define MAX_MSGLEN 64000 // max length of a reliable message -#define MAX_DATAGRAM 8000 // max length of unreliable message - -// -// per-level limits -// -// LordHavoc: increased entity limit to 2048 from 600 -#define MAX_EDICTS 2048 // FIXME: ouch! ouch! ouch! -#define MAX_LIGHTSTYLES 64 -// LordHavoc: increased model and sound limits from 256 and 256 to 1024 and 1024 (and added protocol extensions accordingly) -#define MAX_MODELS 1024 // these are sent over the net as bytes -#define MAX_SOUNDS 1024 // so they cannot be blindly increased - -#define SAVEGAME_COMMENT_LENGTH 39 - -#define MAX_STYLESTRING 64 - -// -// stats are integers communicated to the client by the server -// -#define MAX_CL_STATS 32 -#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 +// moveflags values +#define MOVEFLAG_VALID 0x80000000 +#define MOVEFLAG_Q2AIRACCELERATE 0x00000001 +#define MOVEFLAG_NOGRAVITYONGROUND 0x00000002 +#define MOVEFLAG_GRAVITYUNAFFECTEDBYTICRATE 0x00000004 // stock defines @@ -137,6 +64,27 @@ extern int buildnumber; #define IT_SIGIL3 (1<<30) #define IT_SIGIL4 (1<<31) +//=========================================== +// AK nexuiz changed and added defines + +#define NEX_IT_UZI 1 +#define NEX_IT_SHOTGUN 2 +#define NEX_IT_GRENADE_LAUNCHER 4 +#define NEX_IT_ELECTRO 8 +#define NEX_IT_CRYLINK 16 +#define NEX_IT_NEX 32 +#define NEX_IT_HAGAR 64 +#define NEX_IT_ROCKET_LAUNCHER 128 +#define NEX_IT_SHELLS 256 +#define NEX_IT_BULLETS 512 +#define NEX_IT_ROCKETS 1024 +#define NEX_IT_CELLS 2048 +#define NEX_IT_LASER 4094 +#define NEX_IT_STRENGTH 8192 +#define NEX_IT_INVINCIBLE 16384 +#define NEX_IT_SPEED 32768 +#define NEX_IT_SLOWMO 65536 + //=========================================== //rogue changed and added defines @@ -174,122 +122,59 @@ extern int buildnumber; //=========================================== -// LordHavoc: increased player limit from 16 to 64 -#define MAX_SCOREBOARD 64 -#define MAX_SCOREBOARDNAME 32 - -#define SOUND_CHANNELS 8 - -#include "common.h" -#include "bspfile.h" #include "vid.h" -#include "sys.h" -#include "zone.h" -#include "mathlib.h" #include "r_textures.h" -#include "wad.h" +#include "crypto.h" #include "draw.h" -#include "cvar.h" #include "screen.h" -#include "net.h" +#include "netconn.h" #include "protocol.h" -#include "cmd.h" #include "sbar.h" #include "sound.h" -#include "render.h" +#include "model_shared.h" +#include "world.h" #include "client.h" +#include "render.h" #include "progs.h" +#include "progsvm.h" #include "server.h" -#include "model_shared.h" - #include "input.h" -#include "world.h" #include "keys.h" -#include "console.h" -#include "view.h" +#ifdef CONFIG_MENU #include "menu.h" -#include "crc.h" -#include "cdaudio.h" - -#include "glquake.h" - -//============================================================================= - -// the host system specifies the base of the directory tree, the -// command line parms passed to the program, and the amount of memory -// available for the program to use - -typedef struct -{ - char *basedir; -#if CACHEENABLE - char *cachedir; // for development over ISDN lines #endif - int argc; - char **argv; - void *membase; - int memsize; -} quakeparms_t; - - -//============================================================================= - - - -extern qboolean noclip_anglehack; - - -// -// host -// -extern quakeparms_t host_parms; - -extern cvar_t sys_ticrate; -extern cvar_t sys_nostdout; -extern cvar_t developer; - -extern qboolean host_initialized; // true if into command execution -extern double host_frametime; -extern double host_realframetime; // LordHavoc: the real frametime, before slowmo and clamping are applied (used for console scrolling) -extern int host_framecount; // incremented every frame, never reset -extern double realtime; // not bounded in any way, changed at - // start of every frame, never reset - -void Host_ClearMemory (void); -void Host_ServerFrame (void); -void Host_InitCommands (void); -void Host_Init (); -void Host_Shutdown(void); -void Host_Error (char *error, ...); -void Host_EndGame (char *message, ...); -void Host_Frame (float time); -void Host_Quit_f (void); -void Host_ClientCommands (char *fmt, ...); -void Host_ShutdownServer (qboolean crash); - -extern qboolean msg_suppress_1; // suppresses resolution and cache size console output - // an fullscreen DIB focus gain/loss -extern int current_skill; // skill level for currently loaded level (in case - // the user changes the cvar while the level is - // running, this reflects the level actually in use) +#include "csprogs.h" +#include "glquake.h" +#include "palette.h" -extern qboolean isDedicated; +extern qbool noclip_anglehack; -extern int minimum_memory; +/// skill level for currently loaded level (in case the user changes the cvar while the level is running, this reflects the level actually in use) +extern int current_skill; // // chase // -extern cvar_t chase_active; +extern cvar_t chase_active; +extern cvar_t cl_viewmodel_scale; void Chase_Init (void); void Chase_Reset (void); void Chase_Update (void); void fractalnoise(unsigned char *noise, int size, int startgrid); +void fractalnoisequick(unsigned char *noise, int size, int startgrid); +float noise4f(float x, float y, float z, float w); + +void Sys_Shared_Init(void); + +// Flag in size field of demos to indicate a client->server packet. Demo +// playback will ignore this, but it may be useful to make DP sniff packets to +// debug protocol exploits. +#define DEMOMSG_CLIENT_TO_SERVER 0x80000000 + +#endif -#include "palette.h" -#include "image.h"