mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2025-12-24 08:52:33 +00:00
Interrupt tumble when hitting springs
This commit is contained in:
parent
44a7e16535
commit
afdb2908f2
4 changed files with 18 additions and 11 deletions
15
src/k_kart.c
15
src/k_kart.c
|
|
@ -3734,6 +3734,21 @@ static void K_HandleTumbleSound(player_t *player)
|
|||
}
|
||||
}
|
||||
|
||||
void K_TumbleInterrupt(player_t *player)
|
||||
{
|
||||
// If player was tumbling, set variables so that they don't tumble like crazy after they're done respawning
|
||||
if (player->tumbleBounces > 0)
|
||||
{
|
||||
player->tumbleBounces = 0; // MAXBOUNCES-1;
|
||||
player->pflags &= ~PF_TUMBLELASTBOUNCE;
|
||||
//players->tumbleHeight = 20;
|
||||
|
||||
players->mo->rollangle = 0;
|
||||
player->spinouttype = KSPIN_WIPEOUT;
|
||||
player->spinouttimer = player->wipeoutslow = (3*TICRATE/2)+2;
|
||||
}
|
||||
}
|
||||
|
||||
void K_ApplyTripWire(player_t *player, tripwirestate_t state)
|
||||
{
|
||||
if (state == TRIP_PASSED)
|
||||
|
|
|
|||
|
|
@ -73,6 +73,7 @@ void K_DoPowerClash(player_t *t1, player_t *t2);
|
|||
void K_BattleAwardHit(player_t *player, player_t *victim, mobj_t *inflictor, UINT8 bumpersRemoved);
|
||||
void K_SpinPlayer(player_t *player, mobj_t *inflictor, mobj_t *source, INT32 type);
|
||||
void K_TumblePlayer(player_t *player, mobj_t *inflictor, mobj_t *source);
|
||||
void K_TumbleInterrupt(player_t *player);
|
||||
INT32 K_ExplodePlayer(player_t *player, mobj_t *inflictor, mobj_t *source);
|
||||
void K_DebtStingPlayer(player_t *player, mobj_t *source);
|
||||
void K_HandleBumperChanges(player_t *player, UINT8 prevBumpers);
|
||||
|
|
|
|||
|
|
@ -151,18 +151,8 @@ void K_DoIngameRespawn(player_t *player)
|
|||
|
||||
player->ringboost = 0;
|
||||
player->driftboost = player->strongdriftboost = 0;
|
||||
|
||||
// If player was tumbling, set variables so that they don't tumble like crazy after they're done respawning
|
||||
if (player->tumbleBounces > 0)
|
||||
{
|
||||
player->tumbleBounces = 0; // MAXBOUNCES-1;
|
||||
player->pflags &= ~PF_TUMBLELASTBOUNCE;
|
||||
//players->tumbleHeight = 20;
|
||||
players->mo->rollangle = 0;
|
||||
player->spinouttype = KSPIN_WIPEOUT;
|
||||
player->spinouttimer = player->wipeoutslow = (3*TICRATE/2)+2;
|
||||
}
|
||||
|
||||
K_TumbleInterrupt(player);
|
||||
P_ResetPlayer(player);
|
||||
|
||||
// Set up respawn position if invalid
|
||||
|
|
|
|||
|
|
@ -417,6 +417,7 @@ boolean P_DoSpring(mobj_t *spring, mobj_t *object)
|
|||
P_SetTarget(&spring->target, object);
|
||||
}
|
||||
|
||||
K_TumbleInterrupt(object->player);
|
||||
P_ResetPlayer(object->player);
|
||||
|
||||
object->player->springstars = max(vertispeed, horizspeed) / FRACUNIT / 2;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue