Chaotix sound effects, new music names

This commit is contained in:
TehRealSalt 2018-02-10 16:01:09 -05:00
parent 2889687d1d
commit 4348be7d80
11 changed files with 194 additions and 87 deletions

View File

@ -2604,10 +2604,10 @@ state_t states[NUMSTATES] =
{SPR_KINV, FF_FULLBRIGHT|6, 1, {NULL}, 0, 0, S_KARTINVULN_LARGE5}, // S_KARTINVULN_LARGE4 {SPR_KINV, FF_FULLBRIGHT|6, 1, {NULL}, 0, 0, S_KARTINVULN_LARGE5}, // S_KARTINVULN_LARGE4
{SPR_KINV, FF_FULLBRIGHT|7, 1, {NULL}, 0, 0, S_NULL}, // S_KARTINVULN_LARGE5 {SPR_KINV, FF_FULLBRIGHT|7, 1, {NULL}, 0, 0, S_NULL}, // S_KARTINVULN_LARGE5
{SPR_KINF, FF_FULLBRIGHT|FF_TRANS80, 1, {NULL}, 0, 0, S_INVULNFLASH2}, // S_INVULNFLASH1 {SPR_KINF, FF_FULLBRIGHT|FF_TRANS90, 1, {NULL}, 0, 0, S_INVULNFLASH2}, // S_INVULNFLASH1
{SPR_NULL, FF_FULLBRIGHT|FF_TRANS80, 1, {NULL}, 0, 0, S_INVULNFLASH3}, // S_INVULNFLASH2 {SPR_NULL, FF_FULLBRIGHT|FF_TRANS90, 1, {NULL}, 0, 0, S_INVULNFLASH3}, // S_INVULNFLASH2
{SPR_KINF, FF_FULLBRIGHT|FF_TRANS80|1, 1, {NULL}, 0, 0, S_INVULNFLASH4}, // S_INVULNFLASH3 {SPR_KINF, FF_FULLBRIGHT|FF_TRANS90|1, 1, {NULL}, 0, 0, S_INVULNFLASH4}, // S_INVULNFLASH3
{SPR_NULL, FF_FULLBRIGHT|FF_TRANS80, 1, {NULL}, 0, 0, S_INVULNFLASH1}, // S_INVULNFLASH4 {SPR_NULL, FF_FULLBRIGHT|FF_TRANS90, 1, {NULL}, 0, 0, S_INVULNFLASH1}, // S_INVULNFLASH4
{SPR_FITM, 0, 3, {NULL}, 0, 0, S_FAKEITEM2}, // S_FAKEITEM1 {SPR_FITM, 0, 3, {NULL}, 0, 0, S_FAKEITEM2}, // S_FAKEITEM1
{SPR_FITM, 1, 3, {NULL}, 0, 0, S_FAKEITEM3}, // S_FAKEITEM2 {SPR_FITM, 1, 3, {NULL}, 0, 0, S_FAKEITEM3}, // S_FAKEITEM2

View File

@ -1200,17 +1200,17 @@ void K_KartPlayerThink(player_t *player, ticcmd_t *cmd)
// Stopping of the horrible invincibility SFX // Stopping of the horrible invincibility SFX
if (player->mo->health <= 0 || player->mo->player->kartstuff[k_invincibilitytimer] <= 0 if (player->mo->health <= 0 || player->mo->player->kartstuff[k_invincibilitytimer] <= 0
|| player->mo->player->kartstuff[k_growshrinktimer] > 0) // If you don't have invincibility (or mega is active too) || player->mo->player->kartstuff[k_growshrinktimer] > 0) // If you don't have invincibility (or grow is active too)
{ {
if (S_SoundPlaying(player->mo, sfx_star)) // But the sound is playing if (S_SoundPlaying(player->mo, sfx_kinvnc)) // But the sound is playing
S_StopSoundByID(player->mo, sfx_star); // Stop it S_StopSoundByID(player->mo, sfx_kinvnc); // Stop it
} }
// And the same for the grow SFX // And the same for the grow SFX
if (!(player->mo->health > 0 && player->mo->player->kartstuff[k_growshrinktimer] > 0)) // If you aren't big if (!(player->mo->health > 0 && player->mo->player->kartstuff[k_growshrinktimer] > 0)) // If you aren't big
{ {
if (S_SoundPlaying(player->mo, sfx_mega)) // But the sound is playing if (S_SoundPlaying(player->mo, sfx_kgrow)) // But the sound is playing
S_StopSoundByID(player->mo, sfx_mega); // Stop it S_StopSoundByID(player->mo, sfx_kgrow); // Stop it
} }
// AAAAAAND handle the SMK star alarm // AAAAAAND handle the SMK star alarm
@ -1287,17 +1287,7 @@ static fixed_t K_GetKartBoostPower(player_t *player, boolean speed)
&& player->kartstuff[k_offroad] >= 0 && speed) && player->kartstuff[k_offroad] >= 0 && speed)
boostpower = FixedDiv(boostpower, player->kartstuff[k_offroad] + FRACUNIT); boostpower = FixedDiv(boostpower, player->kartstuff[k_offroad] + FRACUNIT);
if (player->kartstuff[k_growshrinktimer] > 1 if (player->kartstuff[k_growshrinktimer] > 0)
&& (player->kartstuff[k_growshrinktimer] > ((itemtime + TICRATE*2) - 25)
|| player->kartstuff[k_growshrinktimer] <= 26))
{ // Grow - Mid-size
if (speed)
{
boostvalue = max(boostvalue, FRACUNIT/8); // + 12.5%
}
}
if (player->kartstuff[k_growshrinktimer] < ((itemtime + TICRATE*2) - 25)
&& player->kartstuff[k_growshrinktimer] > 26)
{ // Grow { // Grow
if (speed) if (speed)
{ {
@ -1990,12 +1980,11 @@ void K_SpawnSparkleTrail(player_t *player)
P_SetMobjState(sparkle, S_KARTINVULN_LARGE1); P_SetMobjState(sparkle, S_KARTINVULN_LARGE1);
P_SetTarget(&sparkle->target, player->mo); P_SetTarget(&sparkle->target, player->mo);
//sparkle->fuse = 10; sparkle->destscale = player->mo->destscale;
sparkle->destscale = player->mo->scale;
P_SetScale(sparkle, player->mo->scale); P_SetScale(sparkle, player->mo->scale);
sparkle->eflags = (sparkle->eflags & ~MFE_VERTICALFLIP)|(player->mo->eflags & MFE_VERTICALFLIP); sparkle->eflags = (sparkle->eflags & ~MFE_VERTICALFLIP)|(player->mo->eflags & MFE_VERTICALFLIP);
sparkle->color = player->mo->color; sparkle->color = player->mo->color;
sparkle->colorized = player->mo->colorized; //sparkle->colorized = player->mo->colorized;
} }
} }
@ -2011,17 +2000,17 @@ static mobj_t *K_ThrowKartItem(player_t *player, boolean missile, mobjtype_t map
if (!player) if (!player)
return NULL; return NULL;
// Figure out projectile speed by CC // Figure out projectile speed by game speed
switch (gamespeed) switch (gamespeed)
{ {
case 0: case 0:
PROJSPEED = 68*FRACUNIT; // Avg Speed is 34 PROJSPEED = 68*(mapheaderinfo[gamemap-1]->mobj_scale); // Avg Speed is 34
break; break;
case 2: case 2:
PROJSPEED = 96*FRACUNIT; // Avg Speed is 48 PROJSPEED = 96*(mapheaderinfo[gamemap-1]->mobj_scale); // Avg Speed is 48
break; break;
default: default:
PROJSPEED = 82*FRACUNIT; // Avg Speed is 41 PROJSPEED = 82*(mapheaderinfo[gamemap-1]->mobj_scale); // Avg Speed is 41
break; break;
} }
@ -2254,15 +2243,16 @@ static void K_DoShrink(player_t *player, boolean spb)
{ {
mobj_t *mo; mobj_t *mo;
thinker_t *think; thinker_t *think;
INT32 i; //INT32 i;
S_StartSound(player->mo, sfx_bkpoof); // Sound the BANG!
//S_StartSound(player->mo, sfx_bkpoof); // Sound the BANG!
player->pflags |= PF_ATTACKDOWN; player->pflags |= PF_ATTACKDOWN;
for (i = 0; i < MAXPLAYERS; i++) /*for (i = 0; i < MAXPLAYERS; i++)
{ {
if (playeringame[i]) if (playeringame[i])
P_FlashPal(&players[i], PAL_NUKE, 10); P_FlashPal(&players[i], PAL_NUKE, 10);
} }*/
for (think = thinkercap.next; think != &thinkercap; think = think->next) for (think = thinkercap.next; think != &thinkercap; think = think->next)
{ {
@ -2272,7 +2262,7 @@ static void K_DoShrink(player_t *player, boolean spb)
mo = (mobj_t *)think; mo = (mobj_t *)think;
if (mo->player && !mo->player->spectator if (mo->player && !mo->player->spectator
&& mo->player->kartstuff[k_position] > player->kartstuff[k_position]) && mo->player->kartstuff[k_position] < player->kartstuff[k_position])
P_DamageMobj(mo, player->mo, player->mo, spb ? 65 : 64); P_DamageMobj(mo, player->mo, player->mo, spb ? 65 : 64);
else else
continue; continue;
@ -2285,7 +2275,7 @@ static void K_DoShrink(player_t *player, boolean spb)
player->kartstuff[k_sounds] = 50; player->kartstuff[k_sounds] = 50;
} }
void K_DoBouncePad(mobj_t *mo, fixed_t vertispeed) void K_DoPogoSpring(mobj_t *mo, fixed_t vertispeed)
{ {
if (mo->player && mo->player->spectator) if (mo->player && mo->player->spectator)
return; return;
@ -2332,7 +2322,7 @@ void K_DoBouncePad(mobj_t *mo, fixed_t vertispeed)
else else
mo->momz = FixedMul(vertispeed, mo->scale); mo->momz = FixedMul(vertispeed, mo->scale);
S_StartSound(mo, sfx_boing); S_StartSound(mo, sfx_kc2f);
} }
// Returns false if this player being placed here causes them to collide with any other player // Returns false if this player being placed here causes them to collide with any other player
@ -2753,14 +2743,16 @@ void K_MoveKartPlayer(player_t *player, boolean onground)
if (ATTACK_IS_DOWN && !HOLDING_ITEM && NO_HYUDORO) // Doesn't hold your item slot hostage normally, so you're free to waste it if you have multiple if (ATTACK_IS_DOWN && !HOLDING_ITEM && NO_HYUDORO) // Doesn't hold your item slot hostage normally, so you're free to waste it if you have multiple
{ {
if (P_IsLocalPlayer(player) && !player->exiting) if (P_IsLocalPlayer(player) && !player->exiting)
S_ChangeMusicInternal("minvnc", true); S_ChangeMusicInternal("kinvnc", true);
if (!cv_kartstarsfx.value && !P_IsLocalPlayer(player)) if (!cv_kartstarsfx.value && !P_IsLocalPlayer(player))
S_StartSound(player->mo, sfx_star); S_StartSound(player->mo, sfx_kinvnc);
if (!player->kartstuff[k_invincibilitytimer]) if (!player->kartstuff[k_invincibilitytimer])
{ {
mobj_t *overlay = P_SpawnMobj(player->mo->x, player->mo->y, player->mo->z, MT_OVERLAY); mobj_t *overlay = P_SpawnMobj(player->mo->x, player->mo->y, player->mo->z, MT_OVERLAY);
P_SetTarget(&overlay->target, player->mo); P_SetTarget(&overlay->target, player->mo);
P_SetMobjState(overlay, S_INVULNFLASH1); P_SetMobjState(overlay, S_INVULNFLASH1);
overlay->destscale = player->mo->scale;
P_SetScale(overlay, player->mo->scale);
} }
player->kartstuff[k_invincibilitytimer] = itemtime; // Activate it player->kartstuff[k_invincibilitytimer] = itemtime; // Activate it
K_PlayTauntSound(player->mo); K_PlayTauntSound(player->mo);
@ -3044,12 +3036,13 @@ void K_MoveKartPlayer(player_t *player, boolean onground)
&& player->kartstuff[k_growshrinktimer] <= 0) // Grow holds the item box hostage && player->kartstuff[k_growshrinktimer] <= 0) // Grow holds the item box hostage
{ {
if (P_IsLocalPlayer(player) && !player->exiting) if (P_IsLocalPlayer(player) && !player->exiting)
S_ChangeMusicInternal("mega", true); S_ChangeMusicInternal("kgrow", true);
if (!cv_kartstarsfx.value && !P_IsLocalPlayer(player)) if (!cv_kartstarsfx.value && !P_IsLocalPlayer(player))
S_StartSound(player->mo, sfx_mega); S_StartSound(player->mo, sfx_kgrow);
K_PlayTauntSound(player->mo); K_PlayTauntSound(player->mo);
player->kartstuff[k_growshrinktimer] = itemtime + TICRATE*2; player->mo->destscale = 3*(mapheaderinfo[gamemap-1]->mobj_scale)/2;
S_StartSound(player->mo, sfx_mario3); player->kartstuff[k_growshrinktimer] = itemtime;
S_StartSound(player->mo, sfx_kc5a);
player->pflags |= PF_ATTACKDOWN; player->pflags |= PF_ATTACKDOWN;
player->kartstuff[k_itemamount]--; player->kartstuff[k_itemamount]--;
if (gametype != GT_RACE) if (gametype != GT_RACE)
@ -3084,7 +3077,7 @@ void K_MoveKartPlayer(player_t *player, boolean onground)
&& !player->kartstuff[k_pogospring]) && !player->kartstuff[k_pogospring])
{ {
K_PlayTauntSound(player->mo); K_PlayTauntSound(player->mo);
K_DoBouncePad(player->mo, 32<<FRACBITS); K_DoPogoSpring(player->mo, 32<<FRACBITS);
player->pflags |= PF_ATTACKDOWN; player->pflags |= PF_ATTACKDOWN;
player->kartstuff[k_pogospring] = 1; player->kartstuff[k_pogospring] = 1;
@ -3118,27 +3111,8 @@ void K_MoveKartPlayer(player_t *player, boolean onground)
player->kartstuff[k_boosting] = 0; player->kartstuff[k_boosting] = 0;
// Grow - Make the player grow! // Grow - Make the player grow!
if (player->kartstuff[k_growshrinktimer] > ((itemtime + TICRATE*2) - 25)) /*if (player->kartstuff[k_growshrinktimer] > 1)
{ player->mo->destscale = (mapheaderinfo[gamemap-1]->mobj_scale)*3/2;*/
if (leveltime & 2)
player->mo->destscale = (mapheaderinfo[gamemap-1]->mobj_scale)*3/2;
else
player->mo->destscale = (mapheaderinfo[gamemap-1]->mobj_scale);
}
else if (player->kartstuff[k_growshrinktimer] > 26
&& player->kartstuff[k_growshrinktimer] <= ((itemtime + TICRATE*2) - 25))
player->mo->destscale = (mapheaderinfo[gamemap-1]->mobj_scale)*3/2;
// Grow - Back to normal...
else if (player->kartstuff[k_growshrinktimer] > 1
&& player->kartstuff[k_growshrinktimer] <= 26)
{
if (leveltime & 2)
player->mo->destscale = (mapheaderinfo[gamemap-1]->mobj_scale);
else
player->mo->destscale = (mapheaderinfo[gamemap-1]->mobj_scale)*3/2;
}
if (player->kartstuff[k_growshrinktimer] == 26)
S_StartSound(player->mo, sfx_mario8);
if ((gametype != GT_RACE) if ((gametype != GT_RACE)
&& (player->kartstuff[k_itemtype] == KITEM_INVINCIBILITY && (player->kartstuff[k_itemtype] == KITEM_INVINCIBILITY

View File

@ -31,7 +31,7 @@ void K_SpawnMineExplosion(mobj_t *source, UINT8 color);
void K_SpawnDriftTrail(player_t *player); void K_SpawnDriftTrail(player_t *player);
void K_SpawnSparkleTrail(player_t *player); void K_SpawnSparkleTrail(player_t *player);
void K_DoSneaker(player_t *player, boolean doPFlag, boolean startboost); void K_DoSneaker(player_t *player, boolean doPFlag, boolean startboost);
void K_DoBouncePad(mobj_t *mo, fixed_t vertispeed); void K_DoPogoSpring(mobj_t *mo, fixed_t vertispeed);
boolean K_CheckPlayersRespawnColliding(INT32 playernum, fixed_t x, fixed_t y); boolean K_CheckPlayersRespawnColliding(INT32 playernum, fixed_t x, fixed_t y);
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);

View File

@ -2112,14 +2112,14 @@ static int lib_kDoSneaker(lua_State *L)
return 0; return 0;
} }
static int lib_kDoBouncePad(lua_State *L) static int lib_kDoPogoSpring(lua_State *L)
{ {
mobj_t *mo = *((mobj_t **)luaL_checkudata(L, 1, META_MOBJ)); mobj_t *mo = *((mobj_t **)luaL_checkudata(L, 1, META_MOBJ));
fixed_t vertispeed = luaL_checkfixed(L, 2); fixed_t vertispeed = luaL_checkfixed(L, 2);
NOHUD NOHUD
if (!mo) if (!mo)
return LUA_ErrInvalid(L, "mobj_t"); return LUA_ErrInvalid(L, "mobj_t");
K_DoBouncePad(mo, vertispeed); K_DoPogoSpring(mo, vertispeed);
return 0; return 0;
} }
@ -2348,7 +2348,7 @@ static luaL_Reg lib[] = {
{"K_SpawnDriftTrail",lib_kSpawnDriftTrail}, {"K_SpawnDriftTrail",lib_kSpawnDriftTrail},
{"K_SpawnSparkleTrail",lib_kSpawnSparkleTrail}, {"K_SpawnSparkleTrail",lib_kSpawnSparkleTrail},
{"K_DoSneaker",lib_kDoSneaker}, {"K_DoSneaker",lib_kDoSneaker},
{"K_DoBouncePad",lib_kDoBouncePad}, {"K_DoPogoSpring",lib_kDoPogoSpring},
{"K_MomentumToFacing",lib_kMomentumToFacing}, {"K_MomentumToFacing",lib_kMomentumToFacing},
{"K_GetKartSpeed",lib_kGetKartSpeed}, {"K_GetKartSpeed",lib_kGetKartSpeed},
{"K_GetKartAccel",lib_kGetKartAccel}, {"K_GetKartAccel",lib_kGetKartAccel},

View File

@ -3135,7 +3135,8 @@ boolean P_DamageMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source, INT32 da
K_SpinPlayer(player, source); K_SpinPlayer(player, source);
// Start shrinking! // Start shrinking!
player->mo->destscale = 6*FRACUNIT/8; S_StartSound(player->mo, sfx_kc59);
player->mo->destscale = 6*(mapheaderinfo[gamemap-1]->mobj_scale)/8;
player->kartstuff[k_growshrinktimer] -= (100+20*(16-(player->kartstuff[k_position]))); player->kartstuff[k_growshrinktimer] -= (100+20*(16-(player->kartstuff[k_position])));
} }
// Grow? Let's take that away. // Grow? Let's take that away.

View File

@ -7790,7 +7790,7 @@ void P_MobjThinker(mobj_t *mobj)
if ((sec2 && GETSECSPECIAL(sec2->special, 3) == 1) if ((sec2 && GETSECSPECIAL(sec2->special, 3) == 1)
|| (P_IsObjectOnRealGround(mobj, mobj->subsector->sector) || (P_IsObjectOnRealGround(mobj, mobj->subsector->sector)
&& GETSECSPECIAL(mobj->subsector->sector->special, 3) == 1)) && GETSECSPECIAL(mobj->subsector->sector->special, 3) == 1))
K_DoBouncePad(mobj, 0); K_DoPogoSpring(mobj, 0);
if (mobj->threshold > 0) if (mobj->threshold > 0)
mobj->threshold--; mobj->threshold--;
@ -7852,7 +7852,7 @@ void P_MobjThinker(mobj_t *mobj)
if ((sec2 && GETSECSPECIAL(sec2->special, 3) == 1) if ((sec2 && GETSECSPECIAL(sec2->special, 3) == 1)
|| (P_IsObjectOnRealGround(mobj, mobj->subsector->sector) || (P_IsObjectOnRealGround(mobj, mobj->subsector->sector)
&& GETSECSPECIAL(mobj->subsector->sector->special, 3) == 1)) && GETSECSPECIAL(mobj->subsector->sector->special, 3) == 1))
K_DoBouncePad(mobj, 0); K_DoPogoSpring(mobj, 0);
break; break;
} }
@ -7868,7 +7868,7 @@ void P_MobjThinker(mobj_t *mobj)
if ((sec2 && GETSECSPECIAL(sec2->special, 3) == 1) if ((sec2 && GETSECSPECIAL(sec2->special, 3) == 1)
|| (P_IsObjectOnRealGround(mobj, mobj->subsector->sector) || (P_IsObjectOnRealGround(mobj, mobj->subsector->sector)
&& GETSECSPECIAL(mobj->subsector->sector->special, 3) == 1)) && GETSECSPECIAL(mobj->subsector->sector->special, 3) == 1))
K_DoBouncePad(mobj, 0); K_DoPogoSpring(mobj, 0);
if (mobj->threshold > 0) if (mobj->threshold > 0)
mobj->threshold--; mobj->threshold--;

View File

@ -3753,7 +3753,7 @@ DoneSection2:
P_InstaThrust(player->mo, player->mo->angle, FixedMul(K_GetKartSpeed(player, true)/4, player->mo->scale)); P_InstaThrust(player->mo, player->mo->angle, FixedMul(K_GetKartSpeed(player, true)/4, player->mo->scale));
player->kartstuff[k_pogospring] = 1; player->kartstuff[k_pogospring] = 1;
K_DoBouncePad(player->mo, 0); K_DoPogoSpring(player->mo, 0);
} }
break; break;

View File

@ -1136,11 +1136,11 @@ void P_RestoreMusic(player_t *player)
{ {
// Item - Grow // Item - Grow
if (player->kartstuff[k_growshrinktimer] > 1) if (player->kartstuff[k_growshrinktimer] > 1)
S_ChangeMusicInternal("mega", true); S_ChangeMusicInternal("kgrow", true);
// Item - Star // Item - Star
else if (player->kartstuff[k_invincibilitytimer] > 1) else if (player->kartstuff[k_invincibilitytimer] > 1)
S_ChangeMusicInternal("minvnc", false); S_ChangeMusicInternal("kinvnc", false);
// Event - Final Lap // Event - Final Lap
else if (player->laps == (UINT8)(cv_numlaps.value - 1)) else if (player->laps == (UINT8)(cv_numlaps.value - 1))
@ -9660,7 +9660,7 @@ void P_PlayerThink(player_t *player)
// Flash player after being hit. // Flash player after being hit.
if (!(player->pflags & PF_NIGHTSMODE)) if (!(player->pflags & PF_NIGHTSMODE))
{ {
// SRB2kart - fixes boo not flashing when it should. Mega doesn't flash either. Flashing is local. // SRB2kart - fixes boo not flashing when it should. Grow doesn't flash either. Flashing is local.
if ((player == &players[displayplayer] if ((player == &players[displayplayer]
|| (splitscreen && player == &players[secondarydisplayplayer]) || (splitscreen && player == &players[secondarydisplayplayer])
|| (splitscreen > 1 && player == &players[thirddisplayplayer]) || (splitscreen > 1 && player == &players[thirddisplayplayer])

View File

@ -1464,12 +1464,6 @@ const char *compat_special_music_slots[21] =
"credit", // 1048 credits "credit", // 1048 credits
"racent", // 1049 Race Results "racent", // 1049 Race Results
"stjr", // 1050 Sonic Team Jr. Presents "stjr", // 1050 Sonic Team Jr. Presents
// SRB2kart 040217
"finlap", // 1051 Sonic Team Jr. Presents
"karwin", // 1052 Sonic Team Jr. Presents
"karok", // 1053 Sonic Team Jr. Presents
"karlos", // 1054 Sonic Team Jr. Presents
"mega", // 1055 Sonic Team Jr. Presents
"" ""
}; };
#endif #endif

View File

@ -476,8 +476,8 @@ sfxinfo_t S_sfx[NUMSFX] =
{"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}, {"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}, {"kinvnc", false, 140, 16, -1, NULL, 0, -1, -1, LUMPERROR},
{"mega", false, 140, 16, -1, NULL, 0, -1, -1, LUMPERROR}, {"kgrow", false, 140, 16, -1, NULL, 0, -1, -1, LUMPERROR},
{"bomb", false, 110, 0, -1, NULL, 0, -1, -1, LUMPERROR}, {"bomb", false, 110, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"bomb2", false, 110, 8, -1, NULL, 0, -1, -1, LUMPERROR}, {"bomb2", false, 110, 8, -1, NULL, 0, -1, -1, LUMPERROR},
{"peel", false, 100, 0, -1, NULL, 0, -1, -1, LUMPERROR}, {"peel", false, 100, 0, -1, NULL, 0, -1, -1, LUMPERROR},
@ -505,6 +505,76 @@ sfxinfo_t S_sfx[NUMSFX] =
{"boing", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR}, {"boing", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"smkinv", false, 140, 16, -1, NULL, 0, -1, -1, LUMPERROR}, {"smkinv", false, 140, 16, -1, NULL, 0, -1, -1, LUMPERROR},
// Knuckles Chaotix sounds
{"kc2a", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc2b", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc2c", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc2d", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc2e", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc2f", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR}, // Pogo Spring
{"kc30", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc31", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc32", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc33", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc34", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc35", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc36", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc37", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc38", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc39", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc3a", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc3b", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc3c", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc3d", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc3e", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc3f", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc40", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc41", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc42", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc43", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc44", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc45", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc46", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc47", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc48", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc49", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc4a", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc4b", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc4c", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc4d", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc4e", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc4f", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc50", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc51", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc52", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc53", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc54", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc55", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc56", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc57", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc58", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc59", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR}, // Shrink
{"kc5a", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR}, // Grow
{"kc5b", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc5c", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc5d", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc5e", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc5f", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc60", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc61", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc62", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc63", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc64", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc65", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc66", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc67", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc68", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc69", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc6b", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc6c", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc6d", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
{"kc6e", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR},
// SRB2kart - Skin sounds // SRB2kart - Skin sounds
{"kwin", false, 64, 0, -1, NULL, 0, SKSWIN, -1, LUMPERROR}, {"kwin", false, 64, 0, -1, NULL, 0, SKSWIN, -1, LUMPERROR},
{"klose", false, 64, 0, -1, NULL, 0, SKSLOSE, -1, LUMPERROR}, {"klose", false, 64, 0, -1, NULL, 0, SKSLOSE, -1, LUMPERROR},

View File

@ -548,8 +548,8 @@ typedef enum
sfx_mlap, sfx_mlap,
sfx_sboost, sfx_sboost,
sfx_mush, sfx_mush,
sfx_star, sfx_kinvnc,
sfx_mega, sfx_kgrow,
sfx_bomb, sfx_bomb,
sfx_bomb2, sfx_bomb2,
sfx_peel, sfx_peel,
@ -577,11 +577,79 @@ typedef enum
sfx_boing, sfx_boing,
sfx_smkinv, sfx_smkinv,
// KC sounds
sfx_kc2a,
sfx_kc2b,
sfx_kc2c,
sfx_kc2d,
sfx_kc2e,
sfx_kc2f,
sfx_kc30,
sfx_kc31,
sfx_kc32,
sfx_kc33,
sfx_kc34,
sfx_kc35,
sfx_kc36,
sfx_kc37,
sfx_kc38,
sfx_kc39,
sfx_kc3a,
sfx_kc3b,
sfx_kc3c,
sfx_kc3d,
sfx_kc3e,
sfx_kc3f,
sfx_kc40,
sfx_kc41,
sfx_kc42,
sfx_kc43,
sfx_kc44,
sfx_kc45,
sfx_kc46,
sfx_kc47,
sfx_kc48,
sfx_kc49,
sfx_kc4a,
sfx_kc4b,
sfx_kc4c,
sfx_kc4d,
sfx_kc4e,
sfx_kc4f,
sfx_kc50,
sfx_kc51,
sfx_kc52,
sfx_kc53,
sfx_kc54,
sfx_kc55,
sfx_kc56,
sfx_kc57,
sfx_kc58,
sfx_kc59,
sfx_kc5a,
sfx_kc5b,
sfx_kc5c,
sfx_kc5d,
sfx_kc5e,
sfx_kc5f,
sfx_kc60,
sfx_kc61,
sfx_kc62,
sfx_kc63,
sfx_kc64,
sfx_kc65,
sfx_kc66,
sfx_kc67,
sfx_kc68,
sfx_kc69,
sfx_kc6b,
sfx_kc6c,
sfx_kc6d,
sfx_kc6e,
sfx_kwin, sfx_kwin,
sfx_klose, sfx_klose,
sfx_slow, sfx_slow,
//
sfx_taunt1, sfx_taunt1,
sfx_taunt2, sfx_taunt2,
sfx_taunt3, sfx_taunt3,