Add separate boost sound for start boost
Allows us to set it to be singular, stopping really loud start boosts with many players
This commit is contained in:
parent
65c5c94563
commit
28297d9f58
22
src/k_kart.c
22
src/k_kart.c
|
@ -1303,7 +1303,7 @@ void K_LakituChecker(player_t *player)
|
||||||
player->kartstuff[k_lakitu]--;
|
player->kartstuff[k_lakitu]--;
|
||||||
// Quick! You only have three tics to boost!
|
// Quick! You only have three tics to boost!
|
||||||
if (cmd->buttons & BT_ACCELERATE)
|
if (cmd->buttons & BT_ACCELERATE)
|
||||||
K_DoMushroom(player, true);
|
K_DoMushroom(player, true, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -2228,10 +2228,14 @@ static void K_DoBooSteal(player_t *player)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void K_DoMushroom(player_t *player, boolean doPFlag)
|
void K_DoMushroom(player_t *player, boolean doPFlag, boolean startboost)
|
||||||
{
|
{
|
||||||
|
sfxenum_t boostsound = sfx_mush;
|
||||||
|
if (startboost)
|
||||||
|
boostsound = sfx_sboost;
|
||||||
|
|
||||||
if (!player->kartstuff[k_floorboost] || player->kartstuff[k_floorboost] == 3)
|
if (!player->kartstuff[k_floorboost] || player->kartstuff[k_floorboost] == 3)
|
||||||
S_StartSound(player->mo, sfx_mush);
|
S_StartSound(player->mo, boostsound);
|
||||||
|
|
||||||
player->kartstuff[k_mushroomtimer] = mushroomtime;
|
player->kartstuff[k_mushroomtimer] = mushroomtime;
|
||||||
|
|
||||||
|
@ -2624,14 +2628,14 @@ void K_MoveKartPlayer(player_t *player, boolean onground)
|
||||||
if (ATTACK_IS_DOWN && !HOLDING_ITEM && onground && player->kartstuff[k_goldshroom] == 1
|
if (ATTACK_IS_DOWN && !HOLDING_ITEM && onground && player->kartstuff[k_goldshroom] == 1
|
||||||
&& player->kartstuff[k_goldshroomtimer] == 0 && NO_BOO)
|
&& player->kartstuff[k_goldshroomtimer] == 0 && NO_BOO)
|
||||||
{
|
{
|
||||||
K_DoMushroom(player, true);
|
K_DoMushroom(player, true, false);
|
||||||
player->kartstuff[k_goldshroomtimer] = itemtime;
|
player->kartstuff[k_goldshroomtimer] = itemtime;
|
||||||
player->kartstuff[k_goldshroom] = 0;
|
player->kartstuff[k_goldshroom] = 0;
|
||||||
}
|
}
|
||||||
// GoldenMushroom power
|
// GoldenMushroom power
|
||||||
else if (ATTACK_IS_DOWN && player->kartstuff[k_goldshroomtimer] > 1 && onground && NO_BOO)
|
else if (ATTACK_IS_DOWN && player->kartstuff[k_goldshroomtimer] > 1 && onground && NO_BOO)
|
||||||
{
|
{
|
||||||
K_DoMushroom(player, true);
|
K_DoMushroom(player, true, false);
|
||||||
//player->kartstuff[k_goldshroomtimer] -= 10;
|
//player->kartstuff[k_goldshroomtimer] -= 10;
|
||||||
//if (player->kartstuff[k_goldshroomtimer] < 1)
|
//if (player->kartstuff[k_goldshroomtimer] < 1)
|
||||||
// player->kartstuff[k_goldshroomtimer] = 1;
|
// player->kartstuff[k_goldshroomtimer] = 1;
|
||||||
|
@ -2639,19 +2643,19 @@ void K_MoveKartPlayer(player_t *player, boolean onground)
|
||||||
// TripleMushroom power
|
// TripleMushroom power
|
||||||
else if (ATTACK_IS_DOWN && !HOLDING_ITEM && player->kartstuff[k_mushroom] == 4 && onground && NO_BOO)
|
else if (ATTACK_IS_DOWN && !HOLDING_ITEM && player->kartstuff[k_mushroom] == 4 && onground && NO_BOO)
|
||||||
{
|
{
|
||||||
K_DoMushroom(player, true);
|
K_DoMushroom(player, true, false);
|
||||||
player->kartstuff[k_mushroom] = 2;
|
player->kartstuff[k_mushroom] = 2;
|
||||||
}
|
}
|
||||||
// DoubleMushroom power
|
// DoubleMushroom power
|
||||||
else if (ATTACK_IS_DOWN && !HOLDING_ITEM && player->kartstuff[k_mushroom] == 2 && onground && NO_BOO)
|
else if (ATTACK_IS_DOWN && !HOLDING_ITEM && player->kartstuff[k_mushroom] == 2 && onground && NO_BOO)
|
||||||
{
|
{
|
||||||
K_DoMushroom(player, true);
|
K_DoMushroom(player, true, false);
|
||||||
player->kartstuff[k_mushroom] = 1;
|
player->kartstuff[k_mushroom] = 1;
|
||||||
}
|
}
|
||||||
// Mushroom power
|
// Mushroom power
|
||||||
else if (ATTACK_IS_DOWN && !HOLDING_ITEM && player->kartstuff[k_mushroom] == 1 && onground && NO_BOO)
|
else if (ATTACK_IS_DOWN && !HOLDING_ITEM && player->kartstuff[k_mushroom] == 1 && onground && NO_BOO)
|
||||||
{
|
{
|
||||||
K_DoMushroom(player, true);
|
K_DoMushroom(player, true, false);
|
||||||
player->kartstuff[k_mushroom] = 0;
|
player->kartstuff[k_mushroom] = 0;
|
||||||
}
|
}
|
||||||
// Star power
|
// Star power
|
||||||
|
@ -3105,7 +3109,7 @@ void K_MoveKartPlayer(player_t *player, boolean onground)
|
||||||
// Get an instant boost!
|
// Get an instant boost!
|
||||||
if (player->kartstuff[k_boostcharge] >= 7 && player->kartstuff[k_boostcharge] <= 10)
|
if (player->kartstuff[k_boostcharge] >= 7 && player->kartstuff[k_boostcharge] <= 10)
|
||||||
{
|
{
|
||||||
K_DoMushroom(player, false);
|
K_DoMushroom(player, false, true);
|
||||||
}
|
}
|
||||||
// You overcharged your engine? Those things are expensive!!!
|
// You overcharged your engine? Those things are expensive!!!
|
||||||
if (player->kartstuff[k_boostcharge] > 10)
|
if (player->kartstuff[k_boostcharge] > 10)
|
||||||
|
|
|
@ -22,7 +22,7 @@ void K_SquishPlayer(player_t *player, mobj_t *source);
|
||||||
void K_ExplodePlayer(player_t *player, mobj_t *source);
|
void K_ExplodePlayer(player_t *player, mobj_t *source);
|
||||||
void K_SpawnKartExplosion(fixed_t x, fixed_t y, fixed_t z, fixed_t radius, INT32 number, mobjtype_t type, angle_t rotangle, boolean spawncenter, boolean ghostit);
|
void K_SpawnKartExplosion(fixed_t x, fixed_t y, fixed_t z, fixed_t radius, INT32 number, mobjtype_t type, angle_t rotangle, boolean spawncenter, boolean ghostit);
|
||||||
void K_SpawnDriftTrail(player_t *player);
|
void K_SpawnDriftTrail(player_t *player);
|
||||||
void K_DoMushroom(player_t *player, boolean doPFlag);
|
void K_DoMushroom(player_t *player, boolean doPFlag, boolean startboost);
|
||||||
INT16 K_GetKartTurnValue(player_t *player, INT16 turnvalue);
|
INT16 K_GetKartTurnValue(player_t *player, INT16 turnvalue);
|
||||||
void K_MomentumToFacing(player_t *player);
|
void K_MomentumToFacing(player_t *player);
|
||||||
fixed_t K_GetKartSpeed(player_t *player, boolean doboostpower);
|
fixed_t K_GetKartSpeed(player_t *player, boolean doboostpower);
|
||||||
|
|
|
@ -3934,7 +3934,7 @@ DoneSection2:
|
||||||
player->kartstuff[k_floorboost] = 3;
|
player->kartstuff[k_floorboost] = 3;
|
||||||
else
|
else
|
||||||
player->kartstuff[k_floorboost] = 2;
|
player->kartstuff[k_floorboost] = 2;
|
||||||
K_DoMushroom(player, false);
|
K_DoMushroom(player, false, false);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 7: // SRB2kart 190117 - Oil Slick
|
case 7: // SRB2kart 190117 - Oil Slick
|
||||||
|
|
|
@ -474,6 +474,7 @@ sfxinfo_t S_sfx[NUMSFX] =
|
||||||
{"kart2", false, 48, 16, -1, NULL, 0, -1, -1, LUMPERROR},
|
{"kart2", false, 48, 16, -1, NULL, 0, -1, -1, LUMPERROR},
|
||||||
{"kart3", false, 48, 16, -1, NULL, 0, -1, -1, LUMPERROR},
|
{"kart3", false, 48, 16, -1, NULL, 0, -1, -1, LUMPERROR},
|
||||||
{"mlap", true, 127, 0, -1, NULL, 0, -1, -1, LUMPERROR},
|
{"mlap", true, 127, 0, -1, NULL, 0, -1, -1, LUMPERROR},
|
||||||
|
{"sboost", true, 90, 0, -1, NULL, 0, -1, -1, LUMPERROR},
|
||||||
{"mush", false, 90, 0, -1, NULL, 0, -1, -1, LUMPERROR},
|
{"mush", false, 90, 0, -1, NULL, 0, -1, -1, LUMPERROR},
|
||||||
{"star", false, 140, 16, -1, NULL, 0, -1, -1, LUMPERROR},
|
{"star", false, 140, 16, -1, NULL, 0, -1, -1, LUMPERROR},
|
||||||
{"mega", false, 140, 16, -1, NULL, 0, -1, -1, LUMPERROR},
|
{"mega", false, 140, 16, -1, NULL, 0, -1, -1, LUMPERROR},
|
||||||
|
|
|
@ -545,6 +545,7 @@ typedef enum
|
||||||
sfx_kart2,
|
sfx_kart2,
|
||||||
sfx_kart3,
|
sfx_kart3,
|
||||||
sfx_mlap,
|
sfx_mlap,
|
||||||
|
sfx_sboost,
|
||||||
sfx_mush,
|
sfx_mush,
|
||||||
sfx_star,
|
sfx_star,
|
||||||
sfx_mega,
|
sfx_mega,
|
||||||
|
|
Loading…
Reference in a new issue