All springs give spring grease

This commit is contained in:
SteelT 2021-11-26 23:13:17 -05:00
parent b22d18aea6
commit db4bb74c42
3 changed files with 11 additions and 14 deletions

View file

@ -390,7 +390,7 @@ typedef struct player_s
fixed_t offroad; // In Super Mario Kart, going offroad has lee-way of about 1 second before you start losing speed
UINT8 waterskip; // Water skipping counter
UINT16 tiregrease; // Reduced friction timer after hitting a horizontal spring
UINT16 tiregrease; // Reduced friction timer after hitting a spring
UINT16 springstars; // Spawn stars around a player when they hit a spring
UINT16 springcolor; // Color of spring stars
UINT8 dashpadcooldown; // Separate the vanilla SA-style dash pads from using flashing

View file

@ -8342,7 +8342,7 @@ void K_AdjustPlayerFriction(player_t *player)
return;
}
// Reduce friction after hitting a horizontal spring
// Reduce friction after hitting a spring
if (player->tiregrease)
{
player->mo->friction += ((FRACUNIT - prevfriction) / greasetics) * player->tiregrease;

View file

@ -347,20 +347,17 @@ boolean P_DoSpring(mobj_t *spring, mobj_t *object)
if (object->player)
{
// Less friction when hitting horizontal springs
if (!vertispeed)
// Less friction when hitting springs
if (!object->player->tiregrease)
{
if (!object->player->tiregrease)
UINT8 i;
for (i = 0; i < 2; i++)
{
UINT8 i;
for (i = 0; i < 2; i++)
{
mobj_t *grease;
grease = P_SpawnMobj(object->x, object->y, object->z, MT_TIREGREASE);
P_SetTarget(&grease->target, object);
grease->angle = K_MomentumAngle(object);
grease->extravalue1 = i;
}
mobj_t *grease;
grease = P_SpawnMobj(object->x, object->y, object->z, MT_TIREGREASE);
P_SetTarget(&grease->target, object);
grease->angle = K_MomentumAngle(object);
grease->extravalue1 = i;
}
object->player->tiregrease = greasetics; //FixedMul(greasetics << FRACBITS, finalSpeed/72) >> FRACBITS