mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2026-01-01 12:43:33 +00:00
Turn sparkles that warn you when you're about to hit a new drift spark!
This commit is contained in:
parent
7d1c132ca2
commit
c4dd88bbae
4 changed files with 63 additions and 4 deletions
|
|
@ -6359,6 +6359,12 @@ static const char *const STATE_LIST[] = { // array length left dynamic for sanit
|
|||
"S_DRIFTDUST3",
|
||||
"S_DRIFTDUST4",
|
||||
|
||||
// Drift Sparkles
|
||||
"S_DRIFTWARNSPARK1",
|
||||
"S_DRIFTWARNSPARK2",
|
||||
"S_DRIFTWARNSPARK3",
|
||||
"S_DRIFTWARNSPARK4",
|
||||
|
||||
// Fast lines
|
||||
"S_FASTLINE1",
|
||||
"S_FASTLINE2",
|
||||
|
|
|
|||
13
src/info.c
13
src/info.c
|
|
@ -57,10 +57,10 @@ char sprnames[NUMSPRITES + 1][5] =
|
|||
"SRBL","SRBM","SRBN","SRBO",
|
||||
//SRB2kart Sprites
|
||||
"RNDM","RPOP","SGNS","FAST","DSHR","BOST","BOSM","KFRE","KINV","KINF",
|
||||
"WIPD","DRIF","BDRF","DUST","RSHE","FITM","BANA","ORBN","JAWZ","SSMN",
|
||||
"KRBM","BHOG","BHBM","SPBM","THNS","SINK","SITR","KBLN","DEZL","POKE",
|
||||
"AUDI","DECO","DOOD","SNES","GBAS","SPRS","BUZB","CHOM","SACO","CRAB",
|
||||
"BRNG","BUMP","FLEN","CLAS","PSHW","ISTA","ISTB","ARRO","ITEM",
|
||||
"WIPD","DRIF","BDRF","DUST","DRWS","RSHE","FITM","BANA","ORBN","JAWZ",
|
||||
"SSMN","KRBM","BHOG","BHBM","SPBM","THNS","SINK","SITR","KBLN","DEZL",
|
||||
"POKE","AUDI","DECO","DOOD","SNES","GBAS","SPRS","BUZB","CHOM","SACO",
|
||||
"CRAB","BRNG","BUMP","FLEN","CLAS","PSHW","ISTA","ISTB","ARRO","ITEM",
|
||||
"ITMO","ITMI","ITMN","WANT","PBOM","HIT1","HIT2","HIT3","RETI","AIDU",
|
||||
"KSPK","LZI1","LZI2","KLIT","FZSM","FZBM","FPRT","SBUS","MARB","FUFO",
|
||||
"RUST","BLON","VAPE","HTZA","HTZB","SGVA","SGVB","SGVC","PGTR","PGF1",
|
||||
|
|
@ -2597,6 +2597,11 @@ state_t states[NUMSTATES] =
|
|||
{SPR_DUST, FF_TRANS20|2, 3, {NULL}, 0, 0, S_DRIFTDUST4}, // S_DRIFTDUST3
|
||||
{SPR_DUST, FF_TRANS20|3, 3, {NULL}, 0, 0, S_NULL}, // S_DRIFTDUST4
|
||||
|
||||
{SPR_DRWS, FF_FULLBRIGHT|0, 3, {NULL}, 0, 0, S_DRIFTWARNSPARK2}, // S_DRIFTWARNSPARK1
|
||||
{SPR_DRWS, FF_FULLBRIGHT|1, 3, {NULL}, 0, 0, S_DRIFTWARNSPARK3}, // S_DRIFTWARNSPARK2
|
||||
{SPR_DRWS, FF_FULLBRIGHT|FF_TRANS20|2, 3, {NULL}, 0, 0, S_DRIFTWARNSPARK4}, // S_DRIFTWARNSPARK3
|
||||
{SPR_DRWS, FF_FULLBRIGHT|FF_TRANS20|3, 3, {NULL}, 0, 0, S_NULL}, // S_DRIFTWARNSPARK4
|
||||
|
||||
{SPR_FAST, FF_PAPERSPRITE|FF_FULLBRIGHT, 1, {NULL}, 0, 0, S_FASTLINE2}, // S_FASTLINE1
|
||||
{SPR_FAST, FF_PAPERSPRITE|FF_FULLBRIGHT|1, 1, {NULL}, 0, 0, S_FASTLINE3}, // S_FASTLINE2
|
||||
{SPR_FAST, FF_PAPERSPRITE|FF_FULLBRIGHT|2, 1, {NULL}, 0, 0, S_FASTLINE4}, // S_FASTLINE3
|
||||
|
|
|
|||
|
|
@ -608,6 +608,7 @@ typedef enum sprite
|
|||
SPR_DRIF, // Drift Sparks
|
||||
SPR_BDRF, // Brake drift sparks
|
||||
SPR_DUST, // Drift Dust
|
||||
SPR_DRWS, // Drift dust sparks
|
||||
|
||||
// Kart Items
|
||||
SPR_RSHE, // Rocket sneaker
|
||||
|
|
@ -3248,6 +3249,12 @@ typedef enum state
|
|||
S_DRIFTDUST3,
|
||||
S_DRIFTDUST4,
|
||||
|
||||
// Drift Sparkles
|
||||
S_DRIFTWARNSPARK1,
|
||||
S_DRIFTWARNSPARK2,
|
||||
S_DRIFTWARNSPARK3,
|
||||
S_DRIFTWARNSPARK4,
|
||||
|
||||
// Fast lines
|
||||
S_FASTLINE1,
|
||||
S_FASTLINE2,
|
||||
|
|
|
|||
41
src/k_kart.c
41
src/k_kart.c
|
|
@ -3587,6 +3587,47 @@ void K_DriftDustHandling(mobj_t *spawner)
|
|||
S_StartSound(spawner, sfx_screec);
|
||||
|
||||
K_MatchGenericExtraFlags(dust, spawner);
|
||||
|
||||
// Sparkle-y warning for when you're about to change drift sparks!
|
||||
if (spawner->player && spawner->player->kartstuff[k_drift])
|
||||
{
|
||||
INT32 driftval = K_GetKartDriftSparkValue(spawner->player);
|
||||
INT32 warntime = driftval/3;
|
||||
INT32 dc = spawner->player->kartstuff[k_driftcharge];
|
||||
UINT8 c = SKINCOLOR_NONE;
|
||||
boolean rainbow = false;
|
||||
|
||||
if (dc < 0)
|
||||
{
|
||||
c = SKINCOLOR_GOLD;
|
||||
}
|
||||
else if (dc >= (driftval - warntime))
|
||||
{
|
||||
if (dc >= ((2*driftval) - warntime))
|
||||
{
|
||||
if (dc >= ((4*driftval) - warntime))
|
||||
{
|
||||
c = (UINT8)(1 + (leveltime % (MAXSKINCOLORS-1)));
|
||||
rainbow = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
c = SKINCOLOR_SAPPHIRE;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
c = SKINCOLOR_KETCHUP;
|
||||
}
|
||||
}
|
||||
|
||||
if (c != SKINCOLOR_NONE)
|
||||
{
|
||||
P_SetMobjState(dust, S_DRIFTWARNSPARK1);
|
||||
dust->color = c;
|
||||
dust->colorized = rainbow;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue