diff --git a/src/info.c b/src/info.c index f71c0ad72..2dca39e7d 100644 --- a/src/info.c +++ b/src/info.c @@ -22753,7 +22753,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] = S_NULL, // missilestate S_NULL, // deathstate S_NULL, // xdeathstate - sfx_None, // deathsound + sfx_exp, // deathsound 1, // speed 32*FRACUNIT, // radius 32*FRACUNIT, // height diff --git a/src/objects/exp.c b/src/objects/exp.c index f0e1d4f3f..235e91b1e 100644 --- a/src/objects/exp.c +++ b/src/objects/exp.c @@ -85,7 +85,12 @@ void Obj_ExpThink (mobj_t *exp) exp->extravalue1++; if (exp->extravalue1 >= 16) + { + S_StopSoundByID(exp->target, sfx_exp); + S_StartSound(exp->target, sfx_exp); P_RemoveMobj(exp); + } + return; } @@ -140,4 +145,4 @@ void Obj_ExpThink (mobj_t *exp) exp->extravalue2 = 0; } } -} \ No newline at end of file +} diff --git a/src/sounds.c b/src/sounds.c index 6c092bf3d..483d7d11e 100644 --- a/src/sounds.c +++ b/src/sounds.c @@ -1266,6 +1266,9 @@ sfxinfo_t S_sfx[NUMSFX] = {"hint", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR, "Hint Ring"}, + {"exp", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR, "EXP Crystal"}, // When it gets sucked in + + // Damage sounds {"dmga1", false, 255, 8, -1, NULL, 0, -1, -1, LUMPERROR, "Damaged"}, {"dmga2", false, 255, 8, -1, NULL, 0, -1, -1, LUMPERROR, "Damaged"}, diff --git a/src/sounds.h b/src/sounds.h index 7d87f1e85..cc9de28f0 100644 --- a/src/sounds.h +++ b/src/sounds.h @@ -1342,6 +1342,9 @@ typedef enum // Tutorial Hint sfx_hint, + // EXP Crystal + sfx_exp, + // Damage sounds sfx_dmga1, sfx_dmga2,