//----------------------------------------------------------------------------- // // $Logfile:: /Quake 2 Engine/Sin/code/game/g_main.h $ // $Revision:: 14 $ // $Author:: Aldie $ // $Date:: 11/13/98 2:35a $ // // Copyright (C) 1998 by Ritual Entertainment, Inc. // All rights reserved. // // This source is may not be distributed and/or modified without // expressly written permission by Ritual Entertainment, Inc. // // $Log:: /Quake 2 Engine/Sin/code/game/g_main.h $ // // 14 11/13/98 2:35a Aldie // Declared fixbodiesforplayer // // 13 11/09/98 12:55a Jimdose // added sv_footsteps cvar so that server admins can turn footsteps off // completely // // 12 10/27/98 9:46p Aldie // Changed training cvar to level.training // // 11 10/25/98 10:16p Aldie // Added training cvar // // 10 10/22/98 5:02p Aldie // Removed blastscale_z // // 9 10/21/98 6:42p Markd // Added sv_drawtrace // // 8 10/16/98 1:56a Jimdose // Added autosave variable to G_WriteLevel // // 7 10/11/98 8:50p Jimdose // Added LoadingServer // // 6 10/09/98 2:07a Aldie // Updated DMFLAGS // // 5 10/08/98 7:41p Jimdose // changed noexit to a dmflag // added server commands // Added ip filtering // // 4 10/08/98 12:38a Jimdose // Made savegames work // // 3 9/22/98 3:21p Markd // put in parentmode lockout for blood and gibs // // 2 8/29/98 9:49p Jimdose // created file // // 1 8/29/98 6:44p Jimdose // // DESCRIPTION: // Global header file for g_main.cpp // #ifndef __G_MAIN_H__ #define __G_MAIN_H__ #include "g_local.h" extern Vector vec_origin; extern Vector vec_zero; extern qboolean LoadingSavegame; extern qboolean LoadingServer; extern game_locals_t game; extern level_locals_t level; extern game_import_t gi; extern game_export_t globals; extern edict_t *g_edicts; extern edict_t active_edicts; extern edict_t free_edicts; extern netconsole_t *g_consoles; extern netconbuffer_t *g_conbuffers; extern netsurface_t *g_surfaces; extern cvar_t *developer; extern cvar_t *precache; extern cvar_t *maxentities; extern cvar_t *maxconsoles; extern cvar_t *deathmatch; extern cvar_t *coop; extern cvar_t *dmflags; extern cvar_t *skill; extern cvar_t *fraglimit; extern cvar_t *timelimit; extern cvar_t *filterban; extern cvar_t *flood_msgs; extern cvar_t *flood_persecond; extern cvar_t *flood_waitdelay; extern cvar_t *g_select_empty; extern cvar_t *g_unlimited_ammo; extern cvar_t *nomonsters; extern cvar_t *dialog; extern cvar_t *sv_gravity; extern cvar_t *sv_maxvelocity; extern cvar_t *sv_maxbulletholes; extern cvar_t *sv_maxbloodsplats; extern cvar_t *sv_gore; extern cvar_t *sv_gibs; extern cvar_t *sv_showdamage; extern cvar_t *sv_showdamagelocation; extern cvar_t *gun_x, *gun_y, *gun_z; extern cvar_t *sv_rollspeed; extern cvar_t *sv_rollangle; extern cvar_t *run_pitch; extern cvar_t *run_roll; extern cvar_t *bob_up; extern cvar_t *bob_pitch; extern cvar_t *bob_roll; extern cvar_t *sv_cheats; extern cvar_t *maxclients; extern cvar_t *sv_rocketspeed; extern cvar_t *sv_rocketrate; extern cvar_t *sv_stopspeed; extern cvar_t *sv_friction; extern cvar_t *sv_waterfriction; extern cvar_t *sv_waterspeed; extern cvar_t *sv_footsteps; extern cvar_t *sv_traceinfo; extern cvar_t *sv_drawtrace; extern int sv_numtraces; extern cvar_t *parentmode; extern usercmd_t *current_ucmd; #define DM_FLAG( flag ) ( deathmatch->value && ( ( int )dmflags->value & ( flag ) ) ) void G_BeginIntermission( const char *map ); void G_PutClientInServer( edict_t *ent ); void G_SaveClientData( void ); void G_MoveClientToIntermission( Entity *client ); void G_DeathmatchScoreboard( Entity *ent ); void G_DeathmatchScoreboardMessage( Entity *client, Entity *killer ); void G_WriteClient( Archiver &arc, gclient_t *client ); void G_AllocGameData( void ); extern "C" { void G_ClientEndServerFrames( void ); void G_ClientThink( edict_t *ent, usercmd_t *cmd ); qboolean G_ClientConnect( edict_t *ent, const char *userinfo ); void G_ClientUserinfoChanged( edict_t *ent, const char *userinfo ); void G_ClientDisconnect( edict_t *ent ); void G_ClientBegin( edict_t *ent, qboolean loadgame ); void G_ClientCommand( edict_t *ent ); void G_WriteGame( const char *filename, qboolean autosave ); void G_ReadGame( const char *filename ); void G_WriteLevel( const char *filename, qboolean autosave ); void G_ReadLevel( const char *filename ); void G_InitGame( void ); void G_ShutdownGame( void ); void G_RunFrame( void ); void G_ServerCommand( void ); void G_ClientThink( edict_t *ent, usercmd_t *ucmd ); void FixDeadBodiesForPlayer( edict_t *ent ); }; qboolean SV_FilterPacket( const char *from ); void SVCmd_AddIP_f( void ); void SVCmd_RemoveIP_f( void ); void SVCmd_ListIP_f( void ); void SVCmd_WriteIP_f( void ); #endif /* g_main.h */