X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Fclient.qh;h=8f7b9c4f3224be1655e2b73cdaa5553e62f7957f;hb=812dd3215ba88d7bcd2b38b9c4acd19d84a5152b;hp=1197ee3610fb44f1cb243c44aa03937940e14083;hpb=197cc4ea2785421d6898d14050e056ad44efca41;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/client.qh b/qcsrc/server/client.qh index 1197ee361..8f7b9c4f3 100644 --- a/qcsrc/server/client.qh +++ b/qcsrc/server/client.qh @@ -2,6 +2,7 @@ #include "utils.qh" #include +//#include #include #include @@ -33,7 +34,8 @@ bool autocvar_g_nodepthtestplayers; string autocvar_g_mutatormsg; float autocvar_sv_foginterval; float autocvar_sv_maxidle; -float autocvar_sv_maxidle_playertospectator; +int autocvar_sv_maxidle_minplayers = 2; +float autocvar_sv_maxidle_playertospectator = 60; bool autocvar_sv_maxidle_alsokickspectators; int autocvar_sv_maxidle_slots; bool autocvar_sv_maxidle_slots_countbots; @@ -210,12 +212,11 @@ CLASS(Client, Object) ATTRIB(Client, cvar_cl_clippedspectating, bool, this.cvar_cl_clippedspectating); ATTRIB(Client, cvar_cl_autoscreenshot, int, this.cvar_cl_autoscreenshot); ATTRIB(Client, cvar_cl_jetpack_jump, bool, this.cvar_cl_jetpack_jump); - ATTRIB(Client, cvar_cl_newusekeysupported, bool, this.cvar_cl_newusekeysupported); ATTRIB(Client, cvar_cl_noantilag, bool, this.cvar_cl_noantilag); ATTRIB(Client, cvar_cl_movement_track_canjump, bool, this.cvar_cl_movement_track_canjump); ATTRIB(Client, cvar_cl_weaponimpulsemode, int, this.cvar_cl_weaponimpulsemode); ATTRIB(Client, cvar_g_xonoticversion, string, this.cvar_g_xonoticversion); - ATTRIB(Client, autoswitch, bool, this.autoswitch); + ATTRIB(Client, cvar_cl_autoswitch, bool, this.cvar_cl_autoswitch); ATTRIB(Client, cvar_cl_casings, bool, this.cvar_cl_casings); ATTRIB(Client, cvar_r_drawviewmodel, bool, this.cvar_r_drawviewmodel); ATTRIB(Client, cvar_cl_dodging_timeout, float, this.cvar_cl_dodging_timeout); @@ -275,9 +276,6 @@ CLASS(Player, Client) ATTRIB(Player, dual_weapons, vector, this.dual_weapons); // TODO: actually WepSet! ATTRIB(Player, itemkeys, int, this.itemkeys); ATTRIB(Player, ballistics_density, float, this.ballistics_density); - ATTRIB(Player, prevstrengthsound, float, this.prevstrengthsound); - ATTRIB(Player, prevstrengthsoundattempt, float, this.prevstrengthsoundattempt); - ATTRIB(Player, buff_shield, float, this.buff_shield); INIT(Player) { this.classname = STR_PLAYER; @@ -378,13 +376,16 @@ STATIC_INIT(g_initforplayer) { g_initforplayer = IL_NEW(); } void play_countdown(entity this, float finished, Sound samp); void player_powerups_remove_all(entity this); -void RotRegen(entity this, float current, float regenstable, float regenfactor, float regenlinear, float regenframetime, float rotstable, float rotfactor, float rotlinear, float rotframetime, float limit_mod); +// NOTE: current type is Resource (avoiding circular includes!) +void RotRegen(entity this, entity current, float limit_mod, + float regenstable, float regenfactor, float regenlinear, float regenframetime, + float rotstable, float rotfactor, float rotlinear, float rotframetime); bool Spectate(entity this, entity pl); void ClientInit_Spawn(); -void PutObserverInServer(entity this); +void PutObserverInServer(entity this, bool is_forced); void SetSpectatee(entity this, entity spectatee); void SetSpectatee_status(entity this, int spectatee_num);