Sound effects again

This commit is contained in:
Ashnal 2025-06-23 23:41:46 -04:00
parent 3cd254d947
commit ff9644c278
5 changed files with 17 additions and 14 deletions

View file

@ -1575,7 +1575,9 @@ const char *const STATE_LIST[] = { // array length left dynamic for sanity testi
"S_BLOCKBODY",
"S_BAIL",
"S_BAIB",
"S_BAIB1",
"S_BAIB2",
"S_BAIB3",
"S_BAIC",
"S_BAILCHARGE",

View file

@ -2165,10 +2165,15 @@ state_t states[NUMSTATES] =
{SPR_GRNG, FF_FULLBRIGHT|FF_PAPERSPRITE|0, -1, {NULL}, 0, 0, S_NULL}, // S_BLOCKRING
{SPR_GBDY, FF_FULLBRIGHT|FF_ANIMATE|0, -1, {NULL}, 4, 2, S_NULL}, // S_BLOCKBODY
{SPR_BAIL, FF_FULLBRIGHT|FF_ANIMATE|0, 8, {NULL}, 8, 1, S_BAIB}, // S_BAIL
{SPR_BAIB, FF_FULLBRIGHT|FF_ANIMATE|0, 10, {NULL}, 9, 1, S_NULL}, // S_BAIB
// why can we not use actions on spawn? I'd love to fix it but I imagine all sorts of crazy pain if I change something fundamental like that
{SPR_BAIL, FF_FULLBRIGHT|FF_ANIMATE|0, 9, {NULL}, 8, 1, S_BAIB1}, // S_BAIL
{SPR_BAIB, 0, 0, {A_PlaySound}, sfx_gshb2, 2, S_BAIB2}, // S_BAIB1
{SPR_BAIB, 0, 0, {A_PlaySound}, sfx_gshbd, 2, S_BAIB3}, // S_BAIB2
{SPR_BAIB, FF_FULLBRIGHT|FF_ANIMATE|0, 10, {NULL}, 9, 1, S_NULL}, // S_BAIB3
{SPR_BAIC, FF_FULLBRIGHT|FF_ANIMATE|0, 11, {NULL}, 10, 1, S_NULL}, // S_BAIC
{SPR_TECH, 0, -1, {NULL}, 41, 1, S_NULL}, // S_BAILCHARGE
{SPR_TECH, 1, -1, {NULL}, 41, 1, S_NULL}, // S_BAILCHARGE
{SPR_AMPB, FF_FULLBRIGHT|FF_PAPERSPRITE|0, -1, {NULL}, 0, 0, S_NULL}, // S_AMPRING
{SPR_AMPC, FF_FULLBRIGHT|FF_ANIMATE|0, -1, {NULL}, 4, 2, S_NULL}, // S_AMPBODY

View file

@ -2635,7 +2635,9 @@ typedef enum state
S_BLOCKBODY,
S_BAIL,
S_BAIB,
S_BAIB1,
S_BAIB2,
S_BAIB3,
S_BAIC,
S_BAILCHARGE,

View file

@ -13965,7 +13965,8 @@ void K_MoveKartPlayer(player_t *player, boolean onground)
if ((P_PlayerInPain(player) && player->bailcharge == 1) || (grounded && P_PlayerInPain(player) && player->bailcharge == 2)) // this is brittle ..
{
mobj_t *bail = P_SpawnMobj(player->mo->x, player->mo->y, player->mo->z + player->mo->height/2, MT_BAILCHARGE);
S_StartSound(bail, sfx_gshb9);
S_StartSound(bail, sfx_gshb9); // I tried to use info.c, but you can't play sounds on mobjspawn via A_PlaySound
S_StartSound(bail, sfx_kc4e);
P_SetTarget(&bail->target, player->mo);
bail->renderflags |= RF_FULLBRIGHT; // set fullbright here, were gonna animate frames in the thinker and it saves us from setting FF_FULLBRIGHT every frame
}
@ -13980,7 +13981,6 @@ void K_MoveKartPlayer(player_t *player, boolean onground)
player->bailcharge = 0;
mobj_t *bail = P_SpawnMobj(player->mo->x, player->mo->y, player->mo->z + player->mo->height/2, MT_BAIL);
S_StartSound(bail, sfx_kc33);
P_SetTarget(&bail->target, player->mo);
UINT32 debtrings = 20;
@ -14054,7 +14054,7 @@ void K_MoveKartPlayer(player_t *player, boolean onground)
if (player->amps > 0)
K_DefensiveOverdrive(player);
S_StartSound(player->mo, sfx_gshdd);
S_StartSound(player->mo, sfx_kc33);
}
if (player && player->mo && K_PlayerCanUseItem(player))

View file

@ -57,12 +57,6 @@ void Obj_BailChargeThink (mobj_t *aura)
mobj_t *mo = aura->target;
player_t *player = mo->player;
// play sound
if (aura->target->player->bailcharge == 34 || aura->target->player->bailcharge == 34)
{
S_StartSound(aura, sfx_kc4e);
}
// Follow player
aura->flags &= ~(MF_NOCLIPTHING);
P_MoveOrigin(aura, mo->x, mo->y, mo->z + mo->height/2);