diff --git a/src/p_mobj.c b/src/p_mobj.c index ddb4417e9..2c0aa3b67 100644 --- a/src/p_mobj.c +++ b/src/p_mobj.c @@ -54,6 +54,7 @@ #include "k_objects.h" #include "k_items.h" #include "k_waypoint.h" +#include "k_grandprix.h" // BlanKart #include "blan/b_soc.h" @@ -12416,10 +12417,11 @@ void P_SpawnPlayer(INT32 playernum) } else if (p->bot) { - if (itembreaker) + if (K_BotDefaultSpectator()) { // Bots should avoid - P_SetPlayerSpectator(playernum); + p->spectator = true; + p->pflags &= ~PF_WANTSTOJOIN; } else if (p->spectator) { diff --git a/src/p_setup.c b/src/p_setup.c index c55604b9d..5fa9a1978 100644 --- a/src/p_setup.c +++ b/src/p_setup.c @@ -9231,7 +9231,7 @@ void P_PostLoadLevel(void) K_InitGrandPrixBots(); grandprixinfo.initalize = false; } - else if (grandprixinfo.wonround == true) + else// if (grandprixinfo.wonround == true) { K_UpdateGrandPrixBots(); grandprixinfo.wonround = false; diff --git a/src/p_user.c b/src/p_user.c index ceb178419..6e39016f3 100644 --- a/src/p_user.c +++ b/src/p_user.c @@ -2681,6 +2681,10 @@ static void P_DeathThink(player_t *player) playerGone = true; } } + else if (player->bot && K_BotDefaultSpectator()) + { + playerGone = true; + } if (playerGone == false) {