update stuff

This commit is contained in:
wolfy852 2015-11-07 13:56:21 -06:00
parent 5a033181b8
commit 1ed5407821
8 changed files with 329 additions and 355 deletions

View File

@ -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();
}

View File

@ -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.

View File

@ -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

View File

@ -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__

View File

@ -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_

View File

@ -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

View File

@ -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"

View File

@ -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
}