mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2025-10-30 08:01:28 +00:00
New leniency values
This commit is contained in:
parent
97903b00c3
commit
25fcad6e5f
1 changed files with 7 additions and 4 deletions
11
src/k_kart.c
11
src/k_kart.c
|
|
@ -1653,7 +1653,7 @@ static void K_UpdateDraft(player_t *player)
|
|||
{
|
||||
fixed_t topspd = K_GetKartSpeed(player, false);
|
||||
fixed_t draftdistance;
|
||||
UINT8 leniency = (3*TICRATE)/4;
|
||||
UINT8 leniency;
|
||||
UINT8 i;
|
||||
|
||||
// Distance you have to be to draft. If you're still accelerating, then this distance is lessened.
|
||||
|
|
@ -1665,7 +1665,8 @@ static void K_UpdateDraft(player_t *player)
|
|||
draftdistance = FixedMul(draftdistance, K_GetKartGameSpeedScalar(gamespeed));
|
||||
|
||||
// On the contrary, the leniency period biases toward high weight.
|
||||
leniency += (player->kartweight-1) * (TICRATE/4);
|
||||
// (See also: the leniency variable in K_SpawnDraftDust)
|
||||
leniency = (3*TICRATE)/4 + ((player->kartweight-1) * (TICRATE/4));
|
||||
|
||||
// Not enough speed to draft.
|
||||
if (player->speed >= 20*player->mo->scale)
|
||||
|
|
@ -1727,7 +1728,7 @@ static void K_UpdateDraft(player_t *player)
|
|||
|
||||
olddraft = player->kartstuff[k_draftpower];
|
||||
|
||||
player->kartstuff[k_draftleeway] = max(TICRATE/4, (player->kartstuff[k_draftpower] * leniency) / FRACUNIT);
|
||||
player->kartstuff[k_draftleeway] = leniency;
|
||||
player->kartstuff[k_lastdraft] = i;
|
||||
|
||||
// Draft power is used later in K_GetKartBoostPower, ranging from 0 for normal speed and FRACUNIT for max draft speed.
|
||||
|
|
@ -3408,6 +3409,8 @@ void K_SpawnDraftDust(mobj_t *mo)
|
|||
|
||||
if (mo->player)
|
||||
{
|
||||
UINT8 leniency = (3*TICRATE)/4 + ((mo->player->kartweight-1) * (TICRATE/4));
|
||||
|
||||
ang = mo->player->frameangle;
|
||||
|
||||
if (mo->player->kartstuff[k_drift] != 0)
|
||||
|
|
@ -3420,7 +3423,7 @@ void K_SpawnDraftDust(mobj_t *mo)
|
|||
sign = -1;
|
||||
}
|
||||
|
||||
foff = ((2*TICRATE) - mo->player->kartstuff[k_draftleeway]) / 8;
|
||||
foff = 5 - ((mo->player->kartstuff[k_draftleeway] * 5) / leniency);
|
||||
|
||||
// this shouldn't happen
|
||||
if (foff > 4)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue