ref: 79050578c7fb0a2efc4c4d9c04ba63738fb5f660
dir: /qw/quakedef.h/
// quakedef.h -- primary header for client #pragma once #include "platform.h" #define QUAKE_GAME // as opposed to utilities //#define PARANOID // speed sapping error checking enum{ VERSION = 2.40, PLAN9_VERSION = 0.98 }; #define UNALIGNED_OK 0 // set to 0 if unaligned accesses are not supported (!386) #define CACHE_SIZE 32 // used to align key data structures #define MINIMUM_MEMORY 0x550000 // up / down #define PITCH 0 // left / right #define YAW 1 // fall over #define ROLL 2 #define MAX_SCOREBOARD 16 // max numbers of players #define SOUND_CHANNELS 8 #define MAX_QPATH 64 // max length of a quake game pathname #define MAX_OSPATH 128 // max length of a filesystem pathname #define ON_EPSILON 0.1 // point on plane side epsilon #define MAX_MSGLEN 1450 // max length of a reliable message #define MAX_DATAGRAM 1450 // max length of unreliable message // // per-level limits // #define MAX_EDICTS 768 // FIXME: ouch! ouch! ouch! #define MAX_LIGHTSTYLES 64 #define MAX_MODELS 256 // these are sent over the net as bytes #define MAX_SOUNDS 256 // 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 #define STAT_ITEMS 15 //define STAT_VIEWHEIGHT 16 // // item flags // #define IT_SHOTGUN 1 #define IT_SUPER_SHOTGUN 2 #define IT_NAILGUN 4 #define IT_SUPER_NAILGUN 8 #define IT_GRENADE_LAUNCHER 16 #define IT_ROCKET_LAUNCHER 32 #define IT_LIGHTNING 64 #define IT_SUPER_LIGHTNING 128 #define IT_SHELLS 256 #define IT_NAILS 512 #define IT_ROCKETS 1024 #define IT_CELLS 2048 #define IT_AXE 4096 #define IT_ARMOR1 8192 #define IT_ARMOR2 16384 #define IT_ARMOR3 32768 #define IT_SUPERHEALTH 65536 #define IT_KEY1 131072 #define IT_KEY2 262144 #define IT_INVISIBILITY 524288 #define IT_INVULNERABILITY 1048576 #define IT_SUIT 2097152 #define IT_QUAD 4194304 #define IT_SIGIL1 (1<<28) #define IT_SIGIL2 (1<<29) #define IT_SIGIL3 (1<<30) #define IT_SIGIL4 (1<<31) #define Max(a,b) ((a) > (b) ? (a) : (b)) #define Min(a,b) ((a) < (b) ? (a) : (b)) typedef struct { char *basedir; // base of directory tree char *cachedir; // for development over ISDN lines int argc; char **argv; void *membase; // amount of memory available for use int memsize; } quakeparms_t; #include "common.h" #include "bspfile.h" #include "vid.h" #include "sys.h" #include "zone.h" #include "mathlib.h" #include "m_random.h" #include "wad.h" #include "draw.h" #include "cvar.h" #include "screen.h" #include "net.h" #include "protocol.h" #include "cmd.h" #include "sbar.h" #include "sound.h" #include "render.h" #include "client.h" #include "modelgen.h" #include "spritegn.h" #include "model.h" #include "d_iface.h" #include "input.h" #include "keys.h" #include "console.h" #include "view.h" #include "menu.h" #include "crc.h" #include "pr_comp.h" // defs shared with qcc #include "progdefs.h" // generated by program cdefs #include "progs.h" #include "cdaudio.h" #include "server.h" #include "world.h" #include "pmove.h" #include "r_shared.h" #include "d_local.h" #include "r_local.h" //============================================================================= #define MAX_NUM_ARGVS 50 extern bool noclip_anglehack; // // host // extern quakeparms_t host_parms; extern cvar_t sys_ticrate; extern cvar_t sys_nostdout; extern cvar_t developer; extern cvar_t password; extern bool host_initialized; // true if into command execution extern double host_frametime; extern byte *host_basepal; extern byte *host_colormap; 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_ServerFrame (void); void Host_InitCommands (void); void Host_Init (quakeparms_t *parms); void Host_Shutdown(void); void Host_Error (char *error, ...); void Host_EndGame (char *message, ...); bool Host_SimulationTime(float time); void Host_Frame (float time); void Host_Quit_f (void); void Host_ClientCommands (char *fmt, ...); void Host_ShutdownServer (bool crash); extern bool msg_suppress_1; // suppresses resolution and cache size console output // an fullscreen DIB focus gain/loss void SV_Error (char *error, ...); void SV_Init (quakeparms_t *parms);