mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2026-02-23 14:01:14 +00:00
Damage hitlag sounds
This commit is contained in:
parent
c35b7d2f4f
commit
8e62117596
5 changed files with 50 additions and 2 deletions
|
|
@ -18,6 +18,7 @@
|
|||
#include "m_random.h"
|
||||
#include "p_local.h"
|
||||
#include "r_main.h"
|
||||
#include "s_sound.h"
|
||||
|
||||
/*--------------------------------------------------
|
||||
void K_AddHitLag(mobj_t *mo, INT32 tics, boolean fromDamage)
|
||||
|
|
@ -129,13 +130,38 @@ static void K_SpawnSingleHitLagSpark(
|
|||
}
|
||||
}
|
||||
|
||||
/*--------------------------------------------------
|
||||
static void K_PlayHitLagSFX(mobj_t *victim, UINT8 tics)
|
||||
|
||||
Plays a damage sound for a player.
|
||||
|
||||
Input Arguments:-
|
||||
victim - Object getting damaged.
|
||||
tics - How long the hitlag was.
|
||||
|
||||
Return:-
|
||||
N/A
|
||||
--------------------------------------------------*/
|
||||
static void K_PlayHitLagSFX(mobj_t *victim, UINT8 tics)
|
||||
{
|
||||
sfxenum_t soundID = sfx_dmga1;
|
||||
|
||||
if (P_Random(PR_DECORATION) & 1) // might want to use this set for some other scenario, instead of randomized?
|
||||
{
|
||||
soundID = sfx_dmgb1;
|
||||
}
|
||||
|
||||
soundID += ((tics * (NUM_HITLAG_SOUNDS - 1)) + (MAXHITLAGTICS >> 1)) / MAXHITLAGTICS;
|
||||
S_StartSound(victim, soundID);
|
||||
}
|
||||
|
||||
/*--------------------------------------------------
|
||||
static void K_SpawnHitLagEFX(mobj_t *victim, mobj_t *inflictor, mobj_t *source, UINT8 tics)
|
||||
|
||||
Spawns several hitlag sparks for damage.
|
||||
|
||||
Input Arguments:-
|
||||
victim - Object getting touched.
|
||||
victim - Object getting damaged.
|
||||
inflictor - Object touching the victim. May be NULL.
|
||||
source - Object that inflictor came from. May be NULL or same as inflictor.
|
||||
tics - How long the hitlag was.
|
||||
|
|
@ -152,6 +178,7 @@ static void K_SpawnHitLagEFX(mobj_t *victim, mobj_t *inflictor, mobj_t *source,
|
|||
|
||||
I_Assert(P_MobjWasRemoved(victim) == false);
|
||||
|
||||
K_PlayHitLagSFX(victim, tics);
|
||||
P_StartQuakeFromMobj(tics, tics * 2 * mapobjectscale, 512 * mapobjectscale, victim);
|
||||
|
||||
if (P_MobjWasRemoved(inflictor) == false)
|
||||
|
|
|
|||
|
|
@ -23,6 +23,7 @@ extern "C" {
|
|||
#define MAXHITLAGTICS (30)
|
||||
#define HITLAGJITTERS (FRACUNIT / 20)
|
||||
#define NUM_HITLAG_STATES (9)
|
||||
#define NUM_HITLAG_SOUNDS (4)
|
||||
|
||||
/*--------------------------------------------------
|
||||
void K_AddHitLag(mobj_t *mo, INT32 tics, boolean fromDamage);
|
||||
|
|
|
|||
|
|
@ -2752,7 +2752,7 @@ boolean P_DamageMobj(mobj_t *target, mobj_t *inflictor, mobj_t *source, INT32 da
|
|||
if (type != DMG_STING)
|
||||
player->flashing = K_GetKartFlashing(player);
|
||||
|
||||
P_PlayRinglossSound(target);
|
||||
//P_PlayRinglossSound(target);
|
||||
P_PlayerRingBurst(player, ringburst);
|
||||
|
||||
K_PopPlayerShield(player);
|
||||
|
|
|
|||
10
src/sounds.c
10
src/sounds.c
|
|
@ -1210,6 +1210,16 @@ sfxinfo_t S_sfx[NUMSFX] =
|
|||
|
||||
{"rank", false, 64, 0, -1, NULL, 0, -1, -1, LUMPERROR, ""}, // Rank slam
|
||||
|
||||
// Damage sounds
|
||||
{"dmga1", false, 64, 8, -1, NULL, 0, -1, -1, LUMPERROR, "Damaged"},
|
||||
{"dmga2", false, 64, 8, -1, NULL, 0, -1, -1, LUMPERROR, "Damaged"},
|
||||
{"dmga3", false, 64, 8, -1, NULL, 0, -1, -1, LUMPERROR, "Damaged"},
|
||||
{"dmga4", false, 64, 8, -1, NULL, 0, -1, -1, LUMPERROR, "Damaged"},
|
||||
{"dmgb1", false, 64, 8, -1, NULL, 0, -1, -1, LUMPERROR, "Damaged"},
|
||||
{"dmgb2", false, 64, 8, -1, NULL, 0, -1, -1, LUMPERROR, "Damaged"},
|
||||
{"dmgb3", false, 64, 8, -1, NULL, 0, -1, -1, LUMPERROR, "Damaged"},
|
||||
{"dmgb4", false, 64, 8, -1, NULL, 0, -1, -1, LUMPERROR, "Damaged"},
|
||||
|
||||
// SRB2Kart - Engine sounds
|
||||
// Engine class A
|
||||
{"krta00", false, 48, 65, -1, NULL, 0, -1, -1, LUMPERROR, ""},
|
||||
|
|
|
|||
10
src/sounds.h
10
src/sounds.h
|
|
@ -1279,6 +1279,16 @@ typedef enum
|
|||
|
||||
sfx_rank,
|
||||
|
||||
// Damage sounds
|
||||
sfx_dmga1,
|
||||
sfx_dmga2,
|
||||
sfx_dmga3,
|
||||
sfx_dmga4,
|
||||
sfx_dmgb1,
|
||||
sfx_dmgb2,
|
||||
sfx_dmgb3,
|
||||
sfx_dmgb4,
|
||||
|
||||
// Next up: UNIQUE ENGINE SOUNDS! Hoooooo boy...
|
||||
// Engine class A - Low Speed, Low Weight
|
||||
sfx_krta00,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue