diff --git a/src/k_kart.c b/src/k_kart.c index 3b6b68506..8fad8a6f0 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -811,7 +811,7 @@ static INT32 K_FindUseodds(player_t *player, fixed_t mashed, INT32 pingame, INT3 players[i].mo->y - player->mo->y), players[i].mo->z - player->mo->z) / mapheaderinfo[gamemap-1]->mobj_scale * (pingame - players[i].kartstuff[k_position]) - / ((pingame - 1) * (pingame + 1) / 3); + / max(1, ((pingame - 1) * (pingame + 1) / 3)); } #define SETUPDISTTABLE(odds, num) \ @@ -7502,7 +7502,7 @@ static void K_drawBattleFullscreen(void) else K_drawKartFinish(); } - else if (stplyr->kartstuff[k_bumper] <= 0 && stplyr->kartstuff[k_comebacktimer] && comeback) + else if (stplyr->kartstuff[k_bumper] <= 0 && stplyr->kartstuff[k_comebacktimer] && comeback && !stplyr->spectator) { UINT16 t = stplyr->kartstuff[k_comebacktimer]/(10*TICRATE); INT32 txoff, adjust = (splitscreen > 1) ? 4 : 6; // normal string is 8, kart string is 12, half of that for ease diff --git a/src/p_spec.c b/src/p_spec.c index 7a8f02056..6ac325cd9 100644 --- a/src/p_spec.c +++ b/src/p_spec.c @@ -4098,7 +4098,6 @@ DoneSection2: P_SetTarget(&player->mo->tracer, waypoint); player->speed = speed; player->pflags &= ~PF_SPINNING; // SRB2kart 200117 - player->pflags |= PF_SPINNING; player->pflags &= ~PF_JUMPED; player->pflags &= ~PF_GLIDING; player->climbing = 0; @@ -4176,7 +4175,6 @@ DoneSection2: P_SetTarget(&player->mo->tracer, waypoint); player->speed = speed; player->pflags &= ~PF_SPINNING; // SRB2kart 200117 - player->pflags |= PF_SPINNING; player->pflags &= ~PF_JUMPED; if (!(player->mo->state >= &states[S_KART_RUN1] && player->mo->state <= &states[S_KART_RUN2]))