mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2025-10-30 08:01:28 +00:00
Merge branch 'prison-tutorial-bump' into 'master'
Prison Egg tutorial bump exception See merge request KartKrew/Kart!2237
This commit is contained in:
commit
14f4983088
1 changed files with 19 additions and 8 deletions
27
src/k_kart.c
27
src/k_kart.c
|
|
@ -853,6 +853,17 @@ static boolean K_JustBumpedException(mobj_t *mobj)
|
||||||
return Obj_SA2CrateIsMetal(mobj);
|
return Obj_SA2CrateIsMetal(mobj);
|
||||||
case MT_WALLSPIKE:
|
case MT_WALLSPIKE:
|
||||||
return true;
|
return true;
|
||||||
|
case MT_BATTLECAPSULE:
|
||||||
|
{
|
||||||
|
if (gametype == GT_TUTORIAL // Remove gametype check whenever it's safe to break compatibility with ghosts in a post-release patch
|
||||||
|
&& mobj->momx == 0
|
||||||
|
&& mobj->momy == 0
|
||||||
|
&& mobj->momz == 0)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
@ -4806,7 +4817,7 @@ void K_ApplyTripWire(player_t *player, tripwirestate_t state)
|
||||||
Obj_GardenTopDestroy(player);
|
Obj_GardenTopDestroy(player);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
player->tripwireLeniency += TICRATE/2;
|
player->tripwireLeniency += TICRATE/2;
|
||||||
}
|
}
|
||||||
else if (state == TRIPSTATE_BLOCKED)
|
else if (state == TRIPSTATE_BLOCKED)
|
||||||
|
|
@ -8559,7 +8570,7 @@ void K_KartPlayerThink(player_t *player, ticcmd_t *cmd)
|
||||||
debtflag->renderflags |= RF_TRANS50;
|
debtflag->renderflags |= RF_TRANS50;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (player->springstars && (leveltime & 1))
|
if (player->springstars && (leveltime & 1))
|
||||||
|
|
@ -10874,7 +10885,7 @@ static void K_KartDrift(player_t *player, boolean onground)
|
||||||
|
|
||||||
// If we're sliptiding, whether through an extension or otherwise, allow sliptide extensions next tic.
|
// If we're sliptiding, whether through an extension or otherwise, allow sliptide extensions next tic.
|
||||||
if (K_Sliptiding(player))
|
if (K_Sliptiding(player))
|
||||||
player->aizdriftextend = player->aizdriftstrat;
|
player->aizdriftextend = player->aizdriftstrat;
|
||||||
else
|
else
|
||||||
player->aizdriftextend = 0;
|
player->aizdriftextend = 0;
|
||||||
|
|
||||||
|
|
@ -10927,7 +10938,7 @@ static void K_KartDrift(player_t *player, boolean onground)
|
||||||
if (!extendedSliptide && K_IsLosingWavedash(player) && player->wavedash > 0)
|
if (!extendedSliptide && K_IsLosingWavedash(player) && player->wavedash > 0)
|
||||||
{
|
{
|
||||||
if (player->wavedash > HIDEWAVEDASHCHARGE && !S_SoundPlaying(player->mo, sfx_waved2))
|
if (player->wavedash > HIDEWAVEDASHCHARGE && !S_SoundPlaying(player->mo, sfx_waved2))
|
||||||
S_StartSoundAtVolume(player->mo, sfx_waved2,
|
S_StartSoundAtVolume(player->mo, sfx_waved2,
|
||||||
Easing_InSine(
|
Easing_InSine(
|
||||||
min(FRACUNIT, FRACUNIT * player->wavedash / MIN_WAVEDASH_CHARGE),
|
min(FRACUNIT, FRACUNIT * player->wavedash / MIN_WAVEDASH_CHARGE),
|
||||||
120,
|
120,
|
||||||
|
|
@ -10963,7 +10974,7 @@ static void K_KartDrift(player_t *player, boolean onground)
|
||||||
player->wavedashpower = min(FRACUNIT, FRACUNIT * player->wavedash / MIN_WAVEDASH_CHARGE);
|
player->wavedashpower = min(FRACUNIT, FRACUNIT * player->wavedash / MIN_WAVEDASH_CHARGE);
|
||||||
|
|
||||||
// Scale boost sound to power.
|
// Scale boost sound to power.
|
||||||
S_StartSoundAtVolume(player->mo, sfx_waved3,
|
S_StartSoundAtVolume(player->mo, sfx_waved3,
|
||||||
Easing_InSine(
|
Easing_InSine(
|
||||||
player->wavedashpower,
|
player->wavedashpower,
|
||||||
120,
|
120,
|
||||||
|
|
@ -12192,7 +12203,7 @@ void K_MoveKartPlayer(player_t *player, boolean onground)
|
||||||
accel *= 3;
|
accel *= 3;
|
||||||
weight *= 10;
|
weight *= 10;
|
||||||
}
|
}
|
||||||
|
|
||||||
award = (110 + accel + weight) * award / 120;
|
award = (110 + accel + weight) * award / 120;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
@ -12201,7 +12212,7 @@ void K_MoveKartPlayer(player_t *player, boolean onground)
|
||||||
UINT32 behindMulti = behind / 500;
|
UINT32 behindMulti = behind / 500;
|
||||||
behindMulti = min(behindMulti, 60);
|
behindMulti = min(behindMulti, 60);
|
||||||
award = award * (behindMulti + 10) / 10;
|
award = award * (behindMulti + 10) / 10;
|
||||||
}
|
}
|
||||||
|
|
||||||
K_AwardPlayerRings(player, award, true);
|
K_AwardPlayerRings(player, award, true);
|
||||||
player->ringboxaward = 0;
|
player->ringboxaward = 0;
|
||||||
|
|
@ -12255,7 +12266,7 @@ void K_MoveKartPlayer(player_t *player, boolean onground)
|
||||||
|
|
||||||
// OOPSIES FIXME pt.1: You can charge instawhip between picking up and confirming an item box.
|
// OOPSIES FIXME pt.1: You can charge instawhip between picking up and confirming an item box.
|
||||||
// This is vanishingly rare in race and impossible in battle, but SUPER common in prisons!
|
// This is vanishingly rare in race and impossible in battle, but SUPER common in prisons!
|
||||||
//
|
//
|
||||||
// ...But this was discovered after staff ghost recording started, and charging whip prevents
|
// ...But this was discovered after staff ghost recording started, and charging whip prevents
|
||||||
// flingring pickup, meaning it has a small but desync-capable gameplay effect.
|
// flingring pickup, meaning it has a small but desync-capable gameplay effect.
|
||||||
//
|
//
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue