From fe15dc19e064f8ea7686d65b745e0af0e1c644fe Mon Sep 17 00:00:00 2001 From: mittorn Date: Mon, 30 Jul 2018 03:53:23 +0700 Subject: [PATCH] Restore FL_SPECTATOR --- dlls/coop.cpp | 2 +- dlls/multiplay_gamerules.cpp | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/dlls/coop.cpp b/dlls/coop.cpp index 4a1d9cd1..eaec0d6e 100644 --- a/dlls/coop.cpp +++ b/dlls/coop.cpp @@ -217,7 +217,7 @@ void UTIL_BecomeSpectator( CBasePlayer *pPlayer ) { //pPlayer->m_bDoneFirstSpawn = true; pPlayer->pev->takedamage = DAMAGE_NO; - //pPlayer->pev->flags |= FL_SPECTATOR; + pPlayer->pev->flags |= FL_SPECTATOR; pPlayer->pev->flags |= FL_NOTARGET; pPlayer->pev->effects |= EF_NODRAW; pPlayer->pev->solid = SOLID_NOT; diff --git a/dlls/multiplay_gamerules.cpp b/dlls/multiplay_gamerules.cpp index 51a648d0..c6172843 100644 --- a/dlls/multiplay_gamerules.cpp +++ b/dlls/multiplay_gamerules.cpp @@ -627,7 +627,6 @@ void CHalfLifeMultiplay::PlayerSpawn( CBasePlayer *pPlayer ) if( pPlayer->gravgunmod_data.m_state == STATE_UNINITIALIZED ) { ClientPutInServer( pPlayer->edict() ); - UTIL_BecomeSpectator( pPlayer ); return; } @@ -639,7 +638,7 @@ void CHalfLifeMultiplay::PlayerSpawn( CBasePlayer *pPlayer ) return; } - if( mp_coop_changelevel.value && pPlayer->gravgunmod_data.m_state == STATE_POINT_SELECT && !pPlayer->IsObserver() ) + if( mp_coop_changelevel.value && pPlayer->gravgunmod_data.m_state == STATE_POINT_SELECT && !(pPlayer->pev->flags & FL_SPECTATOR) ) { pPlayer->RemoveAllItems( TRUE ); UTIL_BecomeSpectator( pPlayer );