#include "quakedef.h"
extern HWND mainwindow;
-extern cvar_t bgmvolume;
static qboolean cdValid = false;
static qboolean playing = false;
cvar_t r_draweffects = {"r_draweffects", "1"};
-void r_effects_start()
+void r_effects_start(void)
{
memset(effect, 0, sizeof(effect));
}
-void r_effects_shutdown()
+void r_effects_shutdown(void)
{
}
-void r_effects_newmap()
+void r_effects_newmap(void)
{
memset(effect, 0, sizeof(effect));
}
-void CL_Effects_Init()
+void CL_Effects_Init(void)
{
Cvar_RegisterVariable(&r_draweffects);
cvar_t freelook = {"freelook", "1", true};
-cvar_t demo_nehahra = {"demo_nehahra", "0"};
-
client_static_t cls;
client_state_t cl;
// FIXME: put these on hunk?
return bound(0, f, 1);
}
-void CL_RelinkStaticEntities()
+void CL_RelinkStaticEntities(void)
{
entity_t *ent, *endent;
if (cl.num_statics > MAX_VISEDICTS)
}
-// used by cl_shownet
-int netshown;
-
/*
===============
CL_ReadFromServer
*/
int CL_ReadFromServer (void)
{
- int ret;
+ int ret, netshown;
cl.oldtime = cl.time;
cl.time += cl.frametime;
break;
cl.last_received_message = realtime;
+
+ if (cl_shownet.value)
+ netshown = true;
+
CL_ParseServerMessage ();
- } while (ret && cls.state == ca_connected);
+ }
+ while (ret && cls.state == ca_connected);
if (netshown)
Con_Printf ("\n");
Cmd_AddCommand ("pausedemo", CL_PauseDemo_f);
// LordHavoc: added pmodel command (like name, etc, only intended for Nehahra)
Cmd_AddCommand ("pmodel", CL_PModel_f);
- // LordHavoc: added demo_nehahra cvar
- Cvar_RegisterVariable (&demo_nehahra);
- if (nehahra)
- Cvar_SetValue("demo_nehahra", 1);
+
+ CL_Parse_Init();
}
//=============================================================================
+cvar_t demo_nehahra = {"demo_nehahra", "0"};
+
+void CL_Parse_Init(void)
+{
+ // LordHavoc: added demo_nehahra cvar
+ Cvar_RegisterVariable (&demo_nehahra);
+ if (nehahra)
+ Cvar_SetValue("demo_nehahra", 1);
+}
+
qboolean Nehahrademcompatibility; // LordHavoc: to allow playback of the early Nehahra movie segments
qboolean dpprotocol; // LordHavoc: whether or not the current network stream is the enhanced DarkPlaces protocol
SZ_Clear (&cls.message);
}
-extern qboolean isworldmodel;
-extern char skyname[];
-extern void R_SetSkyBox (char *sky);
-extern void FOG_clear();
-extern cvar_t r_farclip;
-
void CL_ParseEntityLump(char *entdata)
{
char *data;
CL_ParseServerInfo
==================
*/
-extern cvar_t demo_nehahra;
void CL_ParseServerInfo (void)
{
char *str;
bitprofilecount = 0;
}
-void CL_EntityUpdateSetup()
+void CL_EntityUpdateSetup(void)
{
memset(entkill, 1, MAX_EDICTS);
}
-void CL_EntityUpdateEnd()
+void CL_EntityUpdateEnd(void)
{
int i;
for (i = 1;i < MAX_EDICTS;i++)
#define SHOWNET(x) if(cl_shownet.value==2)Con_Printf ("%3i:%s\n", msg_readcount-1, x);
-extern void SHOWLMP_decodehide();
-extern void SHOWLMP_decodeshow();
-extern void R_SetSkyBox(char* sky);
-extern int netshown;
-
/*
=====================
CL_ParseServerMessage
// if recording demos, copy the message out
//
if (cl_shownet.value == 1)
- {
Con_Printf ("%i ",net_message.cursize);
- netshown = true;
- }
else if (cl_shownet.value == 2)
- {
Con_Printf ("------------------\n");
- netshown = true;
- }
cl.onground = false; // unless the server says otherwise
//
//
// cl_main
//
-void CL_AllocDlight (entity_t *ent, vec3_t org, float radius, float red, float green, float blue, float decay, float lifetime);
-void CL_DecayLights (void);
+extern void CL_AllocDlight (entity_t *ent, vec3_t org, float radius, float red, float green, float blue, float decay, float lifetime);
+extern void CL_DecayLights (void);
-void CL_Init (void);
+extern void CL_Init (void);
-void CL_EstablishConnection (char *host);
-void CL_Signon1 (void);
-void CL_Signon2 (void);
-void CL_Signon3 (void);
-void CL_Signon4 (void);
+extern void CL_EstablishConnection (char *host);
+extern void CL_Signon1 (void);
+extern void CL_Signon2 (void);
+extern void CL_Signon3 (void);
+extern void CL_Signon4 (void);
-void CL_Disconnect (void);
-void CL_Disconnect_f (void);
-void CL_NextDemo (void);
+extern void CL_Disconnect (void);
+extern void CL_Disconnect_f (void);
+extern void CL_NextDemo (void);
// LordHavoc: raised this from 256 to the maximum possible number of entities visible
#define MAX_VISEDICTS (MAX_EDICTS + MAX_STATIC_ENTITIES + MAX_TEMP_ENTITIES)
extern kbutton_t in_strafe;
extern kbutton_t in_speed;
-void CL_InitInput (void);
-void CL_SendCmd (void);
-void CL_SendMove (usercmd_t *cmd);
+extern void CL_InitInput (void);
+extern void CL_SendCmd (void);
+extern void CL_SendMove (usercmd_t *cmd);
-void CL_ParseTEnt (void);
-void CL_UpdateTEnts (void);
-void CL_DoEffects (void);
+extern void CL_ParseTEnt (void);
+extern void CL_UpdateTEnts (void);
+extern void CL_DoEffects (void);
-entity_t *CL_NewTempEntity (void);
+extern entity_t *CL_NewTempEntity (void);
-void CL_Effect(vec3_t org, int modelindex, int startframe, int framecount, float framerate);
+extern void CL_Effect(vec3_t org, int modelindex, int startframe, int framecount, float framerate);
-void CL_ClearState (void);
+extern void CL_ClearState (void);
-int CL_ReadFromServer (void);
-void CL_WriteToServer (usercmd_t *cmd);
-void CL_BaseMove (usercmd_t *cmd);
+extern int CL_ReadFromServer (void);
+extern void CL_WriteToServer (usercmd_t *cmd);
+extern void CL_BaseMove (usercmd_t *cmd);
-float CL_KeyState (kbutton_t *key);
-char *Key_KeynumToString (int keynum);
+extern float CL_KeyState (kbutton_t *key);
+extern char *Key_KeynumToString (int keynum);
//
// cl_demo.c
//
-void CL_StopPlayback (void);
-int CL_GetMessage (void);
+extern void CL_StopPlayback (void);
+extern int CL_GetMessage (void);
-void CL_Stop_f (void);
-void CL_Record_f (void);
-void CL_PlayDemo_f (void);
-void CL_TimeDemo_f (void);
+extern void CL_Stop_f (void);
+extern void CL_Record_f (void);
+extern void CL_PlayDemo_f (void);
+extern void CL_TimeDemo_f (void);
//
// cl_parse.c
//
-void CL_ParseServerMessage (void);
-void CL_BitProfile_f(void);
+extern void CL_Parse_Init(void);
+extern void CL_ParseServerMessage(void);
+extern void CL_BitProfile_f(void);
//
// view
//
-void V_StartPitchDrift (void);
-void V_StopPitchDrift (void);
+extern void V_StartPitchDrift (void);
+extern void V_StopPitchDrift (void);
-void V_RenderView (void);
-void V_UpdateBlends (void);
-void V_Register (void);
-void V_ParseDamage (void);
-void V_SetContentsColor (int contents);
+extern void V_RenderView (void);
+extern void V_UpdateBlends (void);
+extern void V_Register (void);
+extern void V_ParseDamage (void);
+extern void V_SetContentsColor (int contents);
//
// cl_tent
//
-void CL_InitTEnts (void);
-void CL_SignonReply (void);
+extern void CL_InitTEnts (void);
+extern void CL_SignonReply (void);
free(m);
}
-void GL_TextureStats_PrintTotal(void);
+extern void GL_TextureStats_PrintTotal(void);
extern int hunk_low_used, hunk_high_used, hunk_size;
void COM_Memstats_f(void)
{
if (key_dest == key_console)
{
if (cls.state == ca_connected)
- {
+// {
key_dest = key_game;
- key_lines[edit_line][1] = 0; // clear any typing
- key_linepos = 1;
- }
+// key_lines[edit_line][1] = 0; // clear any typing
+// key_linepos = 1;
+// }
else
- {
M_Menu_Main_f ();
- }
}
else
key_dest = key_console;
return &pic->pic;
}
-extern void LoadSky_f(void);
-
/*
===============
Draw_Init
===============
*/
-void rmain_registercvars();
-
-void gl_draw_start()
+void gl_draw_start(void)
{
int i;
draw_disc = Draw_PicFromWad ("disc");
}
-void gl_draw_shutdown()
+void gl_draw_shutdown(void)
{
}
-void gl_draw_newmap()
+void gl_draw_newmap(void)
{
}
showlmp_t showlmp[SHOWLMP_MAXLABELS];
-void SHOWLMP_decodehide()
+void SHOWLMP_decodehide(void)
{
int i;
byte *lmplabel;
}
}
-void SHOWLMP_decodeshow()
+void SHOWLMP_decodeshow(void)
{
int i, k;
byte lmplabel[256], picname[256];
showlmp[k].y = y;
}
-void SHOWLMP_drawall()
+void SHOWLMP_drawall(void)
{
int i;
for (i = 0;i < SHOWLMP_MAXLABELS;i++)
Draw_Pic(showlmp[i].x, showlmp[i].y, Draw_CachePic(showlmp[i].pic));
}
-void SHOWLMP_clear()
+void SHOWLMP_clear(void)
{
int i;
for (i = 0;i < SHOWLMP_MAXLABELS;i++)
}
}
-void GL_UnlockArray()
+void GL_UnlockArray(void)
{
if (arraylocked)
{
glRotatef (angles[2], 1, 0, 0);
}
-void makechrometexture()
+void makechrometexture(void)
{
int i;
byte noise[64*64];
chrometexture = R_LoadTexture ("chrometexture", 64, 64, &data[0][0], TEXF_MIPMAP | TEXF_RGBA | TEXF_PRECACHE);
}
-void gl_models_start()
+void gl_models_start(void)
{
// allocate vertex processing arrays
aliasvert = qmalloc(sizeof(float[MD2MAX_VERTS][3]));
makechrometexture();
}
-void gl_models_shutdown()
+void gl_models_shutdown(void)
{
qfree(aliasvert);
qfree(aliasvertnorm);
qfree(aliasvertusage);
}
-void gl_models_newmap()
+void gl_models_newmap(void)
{
}
-void GL_Models_Init()
+void GL_Models_Init(void)
{
Cvar_RegisterVariable(&gl_transform);
Cvar_RegisterVariable(&gl_lockarrays);
R_RegisterModule("GL_Models", gl_models_start, gl_models_shutdown, gl_models_newmap);
}
-extern vec3_t softwaretransform_x;
-extern vec3_t softwaretransform_y;
-extern vec3_t softwaretransform_z;
-extern vec_t softwaretransform_scale;
-extern vec3_t softwaretransform_offset;
void R_AliasTransformVerts(int vertcount)
{
int i;
=================
*/
-extern vec3_t lightspot;
void R_LightModel(entity_t *ent, int numverts, vec3_t center, vec3_t basecolor);
void R_DrawAliasFrame (maliashdr_t *maliashdr, float alpha, vec3_t color, entity_t *ent, int shadow, vec3_t org, vec3_t angles, vec_t scale, frameblend_t *blend, rtexture_t **skin, int colormap, int effects, int flags)
{
float transreciptable[256];
-void gl_poly_start()
+void gl_poly_start(void)
{
int i;
transvert = qmalloc(MAX_TRANSVERTS * sizeof(transvert_t));
transreciptable[i] = 1.0f / i;
}
-void gl_poly_shutdown()
+void gl_poly_shutdown(void)
{
qfree(transvert);
qfree(transpoly);
qfree(skypoly);
}
-void gl_poly_newmap()
+void gl_poly_newmap(void)
{
}
-void GL_Poly_Init()
+void GL_Poly_Init(void)
{
Cvar_RegisterVariable (&gl_multitexture);
R_RegisterModule("GL_Poly", gl_poly_start, gl_poly_shutdown, gl_poly_newmap);
}
-void transpolyclear()
+void transpolyclear(void)
{
currenttranspoly = currenttransvert = 0;
currenttranslist = translist;
}
*/
-void transpolyend()
+void transpolyend(void)
{
float center, d, maxdist;
int i;
int transpolyindices;
-void transpolyrender()
+void transpolyrender(void)
{
int i, j, tpolytype, texnum;
transpoly_t *p;
glDisable(GL_ALPHA_TEST);
}
-void wallpolyclear()
+void wallpolyclear(void)
{
currentwallpoly = currentwallvert = 0;
}
-void wallpolyrender()
+void wallpolyrender(void)
{
int i, j, texnum, lighttexnum;
wallpoly_t *p;
glDepthMask(1);
}
-void skypolyclear()
+void skypolyclear(void)
{
currentskypoly = currentskyvert = 0;
}
-extern char skyname[];
-extern rtexture_t *solidskytexture, *alphaskytexture;
-void skypolyrender()
+void skypolyrender(void)
{
int i, j;
skypoly_t *p;
-extern float fog_density, fog_red, fog_green, fog_blue;
-
#define TPOLYTYPE_ALPHA 0
#define TPOLYTYPE_ADD 1
-extern void transpolyclear();
-extern void transpolyrender();
+extern void transpolyclear(void);
+extern void transpolyrender(void);
extern void transpolybegin(int texnum, int glowtexnum, int fogtexnum, int transpolytype);
-extern void transpolyend();
+extern void transpolyend(void);
-extern void wallpolyclear();
-extern void wallpolyrender();
+extern void wallpolyclear(void);
+extern void wallpolyrender(void);
-extern void skypolyclear();
-extern void skypolyrender();
-extern void skypolybegin();
+extern void skypolyclear(void);
+extern void skypolyrender(void);
+extern void skypolybegin(void);
extern void skypolyvert(float x, float y, float z);
-extern void skypolyend();
+extern void skypolyend(void);
#define MAX_TRANSPOLYS 65536
#define MAX_TRANSVERTS (MAX_TRANSPOLYS*4)
float fog_density, fog_red, fog_green, fog_blue;
qboolean fogenabled;
qboolean oldgl_fogenable;
-void FOG_framebegin()
+void FOG_framebegin(void)
{
if (nehahra)
{
}
}
-void FOG_frameend()
+void FOG_frameend(void)
{
if (glfog.value)
glDisable(GL_FOG);
}
-void FOG_clear()
+void FOG_clear(void)
{
if (nehahra)
{
fog_density = fog_red = fog_green = fog_blue = 0.0f;
}
-void FOG_registercvars()
+void FOG_registercvars(void)
{
Cvar_RegisterVariable (&glfog);
if (nehahra)
}
}
-void gl_main_start()
+void gl_main_start(void)
{
}
-void gl_main_shutdown()
+void gl_main_shutdown(void)
{
}
-void gl_main_newmap()
+void gl_main_newmap(void)
{
}
-void GL_Main_Init()
+void GL_Main_Init(void)
{
FOG_registercvars();
Cvar_RegisterVariable (&r_drawentities);
R_RegisterModule("GL_Main", gl_main_start, gl_main_shutdown, gl_main_newmap);
}
-extern void GL_Draw_Init();
-extern void GL_Main_Init();
-extern void GL_Models_Init();
-extern void GL_Poly_Init();
-extern void GL_Surf_Init();
-extern void GL_Screen_Init();
-extern void GL_Misc_Init();
-extern void R_Crosshairs_Init();
-extern void R_Light_Init();
-extern void R_Particles_Init();
-extern void R_Explosion_Init();
-extern void CL_Effects_Init();
-
-void Render_Init()
+extern void GL_Draw_Init(void);
+extern void GL_Main_Init(void);
+extern void GL_Models_Init(void);
+extern void GL_Poly_Init(void);
+extern void GL_Surf_Init(void);
+extern void GL_Screen_Init(void);
+extern void GL_Misc_Init(void);
+extern void R_Crosshairs_Init(void);
+extern void R_Light_Init(void);
+extern void R_Particles_Init(void);
+extern void R_Explosion_Init(void);
+extern void CL_Effects_Init(void);
+
+void Render_Init(void)
{
R_Modules_Shutdown();
GL_Draw_Init();
}
-extern char skyname[];
-
/*
=============
R_SetupGL
void R_SetupGL (void)
{
float screenaspect;
- extern int glwidth, glheight;
int x, x2, y2, y, w, h;
if (!r_render.value)
}
// LordHavoc: my trick to *FIX* GLQuake lighting once and for all :)
-void GL_Brighten()
+void GL_Brighten(void)
{
if (!r_render.value)
return;
glEnable (GL_CULL_FACE);
}
-void GL_BlendView()
+void GL_BlendView(void)
{
if (!r_render.value)
return;
r_refdef must be set before the first call
================
*/
-extern qboolean intimerefresh;
-extern void R_Sky();
-extern void UploadLightmaps();
+extern void R_Sky(void);
+extern void UploadLightmaps(void);
char r_speeds2_string1[81], r_speeds2_string2[81], r_speeds2_string3[81], r_speeds2_string4[81], r_speeds2_string5[81], r_speeds2_string6[81], r_speeds2_string7[81];
void R_RenderView (void)
{
void R_InitParticles (void);
-void gl_misc_start()
+void gl_misc_start(void)
{
}
-void gl_misc_shutdown()
+void gl_misc_shutdown(void)
{
}
-void gl_misc_newmap()
+void gl_misc_newmap(void)
{
}
R_RegisterModule("GL_Misc", gl_misc_start, gl_misc_shutdown, gl_misc_newmap);
}
-void R_ClearParticles (void);
-void GL_BuildLightmaps (void);
+extern void R_ClearParticles (void);
+extern void GL_BuildLightmaps (void);
/*
===============
R_NewMap
===============
*/
-void SHOWLMP_clear();
void R_NewMap (void)
{
int i;
int wateralpha;
-void gl_surf_start()
+void gl_surf_start(void)
{
}
-void gl_surf_shutdown()
+void gl_surf_shutdown(void)
{
}
-void gl_surf_newmap()
+void gl_surf_newmap(void)
{
}
-void GL_Surf_Init()
+void GL_Surf_Init(void)
{
int i;
for (i = 0;i < MAX_LIGHTMAPS;i++)
*/
-extern int solidskytexture;
-extern int alphaskytexture;
-extern float speedscale; // for top sky and bottom sky
-
-extern char skyname[];
-
float turbsin[256] =
{
#include "gl_warp_sin.h"
#define TURBSCALE (256.0 / (2 * M_PI))
-void UploadLightmaps()
+void UploadLightmaps(void)
{
int i;
if (nosubimage || nosubimagefragments)
}
// LordHavoc: transparent brush models
-extern float modelalpha;
-
void RSurf_DrawWallVertex(msurface_t *s, texture_t *t, int transform, int isbmodel)
{
int i, alpha, size3;
*/
static byte *worldvis;
-extern cvar_t r_novis;
void R_MarkLeaves (void)
{
worldvis = Mod_LeafPVS (r_viewleaf, cl.worldmodel);
}
-void R_SolidWorldNode ()
+void R_SolidWorldNode (void)
{
int l;
mleaf_t *leaf;
/*
// experimental and inferior to the other in recursion depth allowances
-void R_PortalWorldNode ()
+void R_PortalWorldNode (void)
{
int i, j;
mportal_t *p;
}
*/
-void R_PortalWorldNode ()
+void R_PortalWorldNode (void)
{
int portalstack, i;
mportal_t *p, *pstack[8192];
}
}
-void R_DrawPortals()
+void R_DrawPortals(void)
{
int drawportals, i, r, g, b;
mleaf_t *leaf, *endleaf;
//============================================================================
-void gl_screen_start()
+void gl_screen_start(void)
{
scr_ram = Draw_PicFromWad ("ram");
scr_net = Draw_PicFromWad ("net");
scr_turtle = Draw_PicFromWad ("turtle");
}
-void gl_screen_shutdown()
+void gl_screen_shutdown(void)
{
}
-void gl_screen_newmap()
+void gl_screen_newmap(void)
{
}
void DrawCrosshair(int num);
void GL_Set2D (void);
-extern void SHOWLMP_drawall();
-extern cvar_t r_speeds2;
-
-void GL_BrightenScreen()
+void GL_BrightenScreen(void)
{
float f;
LordHavoc: due to my rewrite of R_WorldNode, it no longer takes 256k of stack space :)
==================
*/
-void GL_Finish();
+void GL_Finish(void);
void SCR_UpdateScreen (void)
{
double time1 = 0, time2;
if (r_speeds2.value)
{
- extern char r_speeds2_string1[81], r_speeds2_string2[81], r_speeds2_string3[81], r_speeds2_string4[81], r_speeds2_string5[81], r_speeds2_string6[81], r_speeds2_string7[81];
Draw_String(0, vid.height - sb_lines - 56, r_speeds2_string1, 80);
Draw_String(0, vid.height - sb_lines - 48, r_speeds2_string2, 80);
Draw_String(0, vid.height - sb_lines - 40, r_speeds2_string3, 80);
}
// for profiling, this is separated
-void GL_Finish()
+void GL_Finish(void)
{
if (!r_render.value)
return;
char engineversion[40];
//void GL_UploadTexture (gltexture_t *glt);
-void r_textures_start()
+void r_textures_start(void)
{
// int i;
// gltexture_t *glt;
// GL_UploadTexture(glt);
}
-void r_textures_shutdown()
+void r_textures_shutdown(void)
{
}
-void r_textures_newmap()
+void r_textures_newmap(void)
{
}
#include "quakedef.h"
-extern model_t *loadmodel;
-
int skytexturenum;
rtexture_t *solidskytexture;
msurface_t *warpface;
-extern cvar_t gl_subdivide_size;
-
void BoundPoly (int numverts, float *verts, vec3_t mins, vec3_t maxs)
{
int i, j;
}
}
-extern cvar_t r_farclip;
-
#define R_SkyBoxPolyVec(s,t,x,y,z) \
glTexCoord2f((s) * (254.0f/256.0f) + (1.0f/256.0f), (t) * (254.0f/256.0f) + (1.0f/256.0f));\
glVertex3f((x) * 1024.0 + r_origin[0], (y) * 1024.0 + r_origin[1], (z) * 1024.0 + r_origin[2]);
-void R_SkyBox()
+void R_SkyBox(void)
{
glDisable (GL_BLEND);
glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
glDisableClientState(GL_TEXTURE_COORD_ARRAY);
}
-void R_SkyDome()
+void R_SkyDome(void)
{
glDisable (GL_BLEND);
glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
}
*/
-void R_Sky()
+void R_Sky(void)
{
if (!r_render.value)
return;
#include "r_lerpanim.h"
void GL_LockArray(int first, int count);
-void GL_UnlockArray();
+void GL_UnlockArray(void);
void R_DrawAliasModel (entity_t *ent, int cull, float alpha, model_t *clmodel, frameblend_t *blend, int skin, vec3_t org, vec3_t angles, vec_t scale, int effects, int flags, int colormap);
================
*/
char hosterrorstring[4096];
-extern qboolean hostloopactive;
void Host_Error (char *error, ...)
{
va_list argptr;
//============================================================================
-void Render_Init();
+void Render_Init(void);
/*
====================
Host_Init
====================
*/
-void Host_Init ()
+void Host_Init (void)
{
int i;
/*
#include "quakedef.h"
-extern cvar_t pausable;
-
int current_skill;
void Mod_Print (void);
static float old_mouse_x, old_mouse_y;
static int mx, my;
-static void IN_init_kb();
-static void IN_init_mouse();
+static void IN_init_kb(void);
+static void IN_init_mouse(void);
cvar_t m_filter = {"m_filter","0"};
in_svgalib_inited = 1;
}
-static void IN_init_kb()
+static void IN_init_kb(void)
{
int i;
keyboard_seteventhandler(keyhandler);
}
-static void IN_init_mouse()
+static void IN_init_mouse(void)
{
int mtype;
char *mousedev;
}
// LordHavoc: increased messagemode length (was 31)
- if (chat_bufferlen == 255)
+ if (chat_bufferlen == 240)
return; // all full
chat_buffer[chat_bufferlen++] = key;
#define MNET_IPX 1
#define MNET_TCP 2
-extern int m_activenet;
+extern int m_activenet;
+extern int m_return_state;
+extern int m_state;
+extern qboolean m_return_onerror;
+extern char m_return_reason[32];
//
// menus
#define ALIASTYPE_MD2 2
#define ALIASTYPE_ZYM 3
+extern void Mod_LoadAliasModel (struct model_s *mod, void *buffer);
+extern void Mod_LoadQ2AliasModel (struct model_s *mod, void *buffer);
+
+extern void Mod_AliasInit(void);
+
#include "model_zymotic.h"
\ No newline at end of file
return Mod_DecompressVis (leaf->compressed_vis, model);
}
-extern byte *mod_base;
-
-extern cvar_t r_fullbrights;
-
rtexture_t *r_notexture;
texture_t r_notexture_mip;
-void Mod_SetupNoTexture()
+void Mod_SetupNoTexture(void)
{
int x, y;
byte pix[16][16][4];
memcpy (loadmodel->visdata, mod_base + l->fileofs, l->filelen);
}
-void CL_ParseEntityLump(char *entdata);
-
-extern qboolean isworldmodel;
-
/*
=================
Mod_LoadEntities
void GL_SubdivideSurface (msurface_t *fa);
-extern char skyname[];
-
/*
=================
Mod_LoadFaces
return p;
}
-void Mod_FinalizePortals()
+void Mod_FinalizePortals(void)
{
int i, j, numportals, numpoints;
portal_t *p, *pnext;
}
*/
-void Mod_MakePortals()
+void Mod_MakePortals(void)
{
// Con_Printf("building portals for %s\n", loadmodel->name);
}
mportal_t;
+extern void CL_ParseEntityLump(char *entdata);
extern rtexture_t *r_notexture;
extern texture_t r_notexture_mip;
+
+extern void Mod_LoadBrushModel (struct model_s *mod, void *buffer);
+extern void Mod_BrushInit(void);
model_t *loadmodel;
char loadname[32]; // for hunk tags
-extern void Mod_LoadSpriteModel (model_t *mod, void *buffer);
-extern void Mod_LoadBrushModel (model_t *mod, void *buffer);
-extern void Mod_LoadAliasModel (model_t *mod, void *buffer);
-extern void Mod_LoadQ2AliasModel (model_t *mod, void *buffer);
-extern void Mod_LoadZymoticModel (model_t *mod, void *buffer);
-model_t *Mod_LoadModel (model_t *mod, qboolean crash);
-
// LordHavoc: increased from 512 to 2048
#define MAX_MOD_KNOWN 2048
model_t mod_known[MAX_MOD_KNOWN];
int mod_numknown;
-extern void Mod_BrushInit();
-extern void Mod_AliasInit();
-extern void Mod_SpriteInit();
-
/*
===============
Mod_Init
//============================================================================
-void Mod_Init (void);
-void Mod_ClearAll (void);
+// used to avoid setting up submodels in non-world bmodels
+extern qboolean isworldmodel;
+// model loading
+extern model_t *loadmodel;
+extern byte *mod_base;
+// sky/water subdivision
+extern cvar_t gl_subdivide_size;
+// texture fullbrights
+extern cvar_t r_fullbrights;
+
+void Mod_Init (void);
+void Mod_ClearAll (void);
model_t *Mod_ForName (char *name, qboolean crash);
-void *Mod_Extradata (model_t *mod); // handles caching
-void Mod_TouchModel (char *name);
+void *Mod_Extradata (model_t *mod); // handles caching
+void Mod_TouchModel (char *name);
mleaf_t *Mod_PointInLeaf (float *p, model_t *model);
-byte *Mod_LeafPVS (mleaf_t *leaf, model_t *model);
+byte *Mod_LeafPVS (mleaf_t *leaf, model_t *model);
-extern model_t *loadmodel;
-extern char loadname[32]; // for hunk tags
+extern model_t *loadmodel;
+extern char loadname[32]; // for hunk tags
extern model_t *Mod_LoadModel (model_t *mod, qboolean crash);
extern float RadiusFromBounds (vec3_t mins, vec3_t maxs);
extern model_t *Mod_FindName (char *name);
+
#endif // __MODEL__
// void *cachespot; // remove?
int ofs_frames;
} msprite_t;
+
+extern void Mod_LoadSpriteModel (struct model_s *mod, void *buffer);
+extern void Mod_SpriteInit(void);
+
typedef struct zymlump_s
{
int start;
float origin[3];
}
zymvertex_t;
+
+extern void Mod_LoadZymoticModel (struct model_s *mod, void *buffer);
extern qboolean slistSilent;
extern qboolean slistLocal;
+extern cvar_t hostname;
+
void NET_Slist_f (void);
byte data[MAX_DATAGRAM];
} packetBuffer;
-extern int m_return_state;
-extern int m_state;
-extern qboolean m_return_onerror;
-extern char m_return_reason[32];
-
//#ifdef DEBUG
char *StrAddr (struct qsockaddr *addr)
extern int gethostname (char *, int);
extern int close (int);
-extern cvar_t hostname;
-
static int net_acceptsocket = -1; // socket for fielding new connections
static int net_controlsocket;
static int net_broadcastsocket = 0;
#include "quakedef.h"
#include "winquake.h"
-extern cvar_t hostname;
-
#define MAXHOSTNAMELEN 256
static int net_acceptsocket = -1; // socket for fielding new connections
}
-void WINS_GetLocalAddress()
+void WINS_GetLocalAddress(void)
{
struct hostent *local = NULL;
char buff[MAXHOSTNAMELEN];
#include <wsipx.h>
#include "net_wipx.h"
-extern cvar_t hostname;
-
#define MAXHOSTNAMELEN 256
static int net_acceptsocket = -1; // socket for fielding new connections
cvar_t vid_brightness = {"vid_brightness", "1", true};
cvar_t vid_contrast = {"vid_contrast", "1", true};
-void Palette_Setup8to24()
+void Palette_Setup8to24(void)
{
byte *in, *out;
unsigned short i;
}
/*
-void Palette_Setup15to8()
+void Palette_Setup15to8(void)
{
byte *pal;
unsigned r,g,b;
}
}
-void Texture_Gamma ()
+void Texture_Gamma (void)
{
int i, adjusted;
double invgamma;
Con_Printf("Hardware gamma not supported.\n");
}
-void Gamma_Init()
+void Gamma_Init(void)
{
Cvar_RegisterVariable(&vid_gamma);
Cvar_RegisterVariable(&vid_brightness);
Cvar_RegisterVariable(&vid_contrast);
}
-void Palette_Init()
+void Palette_Init(void)
{
byte *pal;
pal = (byte *)COM_LoadMallocFile ("gfx/palette.lmp", false);
void BuildGammaTable8(float prescale, float gamma, float scale, float base, byte *out);
void BuildGammaTable16(float prescale, float gamma, float scale, float base, unsigned short *out);
-void Gamma_Init();
-void Palette_Init();
+void Gamma_Init(void);
+void Palette_Init(void);
return d->ofs*4;
}
-void FindEdictFieldOffsets()
+void FindEdictFieldOffsets(void)
{
eval_gravity = FindFieldOffset("gravity");
eval_button3 = FindFieldOffset("button3");
#define GETEDICTFIELDVALUE(ed, fieldoffset) (fieldoffset ? (eval_t*)((char*)&ed->v + fieldoffset) : NULL)
+
+extern dfunction_t *SV_PlayerPhysicsQC;
+extern dfunction_t *EndFrameQC;
+
//============================================================================
extern dprograms_t *progs;
void Host_ClearMemory (void);
void Host_ServerFrame (void);
void Host_InitCommands (void);
-void Host_Init ();
+void Host_Init (void);
void Host_Shutdown(void);
void Host_Error (char *error, ...);
void Host_EndGame (char *message, ...);
crosshairtex[num] = R_LoadTexture(va("crosshair%02d", num), 16, 16, &data[0][0], TEXF_ALPHA | TEXF_RGBA | TEXF_PRECACHE);
}
-void r_crosshairs_start()
+void r_crosshairs_start(void)
{
int i;
for (i = 0;i < NUMCROSSHAIRS;i++)
// crosshairtex[1] = crosshairload(crosshairtex2);
}
-void r_crosshairs_shutdown()
+void r_crosshairs_shutdown(void)
{
}
-void r_crosshairs_newmap()
+void r_crosshairs_newmap(void)
{
}
-void R_Crosshairs_Init()
+void R_Crosshairs_Init(void)
{
Cvar_RegisterVariable(&crosshair_brightness);
Cvar_RegisterVariable(&crosshair_alpha);
cvar_t r_drawdecals = {"r_drawdecals", "1"};
cvar_t r_decals_lighting = {"r_decals_lighting", "1"};
-void r_decals_start()
+void r_decals_start(void)
{
decals = (decal_t *) qmalloc(MAX_DECALS * sizeof(decal_t));
memset(decals, 0, MAX_DECALS * sizeof(decal_t));
currentdecal = 0;
}
-void r_decals_shutdown()
+void r_decals_shutdown(void)
{
qfree(decals);
}
-void r_decals_newmap()
+void r_decals_newmap(void)
{
memset(decals, 0, MAX_DECALS * sizeof(decal_t));
currentdecal = 0;
}
-void R_Decals_Init()
+void R_Decals_Init(void)
{
Cvar_RegisterVariable (&r_drawdecals);
Cvar_RegisterVariable (&r_decals_lighting);
-void R_Decals_Init();
+void R_Decals_Init(void);
-void GL_DrawDecals();
+void GL_DrawDecals(void);
void R_Decal(vec3_t org, rtexture_t *tex, float scale, int cred, int cgreen, int cblue, int alpha);
return i;
}
-void r_explosion_start()
+void r_explosion_start(void)
{
int x, y;
byte noise1[128][128], noise2[128][128], data[128][128][4];
explosiontexturefog = R_LoadTexture ("explosiontexturefog", 128, 128, &data[0][0][0], TEXF_MIPMAP | TEXF_ALPHA | TEXF_RGBA | TEXF_PRECACHE);
}
-void r_explosion_shutdown()
+void r_explosion_shutdown(void)
{
}
-void r_explosion_newmap()
+void r_explosion_newmap(void)
{
memset(explosion, 0, sizeof(explosion));
}
-void R_Explosion_Init()
+void R_Explosion_Init(void)
{
int i, x, y;
i = 0;
}
}
-void R_MoveExplosions()
+void R_MoveExplosions(void)
{
int i;
float frametime;
}
}
-void R_DrawExplosions()
+void R_DrawExplosions(void)
{
int i;
if (!r_drawexplosions.value)
cvar_t r_lightmodels = {"r_lightmodels", "1"};
-extern cvar_t gl_transform;
-
-void r_light_start()
+void r_light_start(void)
{
}
-void r_light_shutdown()
+void r_light_shutdown(void)
{
}
-void r_light_newmap()
+void r_light_newmap(void)
{
}
-void R_Light_Init()
+void R_Light_Init(void)
{
Cvar_RegisterVariable(&r_lightmodels);
R_RegisterModule("R_Light", r_light_start, r_light_shutdown, r_light_newmap);
mplane_t *lightplane;
vec3_t lightspot;
-extern cvar_t r_ambient;
-
/*
int RecursiveLightPoint (vec3_t color, mnode_t *node, vec3_t start, vec3_t end)
{
}
*/
-extern float *aliasvert;
-extern float *aliasvertnorm;
-extern byte *aliasvertcolor;
-extern float modelalpha;
void R_LightModel(entity_t *ent, int numverts, vec3_t center, vec3_t basecolor)
{
// LordHavoc: warning: reliance on int being 4 bytes here (of course the d_8to24table relies on that too...)
{
int active; // set by start, cleared by shutdown
char *name;
- void(*start)();
- void(*shutdown)();
- void(*newmap)();
+ void(*start)(void);
+ void(*shutdown)(void);
+ void(*newmap)(void);
}
rendermodule_t;
rendermodule_t rendermodule[MAXRENDERMODULES];
-void R_Modules_Init()
+void R_Modules_Init(void)
{
int i;
for (i = 0;i < MAXRENDERMODULES;i++)
rendermodule[i].name = NULL;
}
-void R_RegisterModule(char *name, void(*start)(), void(*shutdown)(), void(*newmap)())
+void R_RegisterModule(char *name, void(*start)(void), void(*shutdown)(void), void(*newmap)(void))
{
int i;
for (i = 0;i < MAXRENDERMODULES;i++)
rendermodule[i].newmap = newmap;
}
-void R_Modules_Start ()
+void R_Modules_Start(void)
{
int i;
for (i = 0;i < MAXRENDERMODULES;i++)
}
}
-void R_Modules_Shutdown ()
+void R_Modules_Shutdown(void)
{
int i;
for (i = 0;i < MAXRENDERMODULES;i++)
}
}
-void R_Modules_Restart ()
+void R_Modules_Restart(void)
{
R_Modules_Shutdown();
R_Modules_Start();
}
-void R_Modules_NewMap ()
+void R_Modules_NewMap(void)
{
int i;
for (i = 0;i < MAXRENDERMODULES;i++)
-void R_Modules_Init();
-void R_RegisterModule(char *name, void(*start)(), void(*shutdown)(), void(*newmap)());
-void R_Modules_Start();
-void R_Modules_Shutdown();
-void R_Modules_NewMap();
-void R_Modules_Restart();
+void R_Modules_Init(void);
+void R_RegisterModule(char *name, void(*start)(void), void(*shutdown)(void), void(*newmap)(void));
+void R_Modules_Start(void);
+void R_Modules_Shutdown(void);
+void R_Modules_NewMap(void);
+void R_Modules_Restart(void);
rocketglowparticletexture = R_LoadTexture ("glowparticletexture", 32, 32, &data[0][0][0], TEXF_MIPMAP | TEXF_ALPHA | TEXF_RGBA | TEXF_PRECACHE);
}
-void r_part_start()
+void r_part_start(void)
{
particles = (particle_t *) qmalloc(r_numparticles * sizeof(particle_t));
freeparticles = (void *) qmalloc(r_numparticles * sizeof(particle_t *));
R_InitParticleTexture ();
}
-void r_part_shutdown()
+void r_part_shutdown(void)
{
numparticles = 0;
qfree(particles);
qfree(freeparticles);
}
-void r_part_newmap()
+void r_part_newmap(void)
{
numparticles = 0;
}
R_DrawParticles
===============
*/
-extern cvar_t sv_gravity;
-
void R_MoveParticles (void)
{
particle_t *p;
// refresh.h -- public interface to refresh functions
+// sky stuff
+extern char skyname[];
+extern void R_SetSkyBox(char* sky);
+extern void LoadSky_f(void);
+extern rtexture_t *solidskytexture;
+extern rtexture_t *alphaskytexture;
+extern float speedscale; // for top sky and bottom sky
+
+// far clip distance for scene
+extern cvar_t r_farclip;
+
+// fog stuff
+extern void FOG_clear(void);
+extern float fog_density, fog_red, fog_green, fog_blue;
+
+// SHOWLMP stuff (Nehahra)
+extern void SHOWLMP_decodehide(void);
+extern void SHOWLMP_decodeshow(void);
+extern void SHOWLMP_drawall(void);
+extern void SHOWLMP_clear(void);
+
+// render profiling stuff
+extern qboolean intimerefresh;
+extern cvar_t r_speeds2;
+extern char r_speeds2_string1[81], r_speeds2_string2[81], r_speeds2_string3[81], r_speeds2_string4[81], r_speeds2_string5[81], r_speeds2_string6[81], r_speeds2_string7[81];
+
+// lighting stuff
+extern vec3_t lightspot;
+extern cvar_t r_ambient;
+
+// model rendering stuff
+extern float *aliasvert;
+extern float *aliasvertnorm;
+extern byte *aliasvertcolor;
+extern float modelalpha;
+
+// vis stuff
+extern cvar_t r_novis;
+
+// model transform stuff
+extern cvar_t gl_transform;
+
#define TOP_RANGE 16 // soldier uniform colors
#define BOTTOM_RANGE 96
//============================================================================
-extern cvar_t teamplay;
-extern cvar_t skill;
-extern cvar_t deathmatch;
-extern cvar_t coop;
-extern cvar_t fraglimit;
-extern cvar_t timelimit;
-
-extern server_static_t svs; // persistant server info
-extern server_t sv; // local server
-
-extern client_t *host_client;
-
-extern jmp_buf host_abortserver;
-
-extern edict_t *sv_player;
+extern cvar_t teamplay;
+extern cvar_t skill;
+extern cvar_t deathmatch;
+extern cvar_t coop;
+extern cvar_t fraglimit;
+extern cvar_t timelimit;
+extern cvar_t pausable;
+extern cvar_t sv_deltacompress;
+extern cvar_t sv_maxvelocity;
+extern cvar_t sv_gravity;
+extern cvar_t sv_nostep;
+extern cvar_t sv_friction;
+extern cvar_t sv_edgefriction;
+extern cvar_t sv_stopspeed;
+extern cvar_t sv_maxspeed;
+extern cvar_t sv_accelerate;
+extern cvar_t sv_idealpitchscale;
+extern cvar_t sv_aim;
+extern cvar_t sv_predict;
+
+extern server_static_t svs; // persistant server info
+extern server_t sv; // local server
+
+extern client_t *host_client;
+
+extern jmp_buf host_abortserver;
+
+extern edict_t *sv_player;
//===========================================================
void SV_CheckForNewClients (void);
void SV_RunClients (void);
-void SV_SaveSpawnparms ();
+void SV_SaveSpawnparms (void);
void SV_SpawnServer (char *server);
}
static inline int
-get_hw_ptr()
+get_hw_ptr(void)
{
size_t app_ptr;
snd_pcm_sframes_t delay;
void Snd_WriteLinearBlastStereo16 (void);
-extern cvar_t snd_swapstereo;
void Snd_WriteLinearBlastStereo16 (void)
{
int i;
#define MAX_DYNAMIC_CHANNELS 128
-extern channel_t channels[MAX_CHANNELS];
+extern channel_t channels[MAX_CHANNELS];
// 0 to MAX_DYNAMIC_CHANNELS-1 = normal entity sounds
// MAX_DYNAMIC_CHANNELS to MAX_DYNAMIC_CHANNELS + NUM_AMBIENTS -1 = water, etc
// MAX_DYNAMIC_CHANNELS + NUM_AMBIENTS to total_channels = static sounds
-extern int total_channels;
+extern int total_channels;
//
// Fake dma is a synchronous faking of the DMA progress used for
// number of times S_Update() is called per second.
//
-extern qboolean fakedma;
-extern int fakedma_updates;
-extern int paintedtime;
-extern int soundtime;
+extern qboolean fakedma;
+extern int fakedma_updates;
+extern int paintedtime;
+extern int soundtime;
extern vec3_t listener_origin;
extern vec3_t listener_forward;
extern vec3_t listener_right;
extern volatile dma_t sn;
extern vec_t sound_nominal_clip_dist;
-extern cvar_t loadas8bit;
-extern cvar_t bgmvolume;
-extern cvar_t volume;
+extern cvar_t loadas8bit;
+extern cvar_t bgmvolume;
+extern cvar_t volume;
+extern cvar_t snd_swapstereo;
extern qboolean snd_initialized;
-extern int snd_blocked;
+extern int snd_blocked;
void S_LocalSound (char *s);
sfxcache_t *S_LoadSound (sfx_t *s);
char localmodels[MAX_MODELS][5]; // inline model names for precache
-extern cvar_t sv_deltacompress;
-
//============================================================================
/*
*/
void SV_Init (void)
{
- int i;
- extern cvar_t sv_maxvelocity;
- extern cvar_t sv_gravity;
- extern cvar_t sv_nostep;
- extern cvar_t sv_friction;
- extern cvar_t sv_edgefriction;
- extern cvar_t sv_stopspeed;
- extern cvar_t sv_maxspeed;
- extern cvar_t sv_accelerate;
- extern cvar_t sv_idealpitchscale;
- extern cvar_t sv_aim;
- extern cvar_t sv_predict;
+ int i;
Cvar_RegisterVariable (&sv_maxvelocity);
Cvar_RegisterVariable (&sv_gravity);
Cvar_RegisterVariable (&sv_predict);
Cvar_RegisterVariable (&sv_deltacompress);
- for (i=0 ; i<MAX_MODELS ; i++)
+ for (i = 0;i < MAX_MODELS;i++)
sprintf (localmodels[i], "*%i", i);
}
================
*/
-extern dfunction_t *EndFrameQC;
void SV_Physics (void)
{
int i;
edict_t *sv_player;
-extern cvar_t sv_friction;
cvar_t sv_edgefriction = {"edgefriction", "2"};
cvar_t sv_predict = {"sv_predict", "1"};
cvar_t sv_deltacompress = {"sv_deltacompress", "1"};
-extern cvar_t sv_stopspeed;
static vec3_t forward, right, up;
SV_RunClients
==================
*/
-extern dfunction_t *SV_PlayerPhysicsQC;
void SV_RunClients (void)
{
int i;
}
// to save time on transforms, choose the appropriate function
-void softwaretransform_classify()
+void softwaretransform_classify(void)
{
if (softwaretransform_offset[0] != 0 || softwaretransform_offset[1] != 0 || softwaretransform_offset[2] != 0)
{
}
}
-void softwaretransformidentity ()
+void softwaretransformidentity(void)
{
softwaretransform_offset[0] = softwaretransform_offset[1] = softwaretransform_offset[2] = softwaretransform_x[1] = softwaretransform_x[2] = softwaretransform_y[0] = softwaretransform_y[2] = softwaretransform_z[0] = softwaretransform_z[1] = 0;
softwaretransform_x[0] = softwaretransform_y[1] = softwaretransform_z[2] = 1;
#define tft_translate 1
#define tft_rotate 2
+extern vec_t softwaretransform_scale;
extern vec3_t softwaretransform_offset;
extern vec3_t softwaretransform_x;
extern vec3_t softwaretransform_y;
extern int softwaretransform_type;
extern void softwaretransformforentity (entity_t *e);
-extern void softwaretransformidentity ();
+extern void softwaretransformidentity (void);
extern void softwaretransformset (vec3_t origin, vec3_t angles, vec_t scale);
extern void (*softwaretransform) (vec3_t in, vec3_t out);
extern void softwareuntransform (vec3_t in, vec3_t out);
extern cvar_t vid_mouse;
extern cvar_t vid_fullscreen;
-void VID_InitCvars();
+void VID_InitCvars(void);
void GL_Init (void);
-void VID_CheckMultitexture();
-void VID_CheckCVA();
+void VID_CheckMultitexture(void);
+void VID_CheckCVA(void);
-void VID_Init ();
+void VID_Init (void);
// Called at startup
void VID_Shutdown (void);
Check for ARB, SGIS, or EXT multitexture support
*/
-void VID_CheckMultitexture()
+void VID_CheckMultitexture(void)
{
Con_Printf ("Checking for multitexture... ");
if (COM_CheckParm ("-nomtex"))
typedef void (GLAPIENTRY *gl3DfxSetDitherModeEXT_FUNC) (GrDitherMode_t mode);
-void VID_SetupDithering()
+void VID_SetupDithering(void)
{
Con_Printf ("Dithering: ");
return FALSE;
}
-void VID_Init()
+void VID_Init(void)
{
int i;
GLint attribs[32];
return FALSE;
}
-void VID_Init()
+void VID_Init(void)
{
int i;
int attrib[] = {
void (GLAPIENTRY *qglLockArraysEXT) (GLint first, GLint count);
void (GLAPIENTRY *qglUnlockArraysEXT) (void);
-void VID_InitCvars()
+void VID_InitCvars(void)
{
Cvar_RegisterVariable(&vid_mode);
Cvar_RegisterVariable(&vid_mouse);
IN_DeactivateMouse ();
}
-void VID_RestoreSystemGamma();
+void VID_RestoreSystemGamma(void);
void VID_Shutdown (void)
{
IN_ClearStates ();
}
-void VID_RestoreGameGamma();
+void VID_RestoreGameGamma(void);
void AppActivate(BOOL fActive, BOOL minimize)
/****************************************************************************
return i; // return success or failure
}
-void VID_RestoreGameGamma()
+void VID_RestoreGameGamma(void)
{
VID_UpdateGamma(true);
}
-void VID_GetSystemGamma()
+void VID_GetSystemGamma(void)
{
HDC hdc;
hdc = GetDC (NULL);
ReleaseDC (NULL, hdc);
}
-void VID_RestoreSystemGamma()
+void VID_RestoreSystemGamma(void)
{
HDC hdc;
hdc = GetDC (NULL);
VID_Init
===================
*/
-void VID_Init ()
+void VID_Init (void)
{
int i;
// int existingmode;
}
}
- M_Print (3*8, 36 + MODE_AREA_HEIGHT * 8 + 8*2,
- "Video modes must be set from the");
- M_Print (3*8, 36 + MODE_AREA_HEIGHT * 8 + 8*3,
- "command line with -width <width>");
- M_Print (3*8, 36 + MODE_AREA_HEIGHT * 8 + 8*4,
- "and -bpp <bits-per-pixel>");
- M_Print (3*8, 36 + MODE_AREA_HEIGHT * 8 + 8*6,
- "Select windowed mode with -window");
+ M_Print (3*8, 36 + MODE_AREA_HEIGHT * 8 + 8*2, "Video modes must be set from the");
+ M_Print (3*8, 36 + MODE_AREA_HEIGHT * 8 + 8*3, "command line with -width <width>");
+ M_Print (3*8, 36 + MODE_AREA_HEIGHT * 8 + 8*4, "and -bpp <bits-per-pixel>");
+ M_Print (3*8, 36 + MODE_AREA_HEIGHT * 8 + 8*6, "Select windowed mode with -window");
}
float v_dmg_time, v_dmg_roll, v_dmg_pitch;
-extern int in_forward, in_forward2, in_back;
-
/*
===============
==================
*/
-extern qboolean intimerefresh;
void V_CalcRefdef (void)
{
entity_t *ent, *view;