From c149ee441abc187ab678011e3a555c753b250f9f Mon Sep 17 00:00:00 2001 From: SinnamonLat Date: Sat, 10 Jul 2021 12:08:54 +0200 Subject: [PATCH 1/2] Fix item throws and startboost scale in mobjscaled maps --- src/k_kart.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/k_kart.c b/src/k_kart.c index 6b7a7a0e..ac86db0a 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -3259,7 +3259,7 @@ static mobj_t *K_ThrowKartItem(player_t *player, boolean missile, mobjtype_t map angle_t fa = player->mo->angle>>ANGLETOFINESHIFT; fixed_t HEIGHT = (20 + (dir*10))*mapobjectscale + (player->mo->momz*P_MobjFlip(player->mo)); - P_SetObjectMomZ(mo, HEIGHT, false); + mo->momz = HEIGHT*P_MobjFlip(mo); mo->momx = player->mo->momx + FixedMul(FINECOSINE(fa), PROJSPEED*dir); mo->momy = player->mo->momy + FixedMul(FINESINE(fa), PROJSPEED*dir); @@ -6036,7 +6036,7 @@ void K_MoveKartPlayer(player_t *player, boolean onground) if (leveltime < starttime+10) { player->mo->scalespeed = mapobjectscale/12; - player->mo->destscale = mapobjectscale + (player->kartstuff[k_boostcharge]*131); + player->mo->destscale = mapobjectscale + (FixedMul(mapobjectscale, player->kartstuff[k_boostcharge]*131)); if (cv_kartdebugshrink.value && !modeattacking && !player->bot) player->mo->destscale = (6*player->mo->destscale)/8; } From c839a7c5d8578702232689c90acb2eb539f14c34 Mon Sep 17 00:00:00 2001 From: SinnamonLat Date: Sat, 10 Jul 2021 12:09:52 +0200 Subject: [PATCH 2/2] Fix mixed declaration in K_KartDrift while i'm at it --- src/k_kart.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/k_kart.c b/src/k_kart.c index ac86db0a..538d3f33 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -5062,6 +5062,9 @@ INT32 K_GetKartDriftSparkValue(player_t *player) static void K_KartDrift(player_t *player, boolean onground) { fixed_t minspeed = (10 * player->mo->scale); + INT32 dsone = K_GetKartDriftSparkValue(player); + INT32 dstwo = dsone*2; + INT32 dsthree = dstwo*2; // Grown players taking yellow spring panels will go below minspeed for one tic, // and will then wrongdrift or have their sparks removed because of this. @@ -5069,10 +5072,6 @@ static void K_KartDrift(player_t *player, boolean onground) if (player->kartstuff[k_pogospring] == 2 && player->mo->scale > mapobjectscale) minspeed = FixedMul(10<