diff --git a/src/k_kart.c b/src/k_kart.c index 94089d235..c8a69d92b 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -14053,7 +14053,7 @@ void K_MoveKartPlayer(player_t *player, boolean onground) // 0 = stat not considered at all! // UINT8 accelPower = 0; UINT8 speedPower = 1; - UINT8 weightPower = 4; + UINT8 weightPower = 6; UINT8 total = speedPower*speed + weightPower*weight; UINT8 maxtotal = speedPower*9 + weightPower*9; @@ -14061,7 +14061,7 @@ void K_MoveKartPlayer(player_t *player, boolean onground) UINT32 baseaward = award; // Scale from base payout at 9/1 to max payout at 1/9. - award += Easing_InCubic(FRACUNIT*total/maxtotal, 0, 7*baseaward/10); + award += Easing_InCubic(FRACUNIT*total/maxtotal, 0, 9*baseaward/10); // And, because we don't have to give a damn about sandbagging, up the stakes the longer we progress! if (gametyperules & GTR_CIRCUIT) diff --git a/src/p_spec.c b/src/p_spec.c index 53ec58120..da154872b 100644 --- a/src/p_spec.c +++ b/src/p_spec.c @@ -2055,8 +2055,23 @@ static void K_HandleLapIncrement(player_t *player) else starthaste -= leniency; - fixed_t ampreward = Easing_OutQuart(starthaste*FRACUNIT/TIMEATTACK_START, 60*FRACUNIT, 0); - K_SpawnAmps(player, ampreward/FRACUNIT, player->mo); + // fixed_t ampreward = Easing_OutQuart(starthaste*FRACUNIT/TIMEATTACK_START, 60*FRACUNIT, 0); + // K_SpawnAmps(player, ampreward/FRACUNIT, player->mo); + + UINT8 baseboost = 125; + + player->startboost = Easing_OutQuart(starthaste*FRACUNIT/TIMEATTACK_START, baseboost, 0); + + if (player->startboost == baseboost) + { + K_SpawnDriftBoostExplosion(player, 4); + K_SpawnDriftElectricSparks(player, SKINCOLOR_SILVER, false); + } + else + { + K_SpawnDriftBoostExplosion(player, 3); + // K_SpawnDriftElectricSparks(player, SKINCOLOR_SILVER, false); + } // And reset our time to 0. starttime = leveltime;