- Fixed the gamerules regarding bomb defusal kills - Implemented mp_friendlyfire - Fixed cl_thirdperson cvar
196 lines
5.6 KiB
C
Executable file
196 lines
5.6 KiB
C
Executable file
/*
|
|
Copyright 2016-2018 Marco "eukara" Hladik
|
|
|
|
MIT LICENSE
|
|
|
|
Permission is hereby granted, free of charge, to any person
|
|
obtaining a copy of this software and associated documentation
|
|
files (the "Software"), to deal in the Software without
|
|
restriction, including without limitation the rights to use,
|
|
copy, modify, merge, publish, distribute, sublicense, and/or
|
|
sell copies of the Software, and to permit persons to whom the
|
|
Software is furnished to do so, subject to the following conditions:
|
|
|
|
The above copyright notice and this permission notice shall be
|
|
included in all copies or substantial portions of the Software.
|
|
|
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
|
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
|
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
|
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
|
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
|
OTHER DEALINGS IN THE SOFTWARE.
|
|
*/
|
|
|
|
#define VEC_PLAYER_VIEWPOS '0 0 20'
|
|
#define VEC_PLAYER_CVIEWPOS '0 0 12'
|
|
|
|
// Server cvars
|
|
var int autocvar_mp_winlimit = 0;
|
|
var int autocvar_mp_halftime = 0;
|
|
var int autocvar_mp_startmoney = 800;
|
|
var float autocvar_mp_buytime = 90;
|
|
var float autocvar_mp_freezetime = 6;
|
|
var float autocvar_mp_c4timer = 45;
|
|
var float autocvar_mp_roundtime = 5;
|
|
var float autocvar_mp_timelimit = 60;
|
|
var string autocvar_motdfile = "motd.txt";
|
|
var int autocvar_mp_friendlyfire = FALSE;
|
|
|
|
var int autocvar_sv_voxannounce = FALSE;
|
|
|
|
// Casual, or later CS variables
|
|
var int autocvar_mp_fillweapons = FALSE; // This will automatically get ammo for the weapon you buy
|
|
var int autocvar_mp_autoreload = FALSE; // When pressing fire and the gun is empty, it will reload instead
|
|
|
|
// New, FreeCS exclusive variables
|
|
var int autocvar_fcs_knifeonly = FALSE; // Disallows buying and spawning with weps
|
|
var int autocvar_fcs_swapteams = FALSE; // Swaps spawnpoints
|
|
var int autocvar_fcs_nopickups = FALSE; // Disable weapon items
|
|
var int autocvar_fcs_reward_kill = 300;
|
|
var int autocvar_fcs_penalty_pain = -150;
|
|
var int autocvar_fcs_penalty_kill = -1500;
|
|
var int autocvar_fcs_maxmoney = 16000;
|
|
|
|
// Mapcycle features
|
|
var string autocvar_mapcyclefile = "mapcycle.txt";
|
|
var int iMapCycleCount;
|
|
string *sMapCycle;
|
|
|
|
// Hit Group standards
|
|
enum {
|
|
BODY_DEFAULT,
|
|
BODY_HEAD,
|
|
BODY_CHEST,
|
|
BODY_STOMACH,
|
|
BODY_ARMLEFT,
|
|
BODY_ARMRIGHT,
|
|
BODY_LEGLEFT,
|
|
BODY_LEGRIGHT
|
|
};
|
|
|
|
// Grenade states
|
|
enum {
|
|
GRENADE_UNREADY,
|
|
GRENADE_PULLING,
|
|
GRENADE_READY
|
|
};
|
|
|
|
// Player specific fields
|
|
.float fInBuyZone;
|
|
.float fInHostageZone;
|
|
.float fInBombZone;
|
|
.float fMoney;
|
|
.float fStepTime;
|
|
.int iInGame;
|
|
.float fCharModel;
|
|
//.int iHasBomb;
|
|
.float fDeaths;
|
|
.int iEquipment;
|
|
.float armor;
|
|
.float fProgressBar;
|
|
|
|
// Match specific fields
|
|
int iRounds;
|
|
int iWon_T;
|
|
int iWon_CT;
|
|
int iAlivePlayers_T;
|
|
int iAlivePlayers_CT;
|
|
|
|
float fGameState;
|
|
float fGameTime;
|
|
|
|
// Weapon specific fields
|
|
.int iCurrentMag;
|
|
.int iCurrentCaliber;
|
|
.float fSlotMelee, fSlotPrimary, fSlotSecondary, fSlotGrenade;
|
|
.float fAttackFinished;
|
|
.float fRadioFinished;
|
|
.float fAccuracy;
|
|
|
|
// Game specific fields
|
|
int iHostagesMax;
|
|
int iBombZones;
|
|
int iRescueZones;
|
|
int iBuyZones;
|
|
int iVIPZones;
|
|
int iEscapeZones;
|
|
int iBuyRestriction; // For info_map_parameters
|
|
int iBombRadius; // For info_map_parameters
|
|
|
|
int iHostagesRescued;
|
|
int iBombPlanted;
|
|
|
|
// Generic entity fields
|
|
.int iUsable;
|
|
.int iBleeds;
|
|
.void( int iHitBody ) vPain;
|
|
.void( int iHitBody ) vDeath;
|
|
.float fRespawns;
|
|
.entity eUser;
|
|
.float material;
|
|
|
|
// All about +use
|
|
entity eActivator;
|
|
.void() vUse;
|
|
.int iUsable;
|
|
|
|
// GoldSrc-Rendermode Fields
|
|
.vector rendercolor;
|
|
.float rendermode;
|
|
.float renderamt;
|
|
.float alpha;
|
|
|
|
void Rules_RoundOver( int iTeamWon, int iMoneyReward, float fSilent );
|
|
float Rules_BuyingPossible( void );
|
|
void Timer_Begin( float fTime, float fMode);
|
|
void Spawn_RespawnClient( float fTeam );
|
|
void Spawn_CreateClient( float fTeam );
|
|
void Spawn_MakeSpectator( void );
|
|
void Client_SendEvent( entity eClient, float fEVType );
|
|
void Client_TriggerCamera( entity eTarget, vector vPos, vector vEndPos, float fResetTime );
|
|
|
|
void Weapon_Draw( float fWeapon );
|
|
void Weapon_SwitchBest( void );
|
|
void Weapon_UpdateCurrents( void );
|
|
void Weapon_DropWeapon( int iSlot );
|
|
float Weapon_GetAnimType( float fWeapon );
|
|
float Weapon_GetFireRate( float fWeapon );
|
|
float Weapon_GetReloadTime( float fWeapon );
|
|
void Weapon_Reload( float fWeapon );
|
|
|
|
void BaseGun_AccuracyCalc( void );
|
|
void BaseGun_Draw( void );
|
|
float BaseGun_PrimaryFire( void );
|
|
float BaseGun_Reload( void );
|
|
|
|
void BaseMelee_Draw( void );
|
|
int BaseMelee_Attack( void );
|
|
void Effect_Impact( int iType, vector vPos, vector vNormal );
|
|
void Effect_CreateSmoke( vector vPos );
|
|
void Effect_CreateExplosion( vector vPos );
|
|
void Effect_CreateFlash( entity eTarget );
|
|
|
|
void TraceAttack_FireBullets( int iShots, vector vPos );
|
|
void Damage_Radius( vector vOrigin, entity eAttacker, float fDamage, float fRadius, int iCheckClip );
|
|
void Damage_Apply( entity eTarget, entity eAttacker, int iDamage, vector vHitPos, int iSkipArmor );
|
|
|
|
void Entities_UseTargets( void );
|
|
void Entities_InitRespawnable( void() vRespawnFunc );
|
|
void Entities_Respawn( void );
|
|
|
|
void Ammo_BuyPrimary( float fFree );
|
|
void Ammo_BuySecondary( float fFree );
|
|
|
|
void Input_Handle( void );
|
|
|
|
void Animation_PlayerTop( float fFrame );
|
|
void Animation_PlayerTopTemp( float fFrame, float fTime );
|
|
void Footsteps_Update( void );
|
|
|
|
string __fullspawndata;
|
|
hashtable hashMaterials;
|
|
|
|
#define NULL __NULL__
|