From 1ed54078215a2ab5b0618de25bee6007bf4c0c76 Mon Sep 17 00:00:00 2001 From: wolfy852 Date: Sat, 7 Nov 2015 13:56:21 -0600 Subject: [PATCH] update stuff --- src/console.c | 15 +- src/d_main.c | 8 +- src/dehacked.c | 40 +-- src/doomdef.h | 40 +-- src/hardware/hw_defs.h | 5 +- src/m_menu.c | 3 +- src/r_draw.c | 570 +++++++++++++++++++---------------------- src/r_draw8.c | 3 +- 8 files changed, 329 insertions(+), 355 deletions(-) diff --git a/src/console.c b/src/console.c index 1c8640396..fe447b10a 100644 --- a/src/console.c +++ b/src/console.c @@ -249,7 +249,7 @@ void CON_ReSetupBackColormap(UINT16 num) j = pal[i] + pal[i+1] + pal[i+2]; cwhitemap[k] = (UINT8)(15 - (j>>6)); corangemap[k] = (UINT8)(63 - (j>>6)); - cbluemap[k] = (UINT8)(143 - (j>>6)); + cbluemap[k] = (UINT8)(159 - (j>>6)); cgreenmap[k] = (UINT8)(111 - (j>>6)); cgraymap[k] = (UINT8)(31 - (j>>6)); credmap[k] = (UINT8)(47 - (j>>6)); @@ -284,7 +284,7 @@ static void CON_SetupBackColormap(void) j = pal[i] + pal[i+1] + pal[i+2]; cwhitemap[k] = (UINT8)(15 - (j>>6)); corangemap[k] = (UINT8)(63 - (j>>6)); - cbluemap[k] = (UINT8)(143 - (j>>6)); + cbluemap[k] = (UINT8)(159 - (j>>6)); cgreenmap[k] = (UINT8)(111 - (j>>6)); cgraymap[k] = (UINT8)(31 - (j>>6)); credmap[k] = (UINT8)(47 - (j>>6)); @@ -308,15 +308,15 @@ static void CON_SetupBackColormap(void) yellowmap[3] = (UINT8)73; yellowmap[9] = (UINT8)66; - purplemap[3] = (UINT8)168; - purplemap[9] = (UINT8)170; + purplemap[3] = (UINT8)184; + purplemap[9] = (UINT8)186; lgreenmap[3] = (UINT8)102; lgreenmap[9] = (UINT8)106; - bluemap[3] = (UINT8)131; - bluemap[9] = (UINT8)142; + bluemap[3] = (UINT8)147; + bluemap[9] = (UINT8)158; graymap[3] = (UINT8)10; graymap[9] = (UINT8)15; - redmap[3] = (UINT8)194; + redmap[3] = (UINT8)210; redmap[9] = (UINT8)32; orangemap[3] = (UINT8)52; orangemap[9] = (UINT8)57; @@ -1472,3 +1472,4 @@ void CON_Drawer(void) else if (gamestate == GS_LEVEL || gamestate == GS_INTERMISSION || gamestate == GS_CUTSCENE || gamestate == GS_CREDITS) CON_DrawHudlines(); } + diff --git a/src/d_main.c b/src/d_main.c index a959a8632..709cbea7b 100644 --- a/src/d_main.c +++ b/src/d_main.c @@ -1121,10 +1121,10 @@ void D_SRB2Main(void) #if 1 // md5s last updated 12/14/14 // Check MD5s of autoloaded files - W_VerifyFileMD5(0, ASSET_HASH_SRB2_SRB); // srb2.srb/srb2.wad - W_VerifyFileMD5(1, ASSET_HASH_ZONES_DTA); // zones.dta - W_VerifyFileMD5(2, ASSET_HASH_PLAYER_DTA); // player.dta - W_VerifyFileMD5(3, ASSET_HASH_RINGS_DTA); // rings.dta + //W_VerifyFileMD5(0, ASSET_HASH_SRB2_SRB); // srb2.srb/srb2.wad + //W_VerifyFileMD5(1, ASSET_HASH_ZONES_DTA); // zones.dta + //W_VerifyFileMD5(2, ASSET_HASH_PLAYER_DTA); // player.dta + //W_VerifyFileMD5(3, ASSET_HASH_RINGS_DTA); // rings.dta //W_VerifyFileMD5(4, "0c66790502e648bfce90fdc5bb15722e"); // patch.dta // don't check music.dta because people like to modify it, and it doesn't matter if they do // ...except it does if they slip maps in there, and that's what W_VerifyNMUSlumps is for. diff --git a/src/dehacked.c b/src/dehacked.c index 760ae84b3..b22f7b867 100644 --- a/src/dehacked.c +++ b/src/dehacked.c @@ -7309,30 +7309,31 @@ static const char *COLOR_ENUMS[] = { "SILVER", // SKINCOLOR_SILVER "GREY", // SKINCOLOR_GREY "BLACK", // SKINCOLOR_BLACK - "CYAN", // SKINCOLOR_CYAN - "AQUA", // SKINCOLOR_AQUA - "TEAL", // SKINCOLOR_TEAL - "AZURE", // SKINCOLOR_AZURE - "BLUE", // SKINCOLOR_BLUE - "PEACH", // SKINCOLOR_PEACH - "TAN", // SKINCOLOR_TAN - "PINK", // SKINCOLOR_PINK - "ROSY", // SKINCOLOR_ROSY - "LAVENDER", // SKINCOLOR_LAVENDER - "PURPLE", // SKINCOLOR_PURPLE - "MAGENTA", // SKINCOLOR_MAGENTA - "ORANGE", // SKINCOLOR_ORANGE - "RUST", // SKINCOLOR_RUST "BEIGE", // SKINCOLOR_BEIGE + "PEACH", // SKINCOLOR_PEACH "BROWN", // SKINCOLOR_BROWN "RED", // SKINCOLOR_RED "CRIMSON", // SKINCOLOR_CRIMSON - "EMERALD", // SKINCOLOR_EMERALD - "GREEN", // SKINCOLOR_GREEN - "ZIM", // SKINCOLOR_ZIM - "PERIDOT", // SKINCOLOR_PERIDOT + "ORANGE", // SKINCOLOR_ORANGE + "RUST", // SKINCOLOR_RUST + "GOLD", // SKINCOLOR_GOLD "YELLOW", // SKINCOLOR_YELLOW - "GOLD" // SKINCOLOR_GOLD + "TAN", // SKINCOLOR_TAN + "MOSS", // SKINCOLOR_MOSS + "PERIDOT", // SKINCOLOR_PERIDOT + "GREEN", // SKINCOLOR_GREEN + "EMERALD", // SKINCOLOR_EMERALD + "AQUA", // SKINCOLOR_AQUA + "TEAL", // SKINCOLOR_TEAL + "CYAN", // SKINCOLOR_CYAN + "BLUE", // SKINCOLOR_BLUE + "AZURE", // SKINCOLOR_AZURE + "PASTEL", // SKINCOLOR_PASTEL + "PURPLE", // SKINCOLOR_PURPLE + "LAVENDER", // SKINCOLOR_LAVENDER + "MAGENTA", // SKINCOLOR_MAGENTA + "PINK", // SKINCOLOR_PINK + "ROSY" // SKINCOLOR_ROSY }; static const char *const POWERS_LIST[] = { @@ -8769,3 +8770,4 @@ void LUA_SetActionByName(void *state, const char *actiontocompare) } #endif // HAVE_BLUA + diff --git a/src/doomdef.h b/src/doomdef.h index d6af0f1a0..88fc206a2 100644 --- a/src/doomdef.h +++ b/src/doomdef.h @@ -230,30 +230,31 @@ typedef enum SKINCOLOR_SILVER, SKINCOLOR_GREY, SKINCOLOR_BLACK, - SKINCOLOR_CYAN, - SKINCOLOR_AQUA, - SKINCOLOR_TEAL, - SKINCOLOR_AZURE, - SKINCOLOR_BLUE, - SKINCOLOR_PEACH, - SKINCOLOR_TAN, - SKINCOLOR_PINK, - SKINCOLOR_ROSY, - SKINCOLOR_LAVENDER, - SKINCOLOR_PURPLE, - SKINCOLOR_MAGENTA, - SKINCOLOR_ORANGE, - SKINCOLOR_RUST, SKINCOLOR_BEIGE, + SKINCOLOR_PEACH, SKINCOLOR_BROWN, SKINCOLOR_RED, SKINCOLOR_CRIMSON, - SKINCOLOR_EMERALD, - SKINCOLOR_GREEN, - SKINCOLOR_ZIM, - SKINCOLOR_PERIDOT, - SKINCOLOR_YELLOW, + SKINCOLOR_ORANGE, + SKINCOLOR_RUST, SKINCOLOR_GOLD, + SKINCOLOR_YELLOW, + SKINCOLOR_TAN, + SKINCOLOR_MOSS, + SKINCOLOR_PERIDOT, + SKINCOLOR_GREEN, + SKINCOLOR_EMERALD, + SKINCOLOR_AQUA, + SKINCOLOR_TEAL, + SKINCOLOR_CYAN, + SKINCOLOR_BLUE, + SKINCOLOR_AZURE, + SKINCOLOR_PASTEL, + SKINCOLOR_PURPLE, + SKINCOLOR_LAVENDER, + SKINCOLOR_MAGENTA, + SKINCOLOR_PINK, + SKINCOLOR_ROSY, // Careful! MAXSKINCOLORS cannot be greater than 0x20! MAXSKINCOLORS, @@ -498,3 +499,4 @@ extern const char *compdate, *comptime, *comprevision; //#define REDSANALOG #endif // __DOOMDEF__ + diff --git a/src/hardware/hw_defs.h b/src/hardware/hw_defs.h index 70d776d9e..5a39fead1 100644 --- a/src/hardware/hw_defs.h +++ b/src/hardware/hw_defs.h @@ -46,8 +46,8 @@ typedef unsigned char FBOOLEAN; #define HWR_PATCHES_CHROMAKEY_COLORINDEX 0 #define HWR_CHROMAKEY_EQUIVALENTCOLORINDEX 1 #else -#define HWR_PATCHES_CHROMAKEY_COLORINDEX 247 -#define HWR_CHROMAKEY_EQUIVALENTCOLORINDEX 220 +#define HWR_PATCHES_CHROMAKEY_COLORINDEX 255 +#define HWR_CHROMAKEY_EQUIVALENTCOLORINDEX 130 #endif // the chroma key color shows on border sprites, set it to black @@ -229,3 +229,4 @@ enum hwdfiltermode #endif //_HWR_DEFS_ + diff --git a/src/m_menu.c b/src/m_menu.c index 111be9479..f115e9d44 100644 --- a/src/m_menu.c +++ b/src/m_menu.c @@ -2820,7 +2820,7 @@ static void M_DrawSlider(INT32 x, INT32 y, const consvar_t *cv) void M_DrawTextBox(INT32 x, INT32 y, INT32 width, INT32 boxlines) { // Solid color textbox. - V_DrawFill(x+5, y+5, width*8+6, boxlines*8+6, 143); + V_DrawFill(x+5, y+5, width*8+6, boxlines*8+6, 159); //V_DrawFill(x+8, y+8, width*8, boxlines*8, 31); /* patch_t *p; @@ -7409,3 +7409,4 @@ static void M_HandleFogColor(INT32 choice) } } #endif + diff --git a/src/r_draw.c b/src/r_draw.c index 81bcc9438..420b96c1d 100644 --- a/src/r_draw.c +++ b/src/r_draw.c @@ -131,68 +131,70 @@ static UINT8** translationtablecache[MAXSKINS + 4] = {NULL}; // TODO Callum: Can this be translated? const char *Color_Names[MAXSKINCOLORS] = { - "None", // SKINCOLOR_NONE - "White", // SKINCOLOR_WHITE - "Silver", // SKINCOLOR_SILVER - "Grey", // SKINCOLOR_GREY - "Black", // SKINCOLOR_BLACK - "Cyan", // SKINCOLOR_CYAN - "Aqua", // SKINCOLOR_AQUAMARINE - "Teal", // SKINCOLOR_TEAL - "Azure", // SKINCOLOR_AZURE - "Blue", // SKINCOLOR_BLUE - "Peach", // SKINCOLOR_PEACH - "Tan", // SKINCOLOR_TAN - "Pink", // SKINCOLOR_PINK - "Rosy", // SKINCOLOR_ROSY - "Lavender", // SKINCOLOR_LAVENDER - "Purple", // SKINCOLOR_PURPLE - "Magenta", // SKINCOLOR_MAGENTA - "Orange", // SKINCOLOR_ORANGE - "Rust", // SKINCOLOR_RUST - "Beige", // SKINCOLOR_BEIGE - "Brown", // SKINCOLOR_BROWN - "Red", // SKINCOLOR_RED - "Crimson", // SKINCOLOR_CRIMSON - "Emerald", // SKINCOLOR_EMERALD - "Green", // SKINCOLOR_GREEN - "Zim", // SKINCOLOR_ZIM - "Peridot", // SKINCOLOR_PERIDOT - "Yellow", // SKINCOLOR_YELLOW - "Gold" // SKINCOLOR_GOLD + "None", // SKINCOLOR_NONE + "White", // SKINCOLOR_WHITE + "Silver", // SKINCOLOR_SILVER + "Grey", // SKINCOLOR_GREY + "Black", // SKINCOLOR_BLACK + "Beige", // SKINCOLOR_BEIGE + "Peach", // SKINCOLOR_PEACH + "Brown", // SKINCOLOR_BROWN + "Red", // SKINCOLOR_RED + "Crimson", // SKINCOLOR_CRIMSON + "Orange", // SKINCOLOR_ORANGE + "Rust", // SKINCOLOR_RUST + "Gold", // SKINCOLOR_GOLD + "Yellow", // SKINCOLOR_YELLOW + "Tan", // SKINCOLOR_TAN + "Moss", // SKINCOLOR_MOSS + "Peridot", // SKINCOLOR_PERIDOT + "Green", // SKINCOLOR_GREEN + "Emerald", // SKINCOLOR_EMERALD + "Aqua", // SKINCOLOR_AQUA + "Teal", // SKINCOLOR_TEAL + "Cyan", // SKINCOLOR_CYAN + "Blue", // SKINCOLOR_BLUE + "Azure", // SKINCOLOR_AZURE + "Pastel", // SKINCOLOR_PASTEL + "Purple", // SKINCOLOR_PURPLE + "Lavender", // SKINCOLOR_LAVENDER + "Magenta", // SKINCOLOR_MAGENTA + "Pink", // SKINCOLOR_PINK + "Rosy" // SKINCOLOR_ROSY }; const UINT8 Color_Opposite[MAXSKINCOLORS*2] = { - SKINCOLOR_NONE,8, // SKINCOLOR_NONE - SKINCOLOR_BLACK,10, // SKINCOLOR_WHITE - SKINCOLOR_GREY,4, // SKINCOLOR_SILVER - SKINCOLOR_SILVER,12,// SKINCOLOR_GREY - SKINCOLOR_WHITE,8, // SKINCOLOR_BLACK - SKINCOLOR_NONE,8, // SKINCOLOR_CYAN - SKINCOLOR_NONE,8, // SKINCOLOR_AQUA - SKINCOLOR_NONE,8, // SKINCOLOR_TEAL - SKINCOLOR_NONE,8, // SKINCOLOR_AZURE - SKINCOLOR_ORANGE,9, // SKINCOLOR_BLUE - SKINCOLOR_NONE,8, // SKINCOLOR_PEACH - SKINCOLOR_NONE,8, // SKINCOLOR_TAN - SKINCOLOR_NONE,8, // SKINCOLOR_PINK - SKINCOLOR_NONE,8, // SKINCOLOR_ROSY - SKINCOLOR_NONE,8, // SKINCOLOR_LAVENDER - SKINCOLOR_NONE,8, // SKINCOLOR_PURPLE - SKINCOLOR_NONE,8, // SKINCOLOR_MAGENTA - SKINCOLOR_BLUE,12, // SKINCOLOR_ORANGE - SKINCOLOR_NONE,8, // SKINCOLOR_RUST - SKINCOLOR_NONE,8, // SKINCOLOR_BEIGE - SKINCOLOR_NONE,8, // SKINCOLOR_BROWN - SKINCOLOR_GREEN,5, // SKINCOLOR_RED - SKINCOLOR_NONE,8, // SKINCOLOR_CRIMSON - SKINCOLOR_NONE,8, // SKINCOLOR_EMERALD - SKINCOLOR_RED,11, // SKINCOLOR_GREEN - SKINCOLOR_MAGENTA,3, // SKINCOLOR_ZIM - SKINCOLOR_NONE,8, // SKINCOLOR_PERIDOT - SKINCOLOR_NONE,8, // SKINCOLOR_YELLOW - SKINCOLOR_NONE,8 // SKINCOLOR_GOLD + SKINCOLOR_NONE,8, // SKINCOLOR_NONE + SKINCOLOR_BLACK,10, // SKINCOLOR_WHITE + SKINCOLOR_GREY,4, // SKINCOLOR_SILVER + SKINCOLOR_SILVER,12, // SKINCOLOR_GREY + SKINCOLOR_WHITE,8, // SKINCOLOR_BLACK + SKINCOLOR_BEIGE,8, // SKINCOLOR_BEIGE - needs new offset + SKINCOLOR_BROWN,8, // SKINCOLOR_PEACH - ditto + SKINCOLOR_PEACH,8, // SKINCOLOR_BROWN - ditto + SKINCOLOR_GREEN,5, // SKINCOLOR_RED + SKINCOLOR_CYAN,8, // SKINCOLOR_CRIMSON - ditto + SKINCOLOR_BLUE,12, // SKINCOLOR_ORANGE + SKINCOLOR_TAN,8, // SKINCOLOR_RUST - ditto + SKINCOLOR_LAVENDER,8, // SKINCOLOR_GOLD - ditto + SKINCOLOR_TEAL,8, // SKINCOLOR_YELLOW - ditto + SKINCOLOR_RUST,8, // SKINCOLOR_TAN - ditto + SKINCOLOR_MAGENTA,3, // SKINCOLOR_MOSS + SKINCOLOR_PURPLE,8, // SKINCOLOR_PERIDOT - ditto + SKINCOLOR_RED,11, // SKINCOLOR_GREEN + SKINCOLOR_PASTEL,8, // SKINCOLOR_EMERALD - ditto + SKINCOLOR_ROSY,8, // SKINCOLOR_AQUA - ditto + SKINCOLOR_YELLOW,8, // SKINCOLOR_TEAL - ditto + SKINCOLOR_CRIMSON,8, // SKINCOLOR_CYAN - ditto + SKINCOLOR_ORANGE,9, // SKINCOLOR_BLUE + SKINCOLOR_PINK,8, // SKINCOLOR_AZURE - ditto + SKINCOLOR_EMERALD,8, // SKINCOLOR_PASTEL - ditto + SKINCOLOR_PERIDOT,8, // SKINCOLOR_PURPLE - ditto + SKINCOLOR_GOLD,8, // SKINCOLOR_LAVENDER - ditto + SKINCOLOR_MOSS,8, // SKINCOLOR_MAGENTA - ditto + SKINCOLOR_AZURE,8, // SKINCOLOR_PINK - ditto + SKINCOLOR_AQUA,8 // SKINCOLOR_ROSY - ditto }; CV_PossibleValue_t Color_cons_t[MAXSKINCOLORS+1]; @@ -242,30 +244,31 @@ static void R_GenerateTranslationColormap(UINT8 *dest_colormap, INT32 skinnum, U 0x03, // SKINCOLOR_SILVER 0x08, // SKINCOLOR_GREY 0x18, // SKINCOLOR_BLACK - 0x70, // SKINCOLOR_CYAN - 0xf8, // SKINCOLOR_AQUA - 0x7c, // SKINCOLOR_TEAL - 0x9a, // SKINCOLOR_AZURE - 0x82, // SKINCOLOR_BLUE - 0xc8, // SKINCOLOR_PEACH - 0x54, // SKINCOLOR_TAN - 0xc0, // SKINCOLOR_PINK - 0xb8, // SKINCOLOR_ROSY - 0xb0, // SKINCOLOR_LAVENDER - 0x90, // SKINCOLOR_PURPLE - 0xa3, // SKINCOLOR_MAGENTA - 0x31, // SKINCOLOR_ORANGE - 0x3a, // SKINCOLOR_RUST - 0xe0, // SKINCOLOR_BEIGE - 0xd0, // SKINCOLOR_BROWN + 0xf0, // SKINCOLOR_BEIGE + 0xd8, // SKINCOLOR_PEACH + 0xe0, // SKINCOLOR_BROWN 0x21, // SKINCOLOR_RED 0x28, // SKINCOLOR_CRIMSON - 0xf0, // SKINCOLOR_EMERALD - 0x60, // SKINCOLOR_GREEN - 0x58, // SKINCOLOR_ZIM - 0xac, // SKINCOLOR_PERIDOT - 0x48, // SKINCOLOR_YELLOW + 0x31, // SKINCOLOR_ORANGE + 0x3a, // SKINCOLOR_RUST 0x40, // SKINCOLOR_GOLD + 0x48, // SKINCOLOR_YELLOW + 0x54, // SKINCOLOR_TAN + 0x58, // SKINCOLOR_MOSS + 0xbc, // SKINCOLOR_PERIDOT + 0x60, // SKINCOLOR_GREEN + 0x70, // SKINCOLOR_EMERALD + 0x78, // SKINCOLOR_AQUA + 0x8c, // SKINCOLOR_TEAL + 0x80, // SKINCOLOR_CYAN + 0x92, // SKINCOLOR_BLUE + 0xaa, // SKINCOLOR_AZURE + 0xa0, // SKINCOLOR_PASTEL + 0xa0, // SKINCOLOR_PURPLE + 0xc0, // SKINCOLOR_LAVENDER + 0xb3, // SKINCOLOR_MAGENTA + 0xd0, // SKINCOLOR_PINK + 0xc8, // SKINCOLOR_ROSY }; INT32 i; INT32 starttranscolor; @@ -283,7 +286,7 @@ static void R_GenerateTranslationColormap(UINT8 *dest_colormap, INT32 skinnum, U if (skinnum == TC_BOSS) dest_colormap[31] = 0; else if (skinnum == TC_METALSONIC) - dest_colormap[143] = 0; + dest_colormap[159] = 0; return; } @@ -309,176 +312,59 @@ static void R_GenerateTranslationColormap(UINT8 *dest_colormap, INT32 skinnum, U dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + i); break; + case SKINCOLOR_WHITE: case SKINCOLOR_CYAN: // 12 color ramp for (i = 0; i < SKIN_RAMP_LENGTH; i++) dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (12*i/SKIN_RAMP_LENGTH)); break; - case SKINCOLOR_MAGENTA: - // 9 color ramp - for (i = 0; i < SKIN_RAMP_LENGTH; i++) - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (9*i/SKIN_RAMP_LENGTH)); - break; - - case SKINCOLOR_WHITE: case SKINCOLOR_BLACK: - case SKINCOLOR_PINK: + case SKINCOLOR_MOSS: + case SKINCOLOR_EMERALD: case SKINCOLOR_LAVENDER: - case SKINCOLOR_ZIM: + case SKINCOLOR_PINK: // 8 color ramp for (i = 0; i < SKIN_RAMP_LENGTH; i++) dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (i >> 1)); break; - case SKINCOLOR_AQUA: - // 10 colors - for (i = 0; i < SKIN_RAMP_LENGTH; i++) - { - if (10*i/16 >= 8) - dest_colormap[starttranscolor + i] = (UINT8)(0x6C + (10*i/SKIN_RAMP_LENGTH) - 8); // Darkest - else - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (10*i/SKIN_RAMP_LENGTH)); - } - break; - - case SKINCOLOR_TEAL: - // 6 colors - for (i = 0; i < SKIN_RAMP_LENGTH; i++) - { - if (6*i/16 == 0) - dest_colormap[starttranscolor + i] = 0xf8; // Lightest - else if (6*i/16 == 5) - dest_colormap[starttranscolor + i] = 0x7a; // Darkest - else - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (6*i/SKIN_RAMP_LENGTH) - 1); - } - break; - - case SKINCOLOR_AZURE: - // 8 colors - for (i = 0; i < SKIN_RAMP_LENGTH; i++) - { - if (8*i/16 <= 1) - dest_colormap[starttranscolor + i] = (UINT8)(0x80 + 8*i/16); // Lightest - else - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (8*i/SKIN_RAMP_LENGTH) - 2); // main - } - break; - - case SKINCOLOR_BLUE: - for (i = 0; i < SKIN_RAMP_LENGTH; i++) - { - if (i == 14) - dest_colormap[starttranscolor + i] = 0xED; - else if (i == 15) - dest_colormap[starttranscolor + i] = 0x1F; - else - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + i); - } - break; - - case SKINCOLOR_PEACH: - // 10 colors - for (i = 0; i < SKIN_RAMP_LENGTH; i++) - { - if (10*i/16 == 0) - dest_colormap[starttranscolor + i] = 0xC0; // Lightest - else if (10*i/16 == 1) - dest_colormap[starttranscolor + i] = 0x30; // Second - else - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (10*i/SKIN_RAMP_LENGTH) - 2); // main - } - break; - - case SKINCOLOR_TAN: - // 8 colors - for (i = 0; i < SKIN_RAMP_LENGTH; i++) - { - if (8*i/16 == 0) - dest_colormap[starttranscolor + i] = 0x51; // Lightest 1 - else if (8*i/16 == 5) - dest_colormap[starttranscolor + i] = 0xE5; // Darkest 1 - else if (8*i/16 == 6) - dest_colormap[starttranscolor + i] = 0xE9; // Darkest 2 - else if (8*i/16 == 7) - dest_colormap[starttranscolor + i] = 0xDD; // Darkest 3 - else - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (8*i/SKIN_RAMP_LENGTH) - 1); // main - } - break; - - case SKINCOLOR_ROSY: - // 15 colors - for (i = 0; i < SKIN_RAMP_LENGTH; i++) - { - if (15*i/16 == 0) - dest_colormap[starttranscolor + i] = 0xEC; // Lightest - else if (15*i/16 == 12) - dest_colormap[starttranscolor + i] = 0x47; // Dark Shade - else if (15*i/16 >= 13) - dest_colormap[starttranscolor + i] = (UINT8)(0x2E + (15*i/SKIN_RAMP_LENGTH) - 13); // Darkest - else if (15*i/16 >= 9) - dest_colormap[starttranscolor + i] = (UINT8)(0x2B + (15*i/SKIN_RAMP_LENGTH) - 9); // Darkish - else - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (15*i/SKIN_RAMP_LENGTH) - 1); // main - } - break; - - case SKINCOLOR_PURPLE: - // 10 colors - for (i = 0; i < SKIN_RAMP_LENGTH; i++) - { - if (i <= 3) - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + i); // Lightest - else - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (8*i/SKIN_RAMP_LENGTH) + 2); // main - } - break; - - case SKINCOLOR_ORANGE: - for (i = 0; i < SKIN_RAMP_LENGTH; i++) - { - if (i == 15) - dest_colormap[starttranscolor + i] = 0xEE; - else - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + i); - } - break; - - case SKINCOLOR_RUST: - // 9 colors - for (i = 0; i < SKIN_RAMP_LENGTH; i++) - { - if (9*i/16 == 6) - dest_colormap[starttranscolor + i] = 0xEE; - else if (9*i/16 == 7) - dest_colormap[starttranscolor + i] = 0xEF; - else if (9*i/16 == 8) - dest_colormap[starttranscolor + i] = 0x47; - else - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (9*i/SKIN_RAMP_LENGTH)); - } - break; - case SKINCOLOR_BEIGE: // 13 colors for (i = 0; i < SKIN_RAMP_LENGTH; i++) { - if (13*i/16 == 12) - dest_colormap[starttranscolor + i] = 0xDD; // darkest + if (i == 15) + dest_colormap[starttranscolor + i] = 0xed; // Darkest + else if (i <= 6) + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + ((i + 1) >> 1)); // Brightest else - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (13*i/SKIN_RAMP_LENGTH)); // Neon green + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + i - 3); } break; - + + case SKINCOLOR_PEACH: + // 11 colors + for (i = 0; i < SKIN_RAMP_LENGTH; i++) + { + if (i == 0) + dest_colormap[starttranscolor + i] = 0xD0; // Lightest 1 + else if (i == 1) + dest_colormap[starttranscolor + i] = 0x30; // Lightest 2 + else if (i <= 11) + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (i >> 1) - 1); + else + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + i - 7); // Darkest + } + break; + case SKINCOLOR_RED: + // 16 colors for (i = 0; i < SKIN_RAMP_LENGTH; i++) { if (i == 13) - dest_colormap[starttranscolor + i] = 0x47; + dest_colormap[starttranscolor + i] = 0x47; // Semidark else if (i > 13) - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + i - 1); + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + i - 1); // Darkest else dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + i); } @@ -488,38 +374,52 @@ static void R_GenerateTranslationColormap(UINT8 *dest_colormap, INT32 skinnum, U // 9 colors for (i = 0; i < SKIN_RAMP_LENGTH; i++) { - if (9*i/16 == 6) - dest_colormap[starttranscolor + i] = 0x47; - else if (9*i/16 > 6) - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (9*i/SKIN_RAMP_LENGTH) - 1); + if (i/2 == 6) + dest_colormap[starttranscolor + i] = 0x47; // Semidark + else if (i/2 == 7) + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + i - 8); // Darkest else - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (9*i/SKIN_RAMP_LENGTH)); + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (i >> 1)); } break; - case SKINCOLOR_EMERALD: - // 8 colors + case SKINCOLOR_ORANGE: for (i = 0; i < SKIN_RAMP_LENGTH; i++) { - if (8*i/16 == 7) - dest_colormap[starttranscolor + i] = 0x6E; // Darkest + if (i == 15) + dest_colormap[starttranscolor + i] = 0x2c; // Darkest else - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (8*i/SKIN_RAMP_LENGTH)); // Neon green + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + i); } break; - case SKINCOLOR_PERIDOT: - // 8 colors + case SKINCOLOR_RUST: + // 10 colors for (i = 0; i < SKIN_RAMP_LENGTH; i++) { - if (8*i/16 == 0) - dest_colormap[starttranscolor + i] = 0x58; // Lightest - else if (8*i/16 == 7) - dest_colormap[starttranscolor + i] = 0x6D; // Darkest - else if (8*i/16 >= 5) - dest_colormap[starttranscolor + i] = (UINT8)(0x5E + (8*i/SKIN_RAMP_LENGTH) - 5); // Darkish + if (i <= 11) + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (i >> 1)); + else if (i == 12) + dest_colormap[starttranscolor + i] = 0x2c; // Darkest 4 + else if (i == 13) + dest_colormap[starttranscolor + i] = 0xfe; // Darkest 3 else - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (8*i/SKIN_RAMP_LENGTH) - 1); // main + dest_colormap[starttranscolor + i] = 0x2d + i - 14; // Darkest 2 and 1 + } + break; + + case SKINCOLOR_GOLD: + // 10 colors + for (i = 0; i < SKIN_RAMP_LENGTH; i++) + { + if (i == 0) + dest_colormap[starttranscolor + i] = 0x50; // Lightest 1 + else if (i == 1) + dest_colormap[starttranscolor + i] = 0x53; // Lightest 2 + else if (i/2 == 7) + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + i - 8); //Darkest + else + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (i >> 1) - 1); } break; @@ -530,22 +430,135 @@ static void R_GenerateTranslationColormap(UINT8 *dest_colormap, INT32 skinnum, U if (i == 0) dest_colormap[starttranscolor + i] = 0x53; // Lightest else if (i == 15) - dest_colormap[starttranscolor + i] = 0xDD; // Darkest + dest_colormap[starttranscolor + i] = 0xed; // Darkest else - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (8*i/SKIN_RAMP_LENGTH)); + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (i >> 1)); } break; - case SKINCOLOR_GOLD: + case SKINCOLOR_TAN: + // 8 colors + for (i = 0; i < SKIN_RAMP_LENGTH; i++) + { + if (i/2 == 0) + dest_colormap[starttranscolor + i] = 0x51; // Lightest + else if (i/2 == 5) + dest_colormap[starttranscolor + i] = 0xf5; // Darkest 1 + else if (i/2 == 6) + dest_colormap[starttranscolor + i] = 0xf9; // Darkest 2 + else if (i/2 == 7) + dest_colormap[starttranscolor + i] = 0xed; // Darkest 3 + else + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (i >> 1) - 1); + } + break; + + case SKINCOLOR_PERIDOT: + // 8 colors + for (i = 0; i < SKIN_RAMP_LENGTH; i++) + { + if (i/2 == 0) + dest_colormap[starttranscolor + i] = 0x58; // Lightest + else if (i/2 == 7) + dest_colormap[starttranscolor + i] = 0x77; // Darkest + else if (i/2 >= 5) + dest_colormap[starttranscolor + i] = (UINT8)(0x5e + (i >> 1) - 5); // Semidark + else + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (i >> 1) - 1); + } + break; + + case SKINCOLOR_AQUA: // 10 colors for (i = 0; i < SKIN_RAMP_LENGTH; i++) { - if (10*i/16 == 0) - dest_colormap[starttranscolor + i] = 0x50; // Lightest - else if (10*i/16 == 1) - dest_colormap[starttranscolor + i] = 0x53; // Second + if (i == 0) + dest_colormap[starttranscolor + i] = 0x78; // Lightest + else if (i >= 14) + dest_colormap[starttranscolor + i] = (UINT8)(0x76 + i - 14); // Darkest else - dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (10*i/SKIN_RAMP_LENGTH) - 2); // main + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (i >> 1) + 1); + } + break; + + case SKINCOLOR_TEAL: + // 6 colors + for (i = 0; i < SKIN_RAMP_LENGTH; i++) + { + if (i <= 1) + dest_colormap[starttranscolor + i] = 0x78; // Lightest + else if (i >= 13) + dest_colormap[starttranscolor + i] = 0x8a; // Darkest + else + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + ((i - 1)/3)); + } + break; + + case SKINCOLOR_AZURE: + // 8 colors + for (i = 0; i < SKIN_RAMP_LENGTH; i++) + { + if (i <= 3) + dest_colormap[starttranscolor + i] = (UINT8)(0x90 + i/2); // Lightest + else + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (i >> 1) - 2); + } + break; + + case SKINCOLOR_BLUE: + // 16 colors + for (i = 0; i < SKIN_RAMP_LENGTH; i++) + { + if (i == 15) + dest_colormap[starttranscolor + i] = 0x1F; //Darkest 1 + else if (i == 14) + dest_colormap[starttranscolor + i] = 0xfd; //Darkest 2 + else + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + i); + } + break; + + case SKINCOLOR_PASTEL: + // 10 colors + for (i = 0; i < SKIN_RAMP_LENGTH; i++) + { + if (i >= 12) + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + i - 7); // Darkest + else if (i <= 1) + dest_colormap[starttranscolor + i] = 0x90; // Lightest + else + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (i >> 1) - 1); + } + break; + + case SKINCOLOR_PURPLE: + // 10 colors + for (i = 0; i < SKIN_RAMP_LENGTH; i++) + { + if (i <= 3) + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + i); // Lightest + else + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (i >> 1) + 2); + } + break; + + case SKINCOLOR_MAGENTA: + // 9 colors + for (i = 0; i < SKIN_RAMP_LENGTH; i++) + if (i == 0) + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1]); // Lightest + else + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + (i >> 1) + 1); + break; + + case SKINCOLOR_ROSY: + // 9 colors + for (i = 0; i < SKIN_RAMP_LENGTH; i++) + { + if (i == 0) + dest_colormap[starttranscolor + i] = 0xfc; // Lightest + else + dest_colormap[starttranscolor + i] = (UINT8)(skinbasecolors[color - 1] + ((i - 1) >> 1)); } break; @@ -612,67 +625,19 @@ static void R_GenerateTranslationColormap(UINT8 *dest_colormap, INT32 skinnum, U dest_colormap[starttranscolor + 15] = (UINT8)63; break; - // Super Tails + // Super Tails and Knuckles, who really should be dummied out by now case SKINCOLOR_TSUPER1: - for (i = 0; i < 10; i++) // white - dest_colormap[starttranscolor + i] = 120; - for (; i < SKIN_RAMP_LENGTH; i++) // orange - dest_colormap[starttranscolor + i] = (UINT8)(80 + (i-10)); - break; - case SKINCOLOR_TSUPER2: - for (i = 0; i < 4; i++) // white - dest_colormap[starttranscolor + i] = 120; - for (; i < SKIN_RAMP_LENGTH; i++) // orange - dest_colormap[starttranscolor + i] = (UINT8)(80 + ((i-4)>>1)); - break; - case SKINCOLOR_TSUPER3: - dest_colormap[starttranscolor] = 120; // pure white - dest_colormap[starttranscolor+1] = 120; - for (i = 2; i < SKIN_RAMP_LENGTH; i++) // orange - dest_colormap[starttranscolor + i] = (UINT8)(80 + ((i-2)>>1)); - break; - case SKINCOLOR_TSUPER4: - dest_colormap[starttranscolor] = 120; // pure white - for (i = 1; i < 9; i++) // orange - dest_colormap[starttranscolor + i] = (UINT8)(80 + (i-1)); - for (; i < SKIN_RAMP_LENGTH; i++) // gold - dest_colormap[starttranscolor + i] = (UINT8)(115 + (5*(i-9)/7)); - break; - case SKINCOLOR_TSUPER5: - for (i = 0; i < 8; i++) // orange - dest_colormap[starttranscolor + i] = (UINT8)(80 + i); - for (; i < SKIN_RAMP_LENGTH; i++) // gold - dest_colormap[starttranscolor + i] = (UINT8)(115 + (5*(i-8)/8)); - break; - - // Super Knuckles case SKINCOLOR_KSUPER1: - for (i = 0; i < SKIN_RAMP_LENGTH; i++) - dest_colormap[starttranscolor + i] = (UINT8)(120 + (i >> 2)); - break; - case SKINCOLOR_KSUPER2: - for (i = 0; i < SKIN_RAMP_LENGTH; i++) - dest_colormap[starttranscolor + i] = (UINT8)(120 + (6*i/SKIN_RAMP_LENGTH)); - break; - case SKINCOLOR_KSUPER3: - for (i = 0; i < SKIN_RAMP_LENGTH; i++) - dest_colormap[starttranscolor + i] = (UINT8)(120 + (i >> 1)); - break; - case SKINCOLOR_KSUPER4: - for (i = 0; i < SKIN_RAMP_LENGTH; i++) - dest_colormap[starttranscolor + i] = (UINT8)(121 + (i >> 1)); - break; - case SKINCOLOR_KSUPER5: for (i = 0; i < SKIN_RAMP_LENGTH; i++) - dest_colormap[starttranscolor + i] = (UINT8)(122 + (i >> 1)); + dest_colormap[starttranscolor + i] = 0xFF; break; default: @@ -986,3 +951,4 @@ void R_DrawViewBorder(void) // ========================================================================== #include "r_draw16.c" + diff --git a/src/r_draw8.c b/src/r_draw8.c index e0264ba92..d6c109574 100644 --- a/src/r_draw8.c +++ b/src/r_draw8.c @@ -105,7 +105,7 @@ void R_DrawColumn_8(void) } } -#define TRANSPARENTPIXEL 247 +#define TRANSPARENTPIXEL 255 void R_Draw2sMultiPatchColumn_8(void) { @@ -947,3 +947,4 @@ void R_DrawColumnShadowed_8(void) if (dc_yl <= realyh) walldrawerfunc(); // R_DrawWallColumn_8 for the appropriate architecture } +