diff --git a/src/k_follower.c b/src/k_follower.c index 55f68fba37c53d5d7bf0872783644869c5cd9014..8e5fb1832102bb8172ff07627a47a5c1de2e38a4 100644 --- a/src/k_follower.c +++ b/src/k_follower.c @@ -360,7 +360,7 @@ void K_HandleFollower(player_t *player) // don't do anything if we can't have a follower to begin with. // (It gets removed under those conditions) - if (player->spectator || player->followerskin < 0 && !fallbackfollower + if (player->spectator || (player->followerskin < 0 && !fallbackfollower) || player->mo == NULL || P_MobjWasRemoved(player->mo)) { if (player->follower) diff --git a/src/k_kart.c b/src/k_kart.c index 5954988227ef1c3f5fb7a552f3e73bd4ae643fd2..db6e35cb11b289531e567b1aa010fe3739be426c 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -12665,7 +12665,11 @@ void K_MoveKartPlayer(player_t *player, boolean onground) && player->follower != NULL && P_MobjWasRemoved(player->follower) == false) { - const follower_t *fl = &followers[player->followerskin]; + const follower_t *fl = &followers[ + player->followerskin == -1 + ? K_FollowerAvailable("Goddess") + : player->followerskin + ]; ring->cusval = player->follower->x - player->mo->x; ring->cvmem = player->follower->y - player->mo->y;