diff --git a/source/src/clientgame.cpp b/source/src/clientgame.cpp index 718b6826..ee465f3f 100644 --- a/source/src/clientgame.cpp +++ b/source/src/clientgame.cpp @@ -1669,7 +1669,7 @@ void spectate() void setfollowplayer(int cn) { // silently ignores invalid player-cn value passed - if(players.inrange(cn)) + if(players.inrange(cn) && players[cn]) { if(!(m_teammode && !watchingdemo && team_base(players[cn]->team) != team_base(player1->team))) { diff --git a/source/src/renderhud.cpp b/source/src/renderhud.cpp index eb35a04e..6efb5af6 100644 --- a/source/src/renderhud.cpp +++ b/source/src/renderhud.cpp @@ -864,7 +864,8 @@ void gl_drawhud(int w, int h, int curfps, int nquads, int curvert, bool underwat if (targetplayer) strcpy(lastseen, targetplayer->name); bool menu = menuvisible(); bool command = getcurcommand() ? true : false; - if((p->state==CS_ALIVE || p->state==CS_EDITING) && !p->weaponsel->reloading) + bool reloading = lastmillis < p->weaponsel->reloading + p->weaponsel->info.reloadtime; + if((p->state==CS_ALIVE || p->state==CS_EDITING) && !reloading) { bool drawteamwarning = crosshairteamsign && targetplayer && isteam(targetplayer->team, p->team) && targetplayer->state==CS_ALIVE; p->weaponsel->renderaimhelp(drawteamwarning);