* Disable dashmode if pw_carry is set or the player is exiting, in addition to getting the flag.

* Add a dashmode downpower sound.
This commit is contained in:
toaster 2019-10-27 12:47:58 +00:00
parent c221a89c67
commit fa187a66e2

View file

@ -11811,8 +11811,8 @@ void P_PlayerThink(player_t *player)
player->pflags &= ~PF_SLIDING; player->pflags &= ~PF_SLIDING;
#define dashmode player->dashmode #define dashmode player->dashmode
// Dash mode - thanks be to Iceman404 // Dash mode - thanks be to VelocitOni
if ((player->charflags & SF_DASHMODE) && !(player->gotflag) && !(maptol & TOL_NIGHTS)) // woo, dashmode! no nights tho. if ((player->charflags & SF_DASHMODE) && !player->gotflag && !player->powers[pw_carry] && !player->exiting && !(maptol & TOL_NIGHTS)) // woo, dashmode! no nights tho.
{ {
boolean totallyradical = player->speed >= FixedMul(player->runspeed, player->mo->scale); boolean totallyradical = player->speed >= FixedMul(player->runspeed, player->mo->scale);
boolean floating = (player->secondjump == 1); boolean floating = (player->secondjump == 1);
@ -11827,7 +11827,11 @@ void P_PlayerThink(player_t *player)
else if ((!totallyradical || !floating) && !(player->pflags & PF_SPINNING)) else if ((!totallyradical || !floating) && !(player->pflags & PF_SPINNING))
{ {
if (dashmode > 3) if (dashmode > 3)
{
dashmode -= 3; // Rather than lose it all, it gently counts back down! dashmode -= 3; // Rather than lose it all, it gently counts back down!
if ((dashmode+3) >= DASHMODE_THRESHOLD && dashmode < DASHMODE_THRESHOLD)
S_StartSound(player->mo, sfx_s3k72);
}
else else
dashmode = 0; dashmode = 0;
} }
@ -11858,6 +11862,7 @@ void P_PlayerThink(player_t *player)
{ {
player->normalspeed = skins[player->skin].normalspeed; player->normalspeed = skins[player->skin].normalspeed;
player->jumpfactor = skins[player->skin].jumpfactor; player->jumpfactor = skins[player->skin].jumpfactor;
S_StartSound(player->mo, sfx_s3k72);
} }
dashmode = 0; dashmode = 0;
} }