From 8e9073f11f96868baf173dbf6be07d00193fd202 Mon Sep 17 00:00:00 2001 From: Zippy_Zolton Date: Sun, 10 Jan 2021 21:55:25 -0600 Subject: [PATCH 01/14] CR_PTERABYTE tweaks --- src/p_user.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/p_user.c b/src/p_user.c index a70dceb8b..27e1498da 100644 --- a/src/p_user.c +++ b/src/p_user.c @@ -12774,13 +12774,13 @@ void P_PlayerAfterThink(player_t *player) if (!ptera->movefactor) goto dropoff; - if (ptera->cusval >= 50) + if (ptera->cusval >= 30) { player->powers[pw_carry] = CR_NONE; P_SetTarget(&player->mo->tracer, NULL); P_KillMobj(ptera, player->mo, player->mo, 0); player->mo->momz = 9*FRACUNIT; - player->pflags |= PF_APPLYAUTOBRAKE|PF_JUMPED|PF_THOKKED; + player->pflags |= PF_APPLYAUTOBRAKE|PF_JUMPED; P_SetMobjState(player->mo, S_PLAY_ROLL); break; } From 058b681660cc002e470a087f37a74fa8ca20cd93 Mon Sep 17 00:00:00 2001 From: Zippy_Zolton Date: Sun, 10 Jan 2021 22:01:41 -0600 Subject: [PATCH 02/14] P_SetObjectMomz --- src/p_user.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/p_user.c b/src/p_user.c index 27e1498da..be16a03cc 100644 --- a/src/p_user.c +++ b/src/p_user.c @@ -12779,7 +12779,7 @@ void P_PlayerAfterThink(player_t *player) player->powers[pw_carry] = CR_NONE; P_SetTarget(&player->mo->tracer, NULL); P_KillMobj(ptera, player->mo, player->mo, 0); - player->mo->momz = 9*FRACUNIT; + P_SetObjectMomZ(player->mo, 9*FRACUNIT, false); player->pflags |= PF_APPLYAUTOBRAKE|PF_JUMPED; P_SetMobjState(player->mo, S_PLAY_ROLL); break; From 1917155adf2a70f867d51e650a7be9bb53d68fb5 Mon Sep 17 00:00:00 2001 From: Zippy_Zolton Date: Mon, 11 Jan 2021 00:19:56 -0600 Subject: [PATCH 03/14] PF_THOKKED --- src/p_user.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/p_user.c b/src/p_user.c index be16a03cc..f5b44d494 100644 --- a/src/p_user.c +++ b/src/p_user.c @@ -12780,7 +12780,7 @@ void P_PlayerAfterThink(player_t *player) P_SetTarget(&player->mo->tracer, NULL); P_KillMobj(ptera, player->mo, player->mo, 0); P_SetObjectMomZ(player->mo, 9*FRACUNIT, false); - player->pflags |= PF_APPLYAUTOBRAKE|PF_JUMPED; + player->pflags |= PF_APPLYAUTOBRAKE|PF_JUMPED|PF_THOKKED; P_SetMobjState(player->mo, S_PLAY_ROLL); break; } From 129ac4633c61752d3107f04cd6ae40001cb78377 Mon Sep 17 00:00:00 2001 From: Zippy_Zolton Date: Mon, 11 Jan 2021 13:25:42 -0600 Subject: [PATCH 04/14] Increased launch height --- src/p_user.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/p_user.c b/src/p_user.c index f5b44d494..7e61c91fa 100644 --- a/src/p_user.c +++ b/src/p_user.c @@ -12779,7 +12779,7 @@ void P_PlayerAfterThink(player_t *player) player->powers[pw_carry] = CR_NONE; P_SetTarget(&player->mo->tracer, NULL); P_KillMobj(ptera, player->mo, player->mo, 0); - P_SetObjectMomZ(player->mo, 9*FRACUNIT, false); + P_SetObjectMomZ(player->mo, 16*FRACUNIT, false); player->pflags |= PF_APPLYAUTOBRAKE|PF_JUMPED|PF_THOKKED; P_SetMobjState(player->mo, S_PLAY_ROLL); break; From 216f227539b0b9456eae1a55c8f9f89e19cd533d Mon Sep 17 00:00:00 2001 From: Zippy_Zolton Date: Wed, 13 Jan 2021 12:03:02 -0600 Subject: [PATCH 05/14] 12 --- src/p_user.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/p_user.c b/src/p_user.c index 7e61c91fa..3fdbe4d8f 100644 --- a/src/p_user.c +++ b/src/p_user.c @@ -12779,7 +12779,7 @@ void P_PlayerAfterThink(player_t *player) player->powers[pw_carry] = CR_NONE; P_SetTarget(&player->mo->tracer, NULL); P_KillMobj(ptera, player->mo, player->mo, 0); - P_SetObjectMomZ(player->mo, 16*FRACUNIT, false); + P_SetObjectMomZ(player->mo, 12*FRACUNIT, false); player->pflags |= PF_APPLYAUTOBRAKE|PF_JUMPED|PF_THOKKED; P_SetMobjState(player->mo, S_PLAY_ROLL); break; From f70491b2b58c3a48857602d5004b09c70224ed48 Mon Sep 17 00:00:00 2001 From: Vincent Robinson Date: Mon, 4 Oct 2021 12:20:15 -0700 Subject: [PATCH 06/14] Make linedef 96 apply to tags from 97-99, but not to itself --- src/p_setup.c | 77 ++++++++++++++++++++++++++++----------------------- 1 file changed, 42 insertions(+), 35 deletions(-) diff --git a/src/p_setup.c b/src/p_setup.c index 588815aee..7f9674e4e 100644 --- a/src/p_setup.c +++ b/src/p_setup.c @@ -3046,48 +3046,55 @@ static void P_AddBinaryMapTags(void) { size_t i; - for (i = 0; i < numlines; i++) - { - // 96: Apply Tag to Tagged Sectors + for (i = 0; i < numlines; i++) { // 97: Apply Tag to Front Sector // 98: Apply Tag to Back Sector // 99: Apply Tag to Front and Back Sectors - if (lines[i].special == 96) { - size_t j; - mtag_t tag = Tag_FGet(&lines[i].frontsector->tags); - mtag_t target_tag = Tag_FGet(&lines[i].tags); - mtag_t offset_tags[4]; - memset(offset_tags, 0, sizeof(mtag_t)*4); - if (lines[i].flags & ML_EFFECT6) { - offset_tags[0] = (INT32)sides[lines[i].sidenum[0]].textureoffset / FRACUNIT; - offset_tags[1] = (INT32)sides[lines[i].sidenum[0]].rowoffset / FRACUNIT; - } - if (lines[i].flags & ML_TFERLINE) { - offset_tags[2] = (INT32)sides[lines[i].sidenum[1]].textureoffset / FRACUNIT; - offset_tags[3] = (INT32)sides[lines[i].sidenum[1]].rowoffset / FRACUNIT; - } + if (lines[i].special == 97 || lines[i].special == 99) + P_AddBinaryMapTagsFromLine(lines[i].frontsector, &lines[i]); + if (lines[i].special == 98 || lines[i].special == 99) + P_AddBinaryMapTagsFromLine(lines[i].backsector, &lines[i]); + } - for (j = 0; j < numsectors; j++) { - boolean matches_target_tag = target_tag && Tag_Find(§ors[j].tags, target_tag); - size_t k; for (k = 0; k < 4; k++) { - if (lines[i].flags & ML_EFFECT5) { - if (matches_target_tag || (offset_tags[k] && Tag_Find(§ors[j].tags, offset_tags[k]))) { - Tag_Add(§ors[j].tags, tag); - break; - } - } else if (matches_target_tag) { - if (k == 0) - Tag_Add(§ors[j].tags, tag); - if (offset_tags[k]) - Tag_Add(§ors[j].tags, offset_tags[k]); + // Run this loop after the 97-99 loop to ensure that 96 can search through all of the + // 97-99-applied tags. + for (i = 0; i < numlines; i++) { + size_t j; + mtag_t tag, target_tag; + mtag_t offset_tags[4]; + + // 96: Apply Tag to Tagged Sectors + if (lines[i].special != 96) + continue; + + tag = Tag_FGet(&lines[i].frontsector->tags); + target_tag = Tag_FGet(&lines[i].tags); + memset(offset_tags, 0, sizeof(mtag_t)*4); + if (lines[i].flags & ML_EFFECT6) { + offset_tags[0] = (INT32)sides[lines[i].sidenum[0]].textureoffset / FRACUNIT; + offset_tags[1] = (INT32)sides[lines[i].sidenum[0]].rowoffset / FRACUNIT; + } + if (lines[i].flags & ML_TFERLINE) { + offset_tags[2] = (INT32)sides[lines[i].sidenum[1]].textureoffset / FRACUNIT; + offset_tags[3] = (INT32)sides[lines[i].sidenum[1]].rowoffset / FRACUNIT; + } + + for (j = 0; j < numsectors; j++) { + boolean matches_target_tag = target_tag && Tag_Find(§ors[j].tags, target_tag); + size_t k; + for (k = 0; k < 4; k++) { + if (lines[i].flags & ML_EFFECT5) { + if (matches_target_tag || (offset_tags[k] && Tag_Find(§ors[j].tags, offset_tags[k]))) { + Tag_Add(§ors[j].tags, tag); + break; } + } else if (matches_target_tag) { + if (k == 0) + Tag_Add(§ors[j].tags, tag); + if (offset_tags[k]) + Tag_Add(§ors[j].tags, offset_tags[k]); } } - } else { - if (lines[i].special == 97 || lines[i].special == 99) - P_AddBinaryMapTagsFromLine(lines[i].frontsector, &lines[i]); - if (lines[i].special == 98 || lines[i].special == 99) - P_AddBinaryMapTagsFromLine(lines[i].backsector, &lines[i]); } } } From fdc825721f5f2961e29defb52f32de69c870f7bc Mon Sep 17 00:00:00 2001 From: spherallic Date: Sun, 5 Dec 2021 12:47:20 +0100 Subject: [PATCH 07/14] some hud fixes, by Confusion --- src/hu_stuff.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/hu_stuff.c b/src/hu_stuff.c index f4c5e4c3b..3107057a1 100644 --- a/src/hu_stuff.c +++ b/src/hu_stuff.c @@ -2472,7 +2472,7 @@ static void HU_Draw32TeamTabRankings(playersort_t *tab, INT32 whiteplayer) if (!players[tab[i].num].quittime || (leveltime / (TICRATE/2) & 1)) V_DrawString(x + 10, y, ((tab[i].num == whiteplayer) ? V_YELLOWMAP : 0) - | (greycheck ? 0 : V_TRANSLUCENT) + | (greycheck ? V_TRANSLUCENT : 0) | V_ALLOWLOWERCASE, name); if (gametyperules & GTR_TEAMFLAGS) @@ -2733,12 +2733,12 @@ void HU_DrawDualTabRankings(INT32 x, INT32 y, playersort_t *tab, INT32 scoreline if (circuitmap) { if (players[tab[i].num].exiting) - V_DrawRightAlignedThinString(x+146, y, 0, va("%i:%02i.%02i", G_TicsToMinutes(players[tab[i].num].realtime,true), G_TicsToSeconds(players[tab[i].num].realtime), G_TicsToCentiseconds(players[tab[i].num].realtime))); + V_DrawRightAlignedThinString(x+100, y, 0, va("%i:%02i.%02i", G_TicsToMinutes(players[tab[i].num].realtime,true), G_TicsToSeconds(players[tab[i].num].realtime), G_TicsToCentiseconds(players[tab[i].num].realtime))); else - V_DrawRightAlignedThinString(x+146, y, (greycheck ? V_TRANSLUCENT : 0), va("%u", tab[i].count)); + V_DrawRightAlignedThinString(x+100, y, (greycheck ? V_TRANSLUCENT : 0), va("%u", tab[i].count)); } else - V_DrawRightAlignedThinString(x+146, y, (greycheck ? V_TRANSLUCENT : 0), va("%i:%02i.%02i", G_TicsToMinutes(tab[i].count,true), G_TicsToSeconds(tab[i].count), G_TicsToCentiseconds(tab[i].count))); + V_DrawRightAlignedThinString(x+100, y, (greycheck ? V_TRANSLUCENT : 0), va("%i:%02i.%02i", G_TicsToMinutes(tab[i].count,true), G_TicsToSeconds(tab[i].count), G_TicsToCentiseconds(tab[i].count))); } else V_DrawRightAlignedThinString(x+100, y, (greycheck ? V_TRANSLUCENT : 0), va("%u", tab[i].count)); @@ -2786,7 +2786,7 @@ static void HU_Draw32TabRankings(INT32 x, INT32 y, playersort_t *tab, INT32 scor if (!players[tab[i].num].quittime || (leveltime / (TICRATE/2) & 1)) V_DrawString(x + 10, y, ((tab[i].num == whiteplayer) ? V_YELLOWMAP : 0) - | (greycheck ? 0 : V_TRANSLUCENT) + | (greycheck ? V_TRANSLUCENT : 0) | V_ALLOWLOWERCASE, name); if (G_GametypeUsesLives()) //show lives @@ -2846,13 +2846,13 @@ static void HU_Draw32TabRankings(INT32 x, INT32 y, playersort_t *tab, INT32 scor if (players[tab[i].num].exiting) V_DrawRightAlignedThinString(x+128, y, 0, va("%i:%02i.%02i", G_TicsToMinutes(players[tab[i].num].realtime,true), G_TicsToSeconds(players[tab[i].num].realtime), G_TicsToCentiseconds(players[tab[i].num].realtime))); else - V_DrawRightAlignedThinString(x+128, y, (greycheck ? 0 : V_TRANSLUCENT), va("%u", tab[i].count)); + V_DrawRightAlignedThinString(x+128, y, (greycheck ? V_TRANSLUCENT : 0), va("%u", tab[i].count)); } else - V_DrawRightAlignedThinString(x+128, y, (greycheck ? 0 : V_TRANSLUCENT), va("%i:%02i.%02i", G_TicsToMinutes(tab[i].count,true), G_TicsToSeconds(tab[i].count), G_TicsToCentiseconds(tab[i].count))); + V_DrawRightAlignedThinString(x+128, y, (greycheck ? V_TRANSLUCENT : 0), va("%i:%02i.%02i", G_TicsToMinutes(tab[i].count,true), G_TicsToSeconds(tab[i].count), G_TicsToCentiseconds(tab[i].count))); } else - V_DrawRightAlignedThinString(x+128, y, (greycheck ? 0 : V_TRANSLUCENT), va("%u", tab[i].count)); + V_DrawRightAlignedThinString(x+128, y, (greycheck ? V_TRANSLUCENT : 0), va("%u", tab[i].count)); y += 9; if (i == 16) @@ -3091,7 +3091,7 @@ static void HU_DrawRankings(void) HU_DrawTeamTabRankings(tab, whiteplayer); else if (scorelines <= 9 && !cv_compactscoreboard.value) HU_DrawTabRankings(40, 32, tab, scorelines, whiteplayer); - else if (scorelines <= 20 && !cv_compactscoreboard.value) + else if (scorelines <= 18 && !cv_compactscoreboard.value) HU_DrawDualTabRankings(32, 32, tab, scorelines, whiteplayer); else HU_Draw32TabRankings(14, 28, tab, scorelines, whiteplayer); From 6f5b34f7c16e3012b481a7522613b3dcc744a4fe Mon Sep 17 00:00:00 2001 From: spherallic Date: Thu, 9 Dec 2021 12:45:18 +0100 Subject: [PATCH 08/14] Don't award end-of-level bonuses to bots. --- src/y_inter.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/y_inter.c b/src/y_inter.c index f24436d40..288a821e6 100644 --- a/src/y_inter.c +++ b/src/y_inter.c @@ -2023,7 +2023,7 @@ static void Y_AwardCoopBonuses(void) for (i = 0; i < MAXPLAYERS; ++i) { - if (!playeringame[i] || players[i].lives < 1) // not active or game over + if (!playeringame[i] || players[i].lives < 1 || players[i].bot == BOT_2PAI || players[i].bot == BOT_2PHUMAN) // not active, game over or tails bot bonusnum = 0; // all null else bonusnum = mapheaderinfo[prevmap]->bonustype + 1; // -1 is none @@ -2073,7 +2073,7 @@ static void Y_AwardSpecialStageBonus(void) { oldscore = players[i].score; - if (!playeringame[i] || players[i].lives < 1) // not active or game over + if (!playeringame[i] || players[i].lives < 1 || players[i].bot == BOT_2PAI || players[i].bot == BOT_2PHUMAN) // not active, game over or tails bot { Y_SetNullBonus(&players[i], &localbonuses[0]); Y_SetNullBonus(&players[i], &localbonuses[1]); From 9b10473e0df43842ad77bb9c7f45b7a7edc0308a Mon Sep 17 00:00:00 2001 From: katsy Date: Fri, 24 Dec 2021 19:36:26 -0600 Subject: [PATCH 09/14] add invert flashpal constant --- src/deh_tables.c | 1 + src/p_local.h | 1 + 2 files changed, 2 insertions(+) diff --git a/src/deh_tables.c b/src/deh_tables.c index f30f7c14d..b80e88ec2 100644 --- a/src/deh_tables.c +++ b/src/deh_tables.c @@ -5088,6 +5088,7 @@ struct int_const_s const INT_CONST[] = { {"PAL_MIXUP",PAL_MIXUP}, {"PAL_RECYCLE",PAL_RECYCLE}, {"PAL_NUKE",PAL_NUKE}, + {"PAL_INVERT",PAL_INVERT}, // for P_DamageMobj //// Damage types {"DMG_WATER",DMG_WATER}, diff --git a/src/p_local.h b/src/p_local.h index 1fcd3050d..28a77afe5 100644 --- a/src/p_local.h +++ b/src/p_local.h @@ -349,6 +349,7 @@ void P_FlashPal(player_t *pl, UINT16 type, UINT16 duration); #define PAL_MIXUP 2 #define PAL_RECYCLE 3 #define PAL_NUKE 4 +#define PAL_INVERT 5 // // P_ENEMY From 243a797efe9fe89c4b51c974b5137afeedded808 Mon Sep 17 00:00:00 2001 From: katsy <205-katsy@users.noreply.git.do.srb2.org> Date: Sun, 26 Dec 2021 12:41:49 +0000 Subject: [PATCH 10/14] Set a default botleader if we don't have one (resolves #717) --- src/b_bot.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/b_bot.c b/src/b_bot.c index cdd74fc07..bf2dbbb68 100644 --- a/src/b_bot.c +++ b/src/b_bot.c @@ -29,11 +29,16 @@ void B_UpdateBotleader(player_t *player) { if (players[i].bot || players[i].playerstate != PST_LIVE || players[i].spectator || !players[i].mo) continue; - if (!player->mo) //Can't do distance calculations if there's no player object, so we'll just take the first we find + + if (!player->botleader) { - player->botleader = &players[i]; + player->botleader = &players[i]; // set default return; } + + if (!player->mo) + return; + //Update best candidate based on nearest distance dist = R_PointToDist2(player->mo->x, player->mo->y, players[i].mo->x, players[i].mo->y); if (neardist > dist) From bb514d227ca5f2d53e6295c8b599a1dc205c69f1 Mon Sep 17 00:00:00 2001 From: spherallic Date: Sun, 26 Dec 2021 21:12:39 +0100 Subject: [PATCH 11/14] Don't count music.dta as a main wad when using listwad --- src/d_netcmd.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/d_netcmd.c b/src/d_netcmd.c index cca3102d0..fe7e7678f 100644 --- a/src/d_netcmd.c +++ b/src/d_netcmd.c @@ -3763,7 +3763,7 @@ static void Command_ListWADS_f(void) nameonly(tempname = va("%s", wadfiles[i]->filename)); if (!i) CONS_Printf("\x82 IWAD\x80: %s\n", tempname); - else if (i <= mainwads) + else if (i < mainwads) CONS_Printf("\x82 * %.2d\x80: %s\n", i, tempname); else if (!wadfiles[i]->important) CONS_Printf("\x86 %.2d: %s\n", i, tempname); From b830fee2e30ae5f9d36b85781c22d2484af59931 Mon Sep 17 00:00:00 2001 From: spherallic Date: Sun, 26 Dec 2021 21:30:36 +0100 Subject: [PATCH 12/14] Allow changing the master server address while hosting a netgame. --- src/m_menu.c | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/m_menu.c b/src/m_menu.c index fc1e33b67..3ec49356c 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -11588,9 +11588,7 @@ static void M_ServerOptions(INT32 choice) OP_ServerOptionsMenu[ 2].status = IT_STRING | IT_CVAR; OP_ServerOptionsMenu[ 3].status = IT_STRING | IT_CVAR; OP_ServerOptionsMenu[ 4].status = IT_STRING | IT_CVAR; - OP_ServerOptionsMenu[36].status = (netgame - ? IT_GRAYEDOUT - : (IT_STRING | IT_CVAR | IT_CV_STRING)); + OP_ServerOptionsMenu[36].status = IT_STRING | IT_CVAR | IT_CV_STRING; OP_ServerOptionsMenu[37].status = IT_STRING | IT_CVAR; OP_ServerOptionsMenu[38].status = IT_STRING | IT_CVAR; } From 1040141560d717fc60e09e71f5d78aa5780d0d14 Mon Sep 17 00:00:00 2001 From: spherallic Date: Mon, 27 Dec 2021 12:41:04 +0100 Subject: [PATCH 13/14] Fix enemy/boss/minecart explosions in death pits --- src/p_mobj.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/p_mobj.c b/src/p_mobj.c index 40ef447f8..39c6731b8 100644 --- a/src/p_mobj.c +++ b/src/p_mobj.c @@ -2522,7 +2522,7 @@ boolean P_ZMovement(mobj_t *mo) { P_KillMobj(mo, NULL, NULL, 0); } - return false; + return !P_MobjWasRemoved(mo); // allows explosion states to run } else { From effcb948ade86387fcf446b234fd212eb79aa951 Mon Sep 17 00:00:00 2001 From: katsy <205-katsy@users.noreply.git.do.srb2.org> Date: Wed, 29 Dec 2021 09:59:54 +0000 Subject: [PATCH 14/14] Don't count bots in playersforexit --- src/g_game.c | 2 +- src/p_user.c | 4 ++-- src/st_stuff.c | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/g_game.c b/src/g_game.c index 3955834b2..e671eb2d7 100644 --- a/src/g_game.c +++ b/src/g_game.c @@ -3300,7 +3300,7 @@ boolean G_EnoughPlayersFinished(void) for (i = 0; i < MAXPLAYERS; i++) { - if (!playeringame[i] || players[i].spectator || players[i].bot == BOT_2PAI || players[i].bot == BOT_2PHUMAN) + if (!playeringame[i] || players[i].spectator || players[i].bot) continue; if (players[i].quittime > 30 * TICRATE) continue; diff --git a/src/p_user.c b/src/p_user.c index ee76d29a8..b6c30256f 100644 --- a/src/p_user.c +++ b/src/p_user.c @@ -11588,7 +11588,7 @@ void P_PlayerThink(player_t *player) for (i = 0; i < MAXPLAYERS; i++) { - if (!playeringame[i] || players[i].spectator || players[i].bot == BOT_2PAI || players[i].bot == BOT_2PHUMAN) + if (!playeringame[i] || players[i].spectator || players[i].bot) continue; if (players[i].lives <= 0) continue; @@ -11620,7 +11620,7 @@ void P_PlayerThink(player_t *player) for (i = 0; i < MAXPLAYERS; i++) { - if (!playeringame[i] || players[i].spectator || players[i].bot == BOT_2PAI || players[i].bot == BOT_2PHUMAN) + if (!playeringame[i] || players[i].spectator || players[i].bot) continue; if (players[i].quittime > 30 * TICRATE) continue; diff --git a/src/st_stuff.c b/src/st_stuff.c index a328d669e..ebf188a06 100644 --- a/src/st_stuff.c +++ b/src/st_stuff.c @@ -2291,7 +2291,7 @@ static void ST_drawTextHUD(void) for (i = 0; i < MAXPLAYERS; i++) { - if (!playeringame[i] || players[i].spectator) + if (!playeringame[i] || players[i].spectator || players[i].bot) continue; if (players[i].lives <= 0) continue;