|
|
1.1 root 1: /*
2: Copyright (C) 1996-1997 Id Software, Inc.
3:
4: This program is free software; you can redistribute it and/or
5: modify it under the terms of the GNU General Public License
6: as published by the Free Software Foundation; either version 2
7: of the License, or (at your option) any later version.
8:
9: This program is distributed in the hope that it will be useful,
10: but WITHOUT ANY WARRANTY; without even the implied warranty of
11: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
12:
13: See the GNU General Public License for more details.
14:
15: You should have received a copy of the GNU General Public License
16: along with this program; if not, write to the Free Software
17: Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18:
19: */
20: // quakedef.h -- primary header for client
21:
22: #define QUAKE_GAME // as opposed to utilities
23:
24: //define PARANOID // speed sapping error checking
25:
26: #ifdef _WIN32
27: #pragma warning( disable : 4244 4127 4201 4214 4514 4305 4115 4018)
28: #endif
29:
30:
31: #include <math.h>
32: #include <string.h>
33: #include <stdarg.h>
34: #include <stdio.h>
35: #include <stdlib.h>
36: #include <setjmp.h>
37: #include <time.h>
38:
39: #include "bothdefs.h"
40:
41: #include "common.h"
42: #include "bspfile.h"
43: #include "vid.h"
44: #include "sys.h"
45: #include "zone.h"
46: #include "mathlib.h"
47: #include "wad.h"
48: #include "draw.h"
49: #include "cvar.h"
50: #include "screen.h"
51: #include "net.h"
52: #include "protocol.h"
53: #include "cmd.h"
54: #include "sbar.h"
55: #include "sound.h"
56: #include "render.h"
57: #include "client.h"
58:
59: #ifdef GLQUAKE
60: #include "gl_model.h"
61: #else
62: #include "model.h"
63: #include "d_iface.h"
64: #endif
65:
66: #include "input.h"
67: #include "keys.h"
68: #include "console.h"
69: #include "view.h"
70: #include "menu.h"
71: #include "crc.h"
72: #include "cdaudio.h"
73: #include "pmove.h"
74:
75: #ifdef GLQUAKE
76: #include "glquake.h"
77: #endif
78:
79: #ifndef max
80: #define max(a,b) ((a) > (b) ? (a) : (b))
81: #define min(a,b) ((a) < (b) ? (a) : (b))
82: #endif
83:
84: //=============================================================================
85:
86: // the host system specifies the base of the directory tree, the
87: // command line parms passed to the program, and the amount of memory
88: // available for the program to use
89:
90: typedef struct
91: {
92: char *basedir;
93: char *cachedir; // for development over ISDN lines
94: int argc;
95: char **argv;
96: void *membase;
97: int memsize;
98: } quakeparms_t;
99:
100:
101: //=============================================================================
102:
103: #define MAX_NUM_ARGVS 50
104:
105:
106: extern qboolean noclip_anglehack;
107:
108:
109: //
110: // host
111: //
112: extern quakeparms_t host_parms;
113:
114: extern cvar_t sys_ticrate;
115: extern cvar_t sys_nostdout;
116: extern cvar_t developer;
117:
118: extern cvar_t password;
119:
120: extern qboolean host_initialized; // true if into command execution
121: extern double host_frametime;
122: extern byte *host_basepal;
123: extern byte *host_colormap;
124: extern int host_framecount; // incremented every frame, never reset
125: extern double realtime; // not bounded in any way, changed at
126: // start of every frame, never reset
127:
128: void Host_ServerFrame (void);
129: void Host_InitCommands (void);
130: void Host_Init (quakeparms_t *parms);
131: void Host_Shutdown(void);
132: void Host_Error (char *error, ...);
133: void Host_EndGame (char *message, ...);
134: qboolean Host_SimulationTime(float time);
135: void Host_Frame (float time);
136: void Host_Quit_f (void);
137: void Host_ClientCommands (char *fmt, ...);
138: void Host_ShutdownServer (qboolean crash);
139:
140: extern qboolean msg_suppress_1; // suppresses resolution and cache size console output
141: // an fullscreen DIB focus gain/loss
142:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.