X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Fmiscfunctions.qh;h=1dd3526dd48c435eaa00ade8bc1a0047b767079a;hb=696e813e264ec0a097c3b3921f36e7a3f7aacd27;hp=7cd8c70125fad2746935424ea3716d9af7560a4c;hpb=f2a7c3c0c62985e64a71b475c55bc974d28e0805;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/miscfunctions.qh b/qcsrc/server/miscfunctions.qh index 7cd8c7012..1dd3526dd 100644 --- a/qcsrc/server/miscfunctions.qh +++ b/qcsrc/server/miscfunctions.qh @@ -1,5 +1,7 @@ #pragma once +#include + #include #include "mutators/events.qh" @@ -32,19 +34,17 @@ float cvar_normal(string n) entity eliminatedPlayers; void EliminatedPlayers_Init(float(entity) isEliminated_func); -string admin_name(); - void write_recordmarker(entity pl, float tstart, float dt); void play2all(string samp); void play2team(float t, string filename); -void GetCvars_handleFloat(entity this, string thisname, float f, .float field, string name); +void GetCvars_handleFloat(entity this, entity store, string thisname, float f, .float field, string name); -float spamsound(entity e, float chan, string samp, float vol, float _atten); +float spamsound(entity e, float chan, Sound samp, float vol, float _atten); -void GetCvars_handleString(entity this, string thisname, float f, .string field, string name); +void GetCvars_handleString(entity this, entity store, string thisname, float f, .string field, string name); void precache_all_playermodels(string pattern); @@ -75,7 +75,7 @@ void GameLogInit(); void GameLogClose(); -void GetCvars(entity this, float f); +void GetCvars(entity this, entity store, int f); string GetMapname(); @@ -93,7 +93,7 @@ string NearestLocation(vector p); void play2(entity e, string filename); -string playername(entity p); +string playername(entity p, bool team_colorize); void precache(); @@ -160,44 +160,12 @@ float nearest_length[NUM_NEAREST_ENTITIES]; //#NO AUTOCVARS START -float g_pickup_shells; float g_pickup_shells_max; -float g_pickup_nails; float g_pickup_nails_max; -float g_pickup_rockets; float g_pickup_rockets_max; -float g_pickup_cells; float g_pickup_cells_max; -float g_pickup_plasma; float g_pickup_plasma_max; -float g_pickup_fuel; -float g_pickup_fuel_jetpack; float g_pickup_fuel_max; -float g_pickup_armorsmall; -float g_pickup_armorsmall_max; -float g_pickup_armorsmall_anyway; -float g_pickup_armormedium; -float g_pickup_armormedium_max; -float g_pickup_armormedium_anyway; -float g_pickup_armorbig; -float g_pickup_armorbig_max; -float g_pickup_armorbig_anyway; -float g_pickup_armorlarge; -float g_pickup_armorlarge_max; -float g_pickup_armorlarge_anyway; -float g_pickup_healthsmall; -float g_pickup_healthsmall_max; -float g_pickup_healthsmall_anyway; -float g_pickup_healthmedium; -float g_pickup_healthmedium_max; -float g_pickup_healthmedium_anyway; -float g_pickup_healthlarge; -float g_pickup_healthlarge_max; -float g_pickup_healthlarge_anyway; -float g_pickup_healthmega; -float g_pickup_healthmega_max; -float g_pickup_healthmega_anyway; -float g_pickup_ammo_anyway; float g_pickup_weapons_anyway; float g_weaponarena; WepSet g_weaponarena_weapons; @@ -220,6 +188,13 @@ float start_ammo_rockets; float start_ammo_cells; float start_ammo_plasma; float start_ammo_fuel; +/// \brief Number of random start weapons to give to players. +int random_start_weapons_count; +/// \brief Holds a list of possible random start weapons. +string autocvar_g_random_start_weapons; +/// \brief Entity that contains amount of ammo to give with random start +/// weapons. +entity random_start_ammo; float start_health; float start_armorvalue; WepSet warmup_start_weapons; @@ -256,6 +231,8 @@ void readlevelcvars() g_jetpack = cvar("g_jetpack"); sv_maxidle = cvar("sv_maxidle"); sv_maxidle_spectatorsareidle = cvar("sv_maxidle_spectatorsareidle"); + sv_maxidle_slots = cvar("sv_maxidle_slots"); + sv_maxidle_slots_countbots = cvar("sv_maxidle_slots_countbots"); sv_autotaunt = cvar("sv_autotaunt"); sv_taunt = cvar("sv_taunt"); @@ -310,18 +287,18 @@ void readlevelcvars() g_pickup_armorbig = cvar("g_pickup_armorbig"); g_pickup_armorbig_max = cvar("g_pickup_armorbig_max"); g_pickup_armorbig_anyway = cvar("g_pickup_armorbig_anyway"); - g_pickup_armorlarge = cvar("g_pickup_armorlarge"); - g_pickup_armorlarge_max = cvar("g_pickup_armorlarge_max"); - g_pickup_armorlarge_anyway = cvar("g_pickup_armorlarge_anyway"); + g_pickup_armormega = cvar("g_pickup_armormega"); + g_pickup_armormega_max = cvar("g_pickup_armormega_max"); + g_pickup_armormega_anyway = cvar("g_pickup_armormega_anyway"); g_pickup_healthsmall = cvar("g_pickup_healthsmall"); g_pickup_healthsmall_max = cvar("g_pickup_healthsmall_max"); g_pickup_healthsmall_anyway = cvar("g_pickup_healthsmall_anyway"); g_pickup_healthmedium = cvar("g_pickup_healthmedium"); g_pickup_healthmedium_max = cvar("g_pickup_healthmedium_max"); g_pickup_healthmedium_anyway = cvar("g_pickup_healthmedium_anyway"); - g_pickup_healthlarge = cvar("g_pickup_healthlarge"); - g_pickup_healthlarge_max = cvar("g_pickup_healthlarge_max"); - g_pickup_healthlarge_anyway = cvar("g_pickup_healthlarge_anyway"); + g_pickup_healthbig = cvar("g_pickup_healthbig"); + g_pickup_healthbig_max = cvar("g_pickup_healthbig_max"); + g_pickup_healthbig_anyway = cvar("g_pickup_healthbig_anyway"); g_pickup_healthmega = cvar("g_pickup_healthmega"); g_pickup_healthmega_max = cvar("g_pickup_healthmega_max"); g_pickup_healthmega_anyway = cvar("g_pickup_healthmega_anyway"); @@ -338,7 +315,7 @@ void readlevelcvars() if (!warmup_stage) game_starttime = time + cvar("g_start_delay"); - FOREACH(Weapons, it != WEP_Null, LAMBDA(it.wr_init(it))); + FOREACH(Weapons, it != WEP_Null, { it.wr_init(it); }); readplayerstartcvars(); } @@ -365,3 +342,6 @@ entity initialize_entity_first; float sound_allowed(float dest, entity e); void InitializeEntity(entity e, void(entity this) func, float order); + +IntrusiveList g_ctrace_changed; +STATIC_INIT(g_ctrace_changed) { g_ctrace_changed = IL_NEW(); }