mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2026-04-27 12:31:54 +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_DRIFTDUST3",
|
||||||
"S_DRIFTDUST4",
|
"S_DRIFTDUST4",
|
||||||
|
|
||||||
|
// Drift Sparkles
|
||||||
|
"S_DRIFTWARNSPARK1",
|
||||||
|
"S_DRIFTWARNSPARK2",
|
||||||
|
"S_DRIFTWARNSPARK3",
|
||||||
|
"S_DRIFTWARNSPARK4",
|
||||||
|
|
||||||
// Fast lines
|
// Fast lines
|
||||||
"S_FASTLINE1",
|
"S_FASTLINE1",
|
||||||
"S_FASTLINE2",
|
"S_FASTLINE2",
|
||||||
|
|
|
||||||
13
src/info.c
13
src/info.c
|
|
@ -57,10 +57,10 @@ char sprnames[NUMSPRITES + 1][5] =
|
||||||
"SRBL","SRBM","SRBN","SRBO",
|
"SRBL","SRBM","SRBN","SRBO",
|
||||||
//SRB2kart Sprites
|
//SRB2kart Sprites
|
||||||
"RNDM","RPOP","SGNS","FAST","DSHR","BOST","BOSM","KFRE","KINV","KINF",
|
"RNDM","RPOP","SGNS","FAST","DSHR","BOST","BOSM","KFRE","KINV","KINF",
|
||||||
"WIPD","DRIF","BDRF","DUST","RSHE","FITM","BANA","ORBN","JAWZ","SSMN",
|
"WIPD","DRIF","BDRF","DUST","DRWS","RSHE","FITM","BANA","ORBN","JAWZ",
|
||||||
"KRBM","BHOG","BHBM","SPBM","THNS","SINK","SITR","KBLN","DEZL","POKE",
|
"SSMN","KRBM","BHOG","BHBM","SPBM","THNS","SINK","SITR","KBLN","DEZL",
|
||||||
"AUDI","DECO","DOOD","SNES","GBAS","SPRS","BUZB","CHOM","SACO","CRAB",
|
"POKE","AUDI","DECO","DOOD","SNES","GBAS","SPRS","BUZB","CHOM","SACO",
|
||||||
"BRNG","BUMP","FLEN","CLAS","PSHW","ISTA","ISTB","ARRO","ITEM",
|
"CRAB","BRNG","BUMP","FLEN","CLAS","PSHW","ISTA","ISTB","ARRO","ITEM",
|
||||||
"ITMO","ITMI","ITMN","WANT","PBOM","HIT1","HIT2","HIT3","RETI","AIDU",
|
"ITMO","ITMI","ITMN","WANT","PBOM","HIT1","HIT2","HIT3","RETI","AIDU",
|
||||||
"KSPK","LZI1","LZI2","KLIT","FZSM","FZBM","FPRT","SBUS","MARB","FUFO",
|
"KSPK","LZI1","LZI2","KLIT","FZSM","FZBM","FPRT","SBUS","MARB","FUFO",
|
||||||
"RUST","BLON","VAPE","HTZA","HTZB","SGVA","SGVB","SGVC","PGTR","PGF1",
|
"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|2, 3, {NULL}, 0, 0, S_DRIFTDUST4}, // S_DRIFTDUST3
|
||||||
{SPR_DUST, FF_TRANS20|3, 3, {NULL}, 0, 0, S_NULL}, // S_DRIFTDUST4
|
{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, {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|1, 1, {NULL}, 0, 0, S_FASTLINE3}, // S_FASTLINE2
|
||||||
{SPR_FAST, FF_PAPERSPRITE|FF_FULLBRIGHT|2, 1, {NULL}, 0, 0, S_FASTLINE4}, // S_FASTLINE3
|
{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_DRIF, // Drift Sparks
|
||||||
SPR_BDRF, // Brake drift sparks
|
SPR_BDRF, // Brake drift sparks
|
||||||
SPR_DUST, // Drift Dust
|
SPR_DUST, // Drift Dust
|
||||||
|
SPR_DRWS, // Drift dust sparks
|
||||||
|
|
||||||
// Kart Items
|
// Kart Items
|
||||||
SPR_RSHE, // Rocket sneaker
|
SPR_RSHE, // Rocket sneaker
|
||||||
|
|
@ -3248,6 +3249,12 @@ typedef enum state
|
||||||
S_DRIFTDUST3,
|
S_DRIFTDUST3,
|
||||||
S_DRIFTDUST4,
|
S_DRIFTDUST4,
|
||||||
|
|
||||||
|
// Drift Sparkles
|
||||||
|
S_DRIFTWARNSPARK1,
|
||||||
|
S_DRIFTWARNSPARK2,
|
||||||
|
S_DRIFTWARNSPARK3,
|
||||||
|
S_DRIFTWARNSPARK4,
|
||||||
|
|
||||||
// Fast lines
|
// Fast lines
|
||||||
S_FASTLINE1,
|
S_FASTLINE1,
|
||||||
S_FASTLINE2,
|
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);
|
S_StartSound(spawner, sfx_screec);
|
||||||
|
|
||||||
K_MatchGenericExtraFlags(dust, spawner);
|
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