mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2025-10-30 08:01:28 +00:00
Point to the back quarter of racers
Instead of everyone behind 1st being considered for average, only consider the last 25% of players. Speed assist is stronger again to make up for this (+25% again)
This commit is contained in:
parent
1dfa72da48
commit
ddb034f056
1 changed files with 3 additions and 3 deletions
|
|
@ -3964,7 +3964,7 @@ static fixed_t K_GetKartSpeedAssist(const player_t *player)
|
||||||
if (player->loneliness < 0)
|
if (player->loneliness < 0)
|
||||||
return FRACUNIT;
|
return FRACUNIT;
|
||||||
|
|
||||||
fixed_t MAX_SPEED_ASSIST = FRACUNIT/7;
|
fixed_t MAX_SPEED_ASSIST = FRACUNIT/4;
|
||||||
|
|
||||||
return FRACUNIT + FixedMul(player->loneliness, MAX_SPEED_ASSIST);
|
return FRACUNIT + FixedMul(player->loneliness, MAX_SPEED_ASSIST);
|
||||||
}
|
}
|
||||||
|
|
@ -10003,7 +10003,7 @@ void K_KartPlayerThink(player_t *player, ticcmd_t *cmd)
|
||||||
if (playeringame[i] == false || players[i].spectator == true || players[i].exiting)
|
if (playeringame[i] == false || players[i].spectator == true || players[i].exiting)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (players[i].position != 1)
|
if (players[i].position != 1 && players[i].position >= (D_NumPlayersInRace()*3)/4) //Not in 1st, but also back quarter of the average
|
||||||
{
|
{
|
||||||
counted++;
|
counted++;
|
||||||
average += K_UndoMapScaling(players[i].distancetofinish);
|
average += K_UndoMapScaling(players[i].distancetofinish);
|
||||||
|
|
@ -10025,7 +10025,7 @@ void K_KartPlayerThink(player_t *player, ticcmd_t *cmd)
|
||||||
UINT32 TOO_CLOSE = average + 7000; // Start gaining here, lose if closer
|
UINT32 TOO_CLOSE = average + 7000; // Start gaining here, lose if closer
|
||||||
UINT32 WAY_TOO_CLOSE = average + 6000; // Lose at max rate here
|
UINT32 WAY_TOO_CLOSE = average + 6000; // Lose at max rate here
|
||||||
|
|
||||||
fixed_t MAX_GAIN_PER_SEC = FRACUNIT/30; // % assist to gain per sec when REALLY_FAR
|
fixed_t MAX_GAIN_PER_SEC = FRACUNIT/20; // % assist to gain per sec when REALLY_FAR
|
||||||
fixed_t MAX_LOSS_PER_SEC = FRACUNIT/5; // % assist to lose per sec when WAY_TOO_CLOSE
|
fixed_t MAX_LOSS_PER_SEC = FRACUNIT/5; // % assist to lose per sec when WAY_TOO_CLOSE
|
||||||
|
|
||||||
UINT32 gaingap = REALLY_FAR - TOO_CLOSE;
|
UINT32 gaingap = REALLY_FAR - TOO_CLOSE;
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue