mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2025-10-30 08:01:28 +00:00
Consistent color scale
Driftsparks now go through grey, yellow, red, and blue; instead of yellow, red, blue, purple. This is consistent with every other scale of power in the game.
This commit is contained in:
parent
ea3818d285
commit
813751d9c0
2 changed files with 36 additions and 41 deletions
59
src/k_kart.c
59
src/k_kart.c
|
|
@ -4297,8 +4297,8 @@ UINT16 K_DriftSparkColor(player_t *player, INT32 charge)
|
||||||
|
|
||||||
if (charge < 0)
|
if (charge < 0)
|
||||||
{
|
{
|
||||||
// Stage 0: Yellow
|
// Stage 0: Grey
|
||||||
color = SKINCOLOR_GOLD;
|
color = SKINCOLOR_SILVER;
|
||||||
}
|
}
|
||||||
else if (charge >= dsfour)
|
else if (charge >= dsfour)
|
||||||
{
|
{
|
||||||
|
|
@ -4315,7 +4315,7 @@ UINT16 K_DriftSparkColor(player_t *player, INT32 charge)
|
||||||
}
|
}
|
||||||
else if (charge >= dsthree)
|
else if (charge >= dsthree)
|
||||||
{
|
{
|
||||||
// Stage 3: Purple
|
// Stage 3: Blue
|
||||||
if (charge <= dsthree+(16*3))
|
if (charge <= dsthree+(16*3))
|
||||||
{
|
{
|
||||||
// transition 1
|
// transition 1
|
||||||
|
|
@ -4324,19 +4324,6 @@ UINT16 K_DriftSparkColor(player_t *player, INT32 charge)
|
||||||
else if (charge <= dsthree+(32*3))
|
else if (charge <= dsthree+(32*3))
|
||||||
{
|
{
|
||||||
// transition 2
|
// transition 2
|
||||||
color = SKINCOLOR_MOONSET;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
color = SKINCOLOR_PURPLE;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (charge >= dstwo)
|
|
||||||
{
|
|
||||||
// Stage 2: Blue
|
|
||||||
if (charge <= dstwo+(32*3))
|
|
||||||
{
|
|
||||||
// transition
|
|
||||||
color = SKINCOLOR_NOVA;
|
color = SKINCOLOR_NOVA;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
|
@ -4344,10 +4331,10 @@ UINT16 K_DriftSparkColor(player_t *player, INT32 charge)
|
||||||
color = SKINCOLOR_SAPPHIRE;
|
color = SKINCOLOR_SAPPHIRE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (charge >= dsone)
|
else if (charge >= dstwo)
|
||||||
{
|
{
|
||||||
// Stage 1: Red
|
// Stage 2: Red
|
||||||
if (charge <= dsone+(32*3))
|
if (charge <= dstwo+(32*3))
|
||||||
{
|
{
|
||||||
// transition
|
// transition
|
||||||
color = SKINCOLOR_TANGERINE;
|
color = SKINCOLOR_TANGERINE;
|
||||||
|
|
@ -4357,6 +4344,19 @@ UINT16 K_DriftSparkColor(player_t *player, INT32 charge)
|
||||||
color = SKINCOLOR_KETCHUP;
|
color = SKINCOLOR_KETCHUP;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else if (charge >= dsone)
|
||||||
|
{
|
||||||
|
// Stage 1: Yellow
|
||||||
|
if (charge <= dsone+(32*3))
|
||||||
|
{
|
||||||
|
// transition
|
||||||
|
color = SKINCOLOR_TAN;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
color = SKINCOLOR_GOLD;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return color;
|
return color;
|
||||||
}
|
}
|
||||||
|
|
@ -8543,9 +8543,9 @@ INT32 K_GetKartDriftSparkValueForStage(player_t *player, UINT8 stage)
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Stage 1: red sparks
|
Stage 1: yellow sparks
|
||||||
Stage 2: blue sparks
|
Stage 2: red sparks
|
||||||
Stage 3: purple sparks
|
Stage 3: blue sparks
|
||||||
Stage 4: big large rainbow sparks
|
Stage 4: big large rainbow sparks
|
||||||
Stage 0: air failsafe
|
Stage 0: air failsafe
|
||||||
*/
|
*/
|
||||||
|
|
@ -8561,26 +8561,22 @@ void K_SpawnDriftBoostExplosion(player_t *player, int stage)
|
||||||
switch (stage)
|
switch (stage)
|
||||||
{
|
{
|
||||||
case 1:
|
case 1:
|
||||||
overlay->color = SKINCOLOR_KETCHUP;
|
|
||||||
overlay->fuse = 16;
|
overlay->fuse = 16;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 2:
|
case 2:
|
||||||
overlay->color = SKINCOLOR_SAPPHIRE;
|
|
||||||
overlay->fuse = 32;
|
|
||||||
|
|
||||||
|
overlay->fuse = 32;
|
||||||
S_StartSound(player->mo, sfx_kc5b);
|
S_StartSound(player->mo, sfx_kc5b);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 3:
|
case 3:
|
||||||
overlay->color = SKINCOLOR_PURPLE;
|
|
||||||
overlay->fuse = 48;
|
overlay->fuse = 48;
|
||||||
|
|
||||||
S_StartSound(player->mo, sfx_kc5b);
|
S_StartSound(player->mo, sfx_kc5b);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 4:
|
case 4:
|
||||||
overlay->color = SKINCOLOR_SILVER;
|
|
||||||
overlay->fuse = 120;
|
overlay->fuse = 120;
|
||||||
|
|
||||||
S_StartSound(player->mo, sfx_kc5b);
|
S_StartSound(player->mo, sfx_kc5b);
|
||||||
|
|
@ -8588,7 +8584,6 @@ void K_SpawnDriftBoostExplosion(player_t *player, int stage)
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 0:
|
case 0:
|
||||||
overlay->color = SKINCOLOR_SILVER;
|
|
||||||
overlay->fuse = 16;
|
overlay->fuse = 16;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
@ -8623,7 +8618,7 @@ static void K_KartDrift(player_t *player, boolean onground)
|
||||||
|
|
||||||
if (player->driftcharge < 0)
|
if (player->driftcharge < 0)
|
||||||
{
|
{
|
||||||
// Stage 0: Yellow sparks
|
// Stage 0: Grey sparks
|
||||||
if (!onground)
|
if (!onground)
|
||||||
P_Thrust(player->mo, pushdir, player->speed / 8);
|
P_Thrust(player->mo, pushdir, player->speed / 8);
|
||||||
|
|
||||||
|
|
@ -8632,7 +8627,7 @@ static void K_KartDrift(player_t *player, boolean onground)
|
||||||
}
|
}
|
||||||
else if (player->driftcharge >= dsone && player->driftcharge < dstwo)
|
else if (player->driftcharge >= dsone && player->driftcharge < dstwo)
|
||||||
{
|
{
|
||||||
// Stage 1: Red sparks
|
// Stage 1: Yellow sparks
|
||||||
if (!onground)
|
if (!onground)
|
||||||
P_Thrust(player->mo, pushdir, player->speed / 4);
|
P_Thrust(player->mo, pushdir, player->speed / 4);
|
||||||
|
|
||||||
|
|
@ -8643,7 +8638,7 @@ static void K_KartDrift(player_t *player, boolean onground)
|
||||||
}
|
}
|
||||||
else if (player->driftcharge < dsthree)
|
else if (player->driftcharge < dsthree)
|
||||||
{
|
{
|
||||||
// Stage 2: Blue sparks
|
// Stage 2: Red sparks
|
||||||
if (!onground)
|
if (!onground)
|
||||||
P_Thrust(player->mo, pushdir, player->speed / 3);
|
P_Thrust(player->mo, pushdir, player->speed / 3);
|
||||||
|
|
||||||
|
|
@ -8654,7 +8649,7 @@ static void K_KartDrift(player_t *player, boolean onground)
|
||||||
}
|
}
|
||||||
else if (player->driftcharge < dsfour)
|
else if (player->driftcharge < dsfour)
|
||||||
{
|
{
|
||||||
// Stage 3: Purple sparks
|
// Stage 3: Blue sparks
|
||||||
if (!onground)
|
if (!onground)
|
||||||
P_Thrust(player->mo, pushdir, ( 5 * player->speed ) / 12);
|
P_Thrust(player->mo, pushdir, ( 5 * player->speed ) / 12);
|
||||||
|
|
||||||
|
|
|
||||||
18
src/p_mobj.c
18
src/p_mobj.c
|
|
@ -7125,17 +7125,17 @@ static boolean P_MobjRegularThink(mobj_t *mobj)
|
||||||
|
|
||||||
if (mobj->fuse <= 16)
|
if (mobj->fuse <= 16)
|
||||||
{
|
{
|
||||||
mobj->color = SKINCOLOR_KETCHUP;
|
mobj->color = SKINCOLOR_GOLD;
|
||||||
/* don't draw papersprite frames after blue boost */
|
/* don't draw papersprite frames after blue boost */
|
||||||
mobj->renderflags ^= RF_DONTDRAW;
|
mobj->renderflags ^= RF_DONTDRAW;
|
||||||
}
|
}
|
||||||
else if (mobj->fuse <= 32)
|
else if (mobj->fuse <= 32)
|
||||||
mobj->color = SKINCOLOR_SAPPHIRE;
|
mobj->color = SKINCOLOR_KETCHUP;
|
||||||
else if (mobj->fuse <= 48)
|
else if (mobj->fuse <= 48)
|
||||||
mobj->color = SKINCOLOR_PURPLE;
|
mobj->color = SKINCOLOR_SAPPHIRE;
|
||||||
else if (mobj->fuse > 48)
|
else if (mobj->fuse > 48)
|
||||||
mobj->color = K_RainbowColor(
|
mobj->color = K_RainbowColor(
|
||||||
(SKINCOLOR_PURPLE - SKINCOLOR_PINK) // Smoothly transition into the other state
|
(SKINCOLOR_SAPPHIRE - SKINCOLOR_PINK) // Smoothly transition into the other state
|
||||||
+ ((mobj->fuse - 32) * 2) // Make the color flashing slow down while it runs out
|
+ ((mobj->fuse - 32) * 2) // Make the color flashing slow down while it runs out
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
@ -7150,14 +7150,14 @@ static boolean P_MobjRegularThink(mobj_t *mobj)
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 3:/* purple boost */
|
case 3:/* blue boost */
|
||||||
if ((mobj->fuse == 32)/* to blue*/
|
if ((mobj->fuse == 32)/* to red*/
|
||||||
|| (mobj->fuse == 16))/* to red*/
|
|| (mobj->fuse == 16))/* to yellow*/
|
||||||
K_SpawnDriftBoostClip(mobj->target->player);
|
K_SpawnDriftBoostClip(mobj->target->player);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 2:/* blue boost */
|
case 2:/* red boost */
|
||||||
if (mobj->fuse == 16)/* to red*/
|
if (mobj->fuse == 16)/* to yellow*/
|
||||||
K_SpawnDriftBoostClip(mobj->target->player);
|
K_SpawnDriftBoostClip(mobj->target->player);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue