diff --git a/src/k_kart.c b/src/k_kart.c index fccb6867..36a0154a 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -5339,7 +5339,7 @@ void K_CheckSpectateStatus(void) return; if (numingame < 2 || leveltime < starttime || mapreset) // Allow if the match hasn't started yet continue; - if (leveltime > 20*TICRATE) // DON'T allow if the match is 20 seconds in + if (leveltime > (starttime + 20*TICRATE)) // DON'T allow if the match is 20 seconds in return; if (G_RaceGametype() && players[i].laps) // DON'T allow if the race is at 2 laps return; diff --git a/src/p_user.c b/src/p_user.c index 472d7c27..de5addf9 100644 --- a/src/p_user.c +++ b/src/p_user.c @@ -9150,7 +9150,7 @@ void P_PlayerThink(player_t *player) if ((netgame || splitscreen) && player->spectator && cmd->buttons & BT_ATTACK && !player->powers[pw_flashing]) { player->pflags ^= PF_WANTSTOJOIN; - //player->powers[pw_flashing] = TICRATE + 1; + player->powers[pw_flashing] = TICRATE/2 + 1; /*if (P_SpectatorJoinGame(player)) return; // player->mo was removed.*/ } diff --git a/src/st_stuff.c b/src/st_stuff.c index 45e0deb5..01bb42f5 100644 --- a/src/st_stuff.c +++ b/src/st_stuff.c @@ -1953,7 +1953,9 @@ static void ST_overlayDrawer(void) { // SRB2kart: changed positions & text V_DrawString(2, BASEVIDHEIGHT-40, V_HUDTRANSHALF|V_YELLOWMAP, M_GetText("- SPECTATING -")); - if (stplyr->pflags & PF_WANTSTOJOIN) + if (stplyr->powers[pw_flashing]) + V_DrawString(2, BASEVIDHEIGHT-30, V_HUDTRANSHALF, M_GetText("Item - . . .")); + else if (stplyr->pflags & PF_WANTSTOJOIN) V_DrawString(2, BASEVIDHEIGHT-30, V_HUDTRANSHALF, M_GetText("Item - Cancel Join")); /*else if (G_GametypeHasTeams()) V_DrawString(2, BASEVIDHEIGHT-30, V_HUDTRANSHALF, M_GetText("Item - Join Team"));*/