From 8d7b5941a842f609733c269ccff283f3369552ff Mon Sep 17 00:00:00 2001
From: JTE <jason.the.echidna@gmail.com>
Date: Thu, 22 Jan 2015 19:02:45 +0000
Subject: [PATCH] Changed super colors to make them pulse instead of flash.
 Removed alt. supercolors from replay ghost stuff, because that's stupid. :/

git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8999 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
---
 src/g_game.c | 18 ++++--------------
 src/p_user.c | 15 ++++++++++++---
 2 files changed, 16 insertions(+), 17 deletions(-)

diff --git a/src/g_game.c b/src/g_game.c
index 931388d874..917a861656 100644
--- a/src/g_game.c
+++ b/src/g_game.c
@@ -4329,20 +4329,10 @@ void G_GhostTicker(void)
 		switch(g->color)
 		{
 		case GHC_SUPER: // Super Sonic (P_DoSuperStuff)
-			// Yousa yellow now!
-			g->mo->color = SKINCOLOR_SUPER1 + (leveltime/2) % 5;
-			if (g->mo->skin)
-				switch (((skin_t*)g->mo->skin)-skins)
-				{
-				case 1: // Golden orange supertails.
-					g->mo->color = SKINCOLOR_TSUPER1 + (leveltime/2) % 5;
-					break;
-				case 2: // Pink superknux.
-					g->mo->color = SKINCOLOR_KSUPER1 + (leveltime/2) % 5;
-					break;
-				default:
-					break;
-				}
+			if (leveltime % 9 < 5)
+				g->mo->color = SKINCOLOR_SUPER1 + leveltime % 9;
+			else
+				g->mo->color = SKINCOLOR_SUPER1 + 9 - leveltime % 9;
 			break;
 		case GHC_INVINCIBLE: // Mario invincibility (P_CheckInvincibilityTimer)
 			g->mo->color = (UINT8)(leveltime % MAXSKINCOLORS);
diff --git a/src/p_user.c b/src/p_user.c
index 3d77069ac4..45e6614289 100644
--- a/src/p_user.c
+++ b/src/p_user.c
@@ -3385,13 +3385,22 @@ static void P_DoSuperStuff(player_t *player)
 		switch (player->skin)
 		{
 		case 1: // Golden orange supertails.
-			player->mo->color = SKINCOLOR_TSUPER1 + (leveltime/2) % 5;
+			if (leveltime % 9 < 5)
+				player->mo->color = SKINCOLOR_TSUPER1 + leveltime % 9;
+			else
+				player->mo->color = SKINCOLOR_TSUPER1 + 9 - leveltime % 9;
 			break;
 		case 2: // Pink superknux.
-			player->mo->color = SKINCOLOR_KSUPER1 + (leveltime/2) % 5;
+			if (leveltime % 9 < 5)
+				player->mo->color = SKINCOLOR_KSUPER1 + leveltime % 9;
+			else
+				player->mo->color = SKINCOLOR_KSUPER1 + 9 - leveltime % 9;
 			break;
 		default: // Yousa yellow now!
-			player->mo->color = SKINCOLOR_SUPER1 + (leveltime/2) % 5;
+			if (leveltime % 9 < 5)
+				player->mo->color = SKINCOLOR_SUPER1 + leveltime % 9;
+			else
+				player->mo->color = SKINCOLOR_SUPER1 + 9 - leveltime % 9;
 			break;
 		}
 
-- 
GitLab