X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fcommon%2Fstate.qc;h=14b22e991cceed2ad0bccdd2222ee899fbcab040;hb=59d3684c3ce95d95c6d3f14e6fc5567a2e6ff2ba;hp=2e3a262a59e9662c2456e77a7277f2cb9bd9acef;hpb=b9998b31fc75c66b601e66241350b10ca694809f;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/common/state.qc b/qcsrc/common/state.qc index 2e3a262a5..14b22e991 100644 --- a/qcsrc/common/state.qc +++ b/qcsrc/common/state.qc @@ -1,10 +1,13 @@ #include "state.qh" -void Inventory_new(entity this); +void Inventory_new(PlayerState this); void Inventory_delete(entity this); void PlayerState_attach(entity this) { + if (PS(this) && PS(this).m_client == this) + return; + this._ps = NEW(PlayerState, this); Inventory_new(PS(this)); @@ -38,8 +41,6 @@ void ClientState_attach(entity this) { this._cs = NEW(ClientState, this); - GetCvars(this, CS(this), 0); // get other cvars from player - // TODO: fold all of these into ClientState DecodeLevelParms(this); @@ -68,12 +69,11 @@ void ClientState_detach(entity this) PlayerScore_Detach(this); // what ^they^ said W_HitPlotClose(this); ClientData_Detach(this); + entcs_detach(this); delete(CS(this)); this._cs = NULL; - bot_clientdisconnect(this); anticheat_report_to_eventlog(this); - entcs_detach(this); }