diff options
Diffstat (limited to 'src/game/g_local.h')
-rw-r--r-- | src/game/g_local.h | 156 |
1 files changed, 102 insertions, 54 deletions
diff --git a/src/game/g_local.h b/src/game/g_local.h index 8c65998..2294f6f 100644 --- a/src/game/g_local.h +++ b/src/game/g_local.h @@ -53,19 +53,6 @@ typedef struct gclient_s gclient_t; #define FL_NO_HUMANS 0x00004000 // spawn point just for bots #define FL_FORCE_GESTURE 0x00008000 // spawn point just for bots -typedef struct -{ - qboolean isNB; - float Area; - float Height; -} noBuild_t; - -typedef struct -{ - gentity_t *Marker; - vec3_t Origin; -} nbMarkers_t; - // movers are things like doors, plats, buttons, etc typedef enum { @@ -256,9 +243,6 @@ struct gentity_s int lastDamageTime; int bdnumb; // buildlog entry ID - - // For nobuild! - noBuild_t noBuild; }; typedef enum @@ -319,8 +303,8 @@ typedef struct spectatorState_t spectatorState; int spectatorClient; // for chasecam and follow mode int wins, losses; // tournament stats - qboolean invisible; // for being invisible on the server - ghosts! qboolean teamLeader; // true when this client is a team leader + qboolean invisible; // for being invisible on the server - ghosts! clientList_t ignoreList; } clientSession_t; @@ -356,11 +340,13 @@ typedef struct short headshots; int hits; int hitslocational; + short spreekills; + short spreefeeds; + int spreebleeds; short teamkills; int dretchbasytime; int jetpackusewallwalkusetime; int timeLastViewed; - int AllstatstimeLastViewed; } statsCounters_t; typedef struct @@ -426,11 +412,11 @@ typedef struct int lastFloodTime; // level.time of last flood-limited command int floodDemerits; // number of flood demerits accumulated - char lastMessage[ MAX_SAY_TEXT ]; // last message said by this player - int lastMessageTime; // level.time of last message said by this player + int vampireSuckFraction; - int lastTeamKillTime; // level.time of last team kill - int teamKillDemerits; // number of team kill demerits accumulated + int spreeTime1000; + qboolean bleeder; + int bleederLastWarn; vec3_t lastDeathLocation; char guid[ 33 ]; @@ -446,6 +432,9 @@ typedef struct int adminLevel; char adminName[ MAX_NETNAME ]; qboolean designatedBuilder; + char chat[ CHAT_MAXCHAN ][ CHAT_MAXPASS ]; + int karma; + int bubbleTime; qboolean firstConnect; // This is the first map since connect qboolean useUnlagged; statsCounters_t statscounters; @@ -615,6 +604,7 @@ typedef struct armourRegion_s typedef enum { TW_NOT = 0, + TW_SOON, TW_IMMINENT, TW_PASSED } timeWarning_t; @@ -633,6 +623,7 @@ typedef struct buildHistory_s buildHistory_t; struct buildHistory_s { int ID; // persistent ID to aid in specific reverting + int time; // time the event occured gentity_t *ent; // who, NULL if they've disconnected (or aren't an ent) char name[ MAX_NETNAME ]; // who, saves name if ent is NULL int buildable; // what @@ -702,6 +693,7 @@ typedef struct char teamVoteString[ 2 ][ MAX_STRING_CHARS ]; char teamVoteDisplayString[ 2 ][ MAX_STRING_CHARS ]; int teamVoteTime[ 2 ]; // level.time vote was called + int teamVotePassThreshold[ 2 ]; int teamVoteYes[ 2 ]; int teamVoteNo[ 2 ]; int numteamVotingClients[ 2 ]; // set by CalculateRanks @@ -747,6 +739,14 @@ typedef struct int humanBuildPoints; int humanBuildPointsPowered; + int alienRecoverBuildPoints; + int alienRecoverTime; + int humanRecoverBuildPoints; + int humanRecoverTime; + + int defaultAlienBuildPoints; + int defaultHumanBuildPoints; + gentity_t *markedBuildables[ MAX_GENTITIES ]; int numBuildablesForRemoval; @@ -769,6 +769,10 @@ typedef struct timeWarning_t timelimitWarning; int extend_vote_count; + int vampireDeath; + int vampireDeathBeginTime; + timeWarning_t vampireDeathWarning; + spawnQueue_t alienSpawnQueue; spawnQueue_t humanSpawnQueue; @@ -789,6 +793,8 @@ typedef struct int pause_ff; int pause_ffb; + int bleeders; + int lastCreditedAlien; int lastCreditedHuman; @@ -807,12 +813,6 @@ typedef struct statsCounters_level alienStatsCounters; statsCounters_level humanStatsCounters; - - qboolean noBuilding; - float nbArea; - float nbHeight; - - nbMarkers_t nbMarkers[ MAX_GENTITIES ]; } level_locals_t; #define CMD_CHEAT 0x01 @@ -863,6 +863,9 @@ void G_LeaveTeam( gentity_t *self ); void G_ChangeTeam( gentity_t *ent, pTeam_t newTeam ); void G_SanitiseString( char *in, char *out, int len ); void G_PrivateMessage( gentity_t *ent ); +void Cmd_Join_f( gentity_t *ent ); +void Cmd_Part_f( gentity_t *ent ); +void Cmd_Channel_f( gentity_t *ent ); char *G_statsString( statsCounters_t *sc, pTeam_t *pt ); void Cmd_Share_f( gentity_t *ent ); void Cmd_Donate_f( gentity_t *ent ); @@ -871,7 +874,6 @@ void Cmd_Builder_f( gentity_t *ent ); void G_WordWrap( char *buffer, int maxwidth ); void G_CP( gentity_t *ent ); qboolean G_IsMuted( gclient_t *ent ); -qboolean G_TeamKill_Repent( gentity_t *ent ); // // g_physics.c @@ -919,8 +921,11 @@ qboolean G_IsPowered( vec3_t origin ); qboolean G_IsDCCBuilt( void ); qboolean G_IsOvermindBuilt( void ); +void G_RecoverBuildPoints( gentity_t *self ); + void G_BuildableThink( gentity_t *ent, int msec ); qboolean G_BuildableRange( vec3_t origin, float r, buildable_t buildable ); +float G_BuildableRangeClosest( vec3_t origin, float r, buildable_t buildable ); itemBuildError_t G_CanBuild( gentity_t *ent, buildable_t buildable, int distance, vec3_t origin ); qboolean G_BuildingExists( int bclass ) ; qboolean G_BuildIfValid( gentity_t *ent, buildable_t buildable ); @@ -941,8 +946,16 @@ qboolean G_RevertCanFit( buildHistory_t *bh ); int G_LogBuild( buildHistory_t *new ); int G_CountBuildLog( void ); char *G_FindBuildLogName( int id ); -void G_NobuildSave( void ); -void G_NobuildLoad( void ); + +void nobuild_init( void ); +void nobuild_add( gentity_t *ent ); +void nobuild_del( gentity_t *ent ); +void nobuild_command( gentity_t *ent, qboolean next_zone, qboolean next_type, float size ); +void nobuild_set( qboolean enable, gentity_t *ent ); +void nobuild_save( void ); +void nobuild_go( gentity_t *ent ); +void nobuild_list( gentity_t *ent ); +int nobuild_check( vec3_t origin ); // // g_utils.c @@ -1131,7 +1144,6 @@ void QDECL G_LogPrintf( const char *fmt, ... ); void QDECL G_LogPrintfColoured( const char *fmt, ... ); void QDECL G_LogOnlyPrintf( const char *fmt, ... ); void QDECL G_AdminsPrintf( const char *fmt, ... ); -void QDECL G_WarningsPrintf( char *flag, const char *fmt, ... ); void QDECL G_LogOnlyPrintf( const char *fmt, ... ); void SendScoreboardMessageToAllClients( void ); void QDECL G_Printf( const char *fmt, ... ); @@ -1140,6 +1152,7 @@ void CheckVote( void ); void CheckTeamVote( int teamnum ); void LogExit( const char *string ); int G_TimeTilSuddenDeath( void ); +int G_TimeTilVampireDeath( void ); void CheckMsgTimer( void ); qboolean G_Flood_Limited( gentity_t *ent ); @@ -1205,8 +1218,7 @@ typedef enum MCV_RANDOM, MCV_NUMCLIENTS, MCV_LASTWIN, - MCV_VOTE, - MCV_SELECTEDRANDOM + MCV_VOTE } mapConditionVariable_t; typedef enum @@ -1268,6 +1280,7 @@ qboolean G_AdvanceMapRotation( void ); qboolean G_StartMapRotation( char *name, qboolean changeMap ); void G_StopMapRotation( void ); qboolean G_MapRotationActive( void ); +qboolean G_CurrentMapIsRotation( void ); void G_InitMapRotations( void ); qboolean G_MapExists( char *name ); int G_GetCurrentMap( int rotation ); @@ -1277,7 +1290,6 @@ qboolean G_IntermissionMapVoteWinner( void ); void G_IntermissionMapVoteMessage( gentity_t *ent ); void G_IntermissionMapVoteMessageAll( void ); void G_IntermissionMapVoteCommand( gentity_t *ent, qboolean next, qboolean choose ); -static qboolean G_GetRandomMap( char *name, int size, int rotation, int map ); // // g_ptr.c @@ -1296,6 +1308,11 @@ extern gentity_t g_entities[ MAX_GENTITIES ]; #define FOFS(x) ((int)&(((gentity_t *)0)->x)) +//spree values +#define SPREE_FEED_VALUE 120 +#define SPREE_FEED_FADE 3 +#define SPREE_FEED_DELAY 50 + extern vmCvar_t g_dedicated; extern vmCvar_t g_cheats; extern vmCvar_t g_maxclients; // allow this many total, including spectators @@ -1307,11 +1324,16 @@ extern vmCvar_t g_minNameChangePeriod; extern vmCvar_t g_maxNameChanges; extern vmCvar_t g_newbieNumbering; extern vmCvar_t g_newbieNamePrefix; +extern vmCvar_t g_newbieNoBuild; +extern vmCvar_t g_newbieNoBuildMessage; extern vmCvar_t g_timelimit; extern vmCvar_t g_suddenDeathTime; extern vmCvar_t g_suddenDeath; extern vmCvar_t g_suddenDeathMode; +extern vmCvar_t g_vampireDeathTime; +extern vmCvar_t g_vampireDeath; +extern vmCvar_t g_vampireDeathInfo; extern vmCvar_t g_friendlyFire; extern vmCvar_t g_friendlyFireHumans; extern vmCvar_t g_friendlyFireAliens; @@ -1325,6 +1347,7 @@ extern vmCvar_t g_speed; extern vmCvar_t g_knockback; extern vmCvar_t g_quadfactor; extern vmCvar_t g_inactivity; +extern vmCvar_t g_inactivityMode; extern vmCvar_t g_debugMove; extern vmCvar_t g_debugAlloc; extern vmCvar_t g_debugDamage; @@ -1339,6 +1362,7 @@ extern vmCvar_t g_blood; extern vmCvar_t g_allowVote; extern vmCvar_t g_requireVoteReasons; extern vmCvar_t g_voteLimit; +extern vmCvar_t g_pollVotes; extern vmCvar_t g_suddenDeathVotePercent; extern vmCvar_t g_suddenDeathVoteDelay; extern vmCvar_t g_extendVotesPercent; @@ -1357,13 +1381,12 @@ extern vmCvar_t g_customVote8; extern vmCvar_t g_customVotePercent; extern vmCvar_t g_mapVotesPercent; extern vmCvar_t g_mapRotationVote; -extern vmCvar_t g_extendVotesPercent; -extern vmCvar_t g_extendVotesTime; -extern vmCvar_t g_extendVotesCount; extern vmCvar_t g_readyPercent; extern vmCvar_t g_designateVotes; extern vmCvar_t g_teamAutoJoin; extern vmCvar_t g_teamForceBalance; +extern vmCvar_t g_popularMaps; +extern vmCvar_t g_popularMapsVotePercent; extern vmCvar_t g_banIPs; extern vmCvar_t g_filterBan; extern vmCvar_t g_smoothClients; @@ -1396,6 +1419,9 @@ extern vmCvar_t g_unlagged; extern vmCvar_t g_disabledEquipment; extern vmCvar_t g_disabledClasses; extern vmCvar_t g_disabledBuildables; +extern vmCvar_t g_buildPointsRecoverRate; +extern vmCvar_t g_dynamicBuildPoints; +extern vmCvar_t g_instantBuild; extern vmCvar_t g_markDeconstruct; extern vmCvar_t g_markDeconstructMode; @@ -1405,12 +1431,13 @@ extern vmCvar_t g_debugMapRotation; extern vmCvar_t g_currentMapRotation; extern vmCvar_t g_currentMap; extern vmCvar_t g_nextMap; +extern vmCvar_t g_idleMapSwitch; extern vmCvar_t g_initialMapRotation; extern vmCvar_t g_chatTeamPrefix; +extern vmCvar_t g_sayAreaRange; extern vmCvar_t g_actionPrefix; extern vmCvar_t g_floodMaxDemerits; extern vmCvar_t g_floodMinTime; -extern vmCvar_t g_spamTime; extern vmCvar_t g_shove; @@ -1426,27 +1453,39 @@ extern vmCvar_t g_adminSayFilter; extern vmCvar_t g_adminNameProtect; extern vmCvar_t g_adminTempMute; extern vmCvar_t g_adminTempBan; +extern vmCvar_t g_adminBanRepeatKicks; extern vmCvar_t g_adminMaxBan; extern vmCvar_t g_adminTempSpec; extern vmCvar_t g_adminMapLog; +extern vmCvar_t g_adminRegisterLevel; +extern vmCvar_t g_adminRegisterAdminPass; +extern vmCvar_t g_adminRegisterAdminLevel; extern vmCvar_t g_minLevelToJoinTeam; -extern vmCvar_t g_minDeconLevel; -extern vmCvar_t g_minDeconAffectsMark; extern vmCvar_t g_forceAutoSelect; extern vmCvar_t g_minLevelToSpecMM1; extern vmCvar_t g_banNotice; +extern vmCvar_t g_karma; +extern vmCvar_t g_chat; +extern vmCvar_t g_adminExpireTime; extern vmCvar_t g_devmapKillerHP; extern vmCvar_t g_killerHP; +extern vmCvar_t g_maxGhosts; + extern vmCvar_t g_privateMessages; -extern vmCvar_t g_fullIgnore; extern vmCvar_t g_decolourLogfiles; extern vmCvar_t g_publicSayadmins; extern vmCvar_t g_myStats; extern vmCvar_t g_teamStatus; extern vmCvar_t g_antiSpawnBlock; +extern vmCvar_t g_killingSpree; +extern vmCvar_t g_feedingSpree; +extern vmCvar_t g_bleedingSpree; +extern vmCvar_t g_bleedingSpreeKick; +extern vmCvar_t g_autoRevert; + extern vmCvar_t g_dretchPunt; extern vmCvar_t g_devmapNoGod; @@ -1458,6 +1497,11 @@ extern vmCvar_t g_slapDamage; extern vmCvar_t g_voteMinTime; extern vmCvar_t g_mapvoteMaxTime; extern vmCvar_t g_votableMaps; +extern vmCvar_t g_defeatVoteMinTime; + +extern vmCvar_t g_practiceText; +extern vmCvar_t g_practiceCount; +extern vmCvar_t g_freeCredits; extern vmCvar_t g_msg; extern vmCvar_t g_msgTime; @@ -1466,23 +1510,27 @@ extern vmCvar_t g_welcomeMsgTime; extern vmCvar_t g_buildLogMaxLength; -extern vmCvar_t g_AllStats; -extern vmCvar_t g_AllStatsTime; +extern vmCvar_t g_turretAim; + +extern vmCvar_t g_modBuildableHealth; // Buildable health +extern vmCvar_t g_modBuildableSpeed; // Buildable fire rate +extern vmCvar_t g_modBuildableCount; // Number of OMs/RCs allowed +extern vmCvar_t g_modHumanStamina; // Human stamina +extern vmCvar_t g_modHumanHealth; // Human health +extern vmCvar_t g_modAlienHealth; // Alien health +extern vmCvar_t g_modAlienRegenRange; // Alien regen rate is based on distance from base +extern vmCvar_t g_modHumanRate; // Human fire rate +extern vmCvar_t g_modAlienRate; // Alien fire rate +extern vmCvar_t g_modWeaponAmmo; // Weapon ammo per clip +extern vmCvar_t g_modWeaponReload; // Weapon reload time +extern vmCvar_t g_modTurretAngle; // Allow high turret build angles +extern vmCvar_t g_modStage3Strength; // Alter stage 3 buildables +extern vmCvar_t g_modMainStrength; // Damage/range modifier for Reactor and Overmind extern vmCvar_t mod_jetpackFuel; extern vmCvar_t mod_jetpackConsume; extern vmCvar_t mod_jetpackRegen; -extern vmCvar_t g_adminExpireTime; - -extern vmCvar_t g_autoGhost; - -extern vmCvar_t g_teamKillThreshold; - -extern vmCvar_t g_aimbotAdvertBan; -extern vmCvar_t g_aimbotAdvertBanTime; -extern vmCvar_t g_aimbotAdvertBanReason; - void trap_Printf( const char *fmt ); void trap_Error( const char *fmt ); int trap_Milliseconds( void ); |