Compare commits

...

9 Commits

2 changed files with 9 additions and 3 deletions

View File

@ -5812,14 +5812,19 @@ void K_MoveKartPlayer(player_t *player, boolean onground)
player->mo->movefactor = 32;
}
// Wipeout slowdown
if (player->kartstuff[k_spinouttimer] && player->kartstuff[k_wipeoutslow])
// Wipeout slowdown and banana slowdown in offroad (make sure this doesn't apply if we're boosting, however.)
if ((player->kartstuff[k_spinouttimer] || player->kartstuff[k_wipeoutslow]) && !player->kartstuff[k_sneakertimer])
{
if (player->kartstuff[k_offroad])
player->mo->friction -= 4912;
if (player->kartstuff[k_wipeoutslow] == 1)
player->mo->friction -= 9824;
}
// Band-aid to make sure we never get any weird shit (tm) happening on us.
if (player->mo->friction < 0)
player->mo->friction = 0;
}
K_KartDrift(player, onground);

View File

@ -1908,7 +1908,8 @@ void P_XYMovement(mobj_t *mo)
if (mo->type == MT_ORBINAUT || mo->type == MT_JAWZ_DUD || mo->type == MT_JAWZ || mo->type == MT_BALLHOG) //(mo->type == MT_JAWZ && !mo->tracer))
return;
if (mo->player && (mo->player->kartstuff[k_spinouttimer] && !mo->player->kartstuff[k_wipeoutslow]) && mo->player->speed <= K_GetKartSpeed(mo->player, false)/2)
// hey maybe we should check for offroad as well before ignoring literally all friction ever
if (mo->player && (mo->player->kartstuff[k_spinouttimer] && !mo->player->kartstuff[k_offroad] && !mo->player->kartstuff[k_wipeoutslow]) && mo->player->speed <= FixedDiv(20*mapobjectscale, mo->player->kartstuff[k_offroad] + FRACUNIT))
return;
//}