mirror of
https://github.com/fabiangreffrath/woof.git
synced 2025-09-22 03:12:00 -04:00
add a Crispy Doom automap color scheme (#1709)
* add a Crispy Doom automap color scheme https://www.doomworld.com/forum/topic/112333-this-is-woof-1450-apr-30-2024/?page=92&tab=comments#comment-2804787 * adjust mapcolor_preset description * move enum to source file * print the map title in white from the first colon onward * remove multi-colored map title again * double check color accuracy
This commit is contained in:
parent
2fb776726a
commit
7e46bed40a
85
src/am_map.c
85
src/am_map.c
@ -2297,48 +2297,56 @@ void AM_Drawer (void)
|
||||
AM_drawMarks();
|
||||
}
|
||||
|
||||
int mapcolor_preset;
|
||||
typedef enum {
|
||||
AM_PRESET_VANILLA,
|
||||
AM_PRESET_CRISPY,
|
||||
AM_PRESET_BOOM,
|
||||
AM_PRESET_ZDOOM,
|
||||
NUM_AM_PRESETS
|
||||
} am_preset_t;
|
||||
|
||||
am_preset_t mapcolor_preset;
|
||||
|
||||
void AM_ColorPreset(void)
|
||||
{
|
||||
struct
|
||||
{
|
||||
int *var;
|
||||
int color[3]; // Vanilla Doom, Boom, ZDoom
|
||||
int color[NUM_AM_PRESETS]; // Vanilla Doom, Crispy, Boom, ZDoom
|
||||
} mapcolors[] =
|
||||
{ // ZDoom CVAR name
|
||||
{&mapcolor_back, { 0, 247, 139}}, // am_backcolor
|
||||
{&mapcolor_grid, {104, 104, 70}}, // am_gridcolor
|
||||
{&mapcolor_wall, {176, 23, 239}}, // am_wallcolor
|
||||
{&mapcolor_fchg, { 64, 55, 135}}, // am_fdwallcolor
|
||||
{&mapcolor_cchg, {231, 215, 76}}, // am_cdwallcolor
|
||||
{&mapcolor_clsd, { 0, 208, 0}},
|
||||
{&mapcolor_rkey, {176, 175, 176}}, // P_GetMapColorForLock()
|
||||
{&mapcolor_bkey, {200, 204, 200}}, // P_GetMapColorForLock()
|
||||
{&mapcolor_ykey, {231, 231, 231}}, // P_GetMapColorForLock()
|
||||
{&mapcolor_rdor, {176, 175, 176}}, // P_GetMapColorForLock()
|
||||
{&mapcolor_bdor, {200, 204, 200}}, // P_GetMapColorForLock()
|
||||
{&mapcolor_ydor, {231, 231, 231}}, // P_GetMapColorForLock()
|
||||
{&mapcolor_tele, { 0, 119, 200}}, // am_intralevelcolor
|
||||
{&mapcolor_secr, { 0, 252, 251}}, // am_unexploredsecretcolor
|
||||
{&mapcolor_revsecr, { 0, 112, 251}}, // am_secretsectorcolor
|
||||
{&mapcolor_exit, { 0, 208, 176}}, // am_interlevelcolor
|
||||
{&mapcolor_unsn, { 99, 104, 100}}, // am_notseencolor
|
||||
{&mapcolor_flat, { 97, 88, 95}}, // am_tswallcolor
|
||||
{&mapcolor_sprt, {112, 112, 4}}, // am_thingcolor
|
||||
{&mapcolor_hair, { 96, 208, 97}}, // am_xhaircolor
|
||||
{&mapcolor_sngl, {209, 208, 209}}, // am_yourcolor
|
||||
{&mapcolor_plyr[0], {112, 112, 112}},
|
||||
{&mapcolor_plyr[1], { 88, 88, 88}},
|
||||
{&mapcolor_plyr[2], { 64, 64, 64}},
|
||||
{&mapcolor_plyr[3], {176, 176, 176}},
|
||||
{&mapcolor_frnd, {252, 252, 4}}, // am_thingcolor_friend
|
||||
{&mapcolor_enemy, {112, 177, 4}}, // am_thingcolor_monster
|
||||
{&mapcolor_item, {112, 231, 4}}, // am_thingcolor_item
|
||||
{&mapcolor_back, { 0, 0, 247, 139}}, // am_backcolor
|
||||
{&mapcolor_grid, {104, 104, 104, 70}}, // am_gridcolor
|
||||
{&mapcolor_wall, {176, 180, 23, 239}}, // am_wallcolor
|
||||
{&mapcolor_fchg, { 64, 70, 55, 135}}, // am_fdwallcolor
|
||||
{&mapcolor_cchg, {231, 163, 215, 76}}, // am_cdwallcolor
|
||||
{&mapcolor_clsd, { 0, 0, 208, 0}},
|
||||
{&mapcolor_rkey, {176, 176, 175, 176}}, // P_GetMapColorForLock()
|
||||
{&mapcolor_bkey, {200, 200, 204, 200}}, // P_GetMapColorForLock()
|
||||
{&mapcolor_ykey, {231, 231, 231, 231}}, // P_GetMapColorForLock()
|
||||
{&mapcolor_rdor, {176, 174, 175, 176}}, // P_GetMapColorForLock()
|
||||
{&mapcolor_bdor, {200, 200, 204, 200}}, // P_GetMapColorForLock()
|
||||
{&mapcolor_ydor, {231, 229, 231, 231}}, // P_GetMapColorForLock()
|
||||
{&mapcolor_tele, { 0, 120, 119, 200}}, // am_intralevelcolor
|
||||
{&mapcolor_secr, { 0, -1, 252, 251}}, // am_unexploredsecretcolor
|
||||
{&mapcolor_revsecr, { 0, -1, 112, 251}}, // am_secretsectorcolor
|
||||
{&mapcolor_exit, { 0, 209, 208, 176}}, // am_interlevelcolor
|
||||
{&mapcolor_unsn, { 99, 99, 104, 100}}, // am_notseencolor
|
||||
{&mapcolor_flat, { 96, 96, 88, 95}}, // am_tswallcolor
|
||||
{&mapcolor_sprt, {112, 112, 112, 4}}, // am_thingcolor
|
||||
{&mapcolor_hair, { 96, 96, 208, 97}}, // am_xhaircolor
|
||||
{&mapcolor_sngl, {209, 209, 208, 209}}, // am_yourcolor
|
||||
{&mapcolor_plyr[0], {112, 112, 112, 112}},
|
||||
{&mapcolor_plyr[1], { 96, 96, 88, 88}},
|
||||
{&mapcolor_plyr[2], { 64, 64, 64, 64}},
|
||||
{&mapcolor_plyr[3], {176, 176, 176, 176}},
|
||||
{&mapcolor_frnd, {252, 252, 252, 4}}, // am_thingcolor_friend
|
||||
{&mapcolor_enemy, {112, 176, 177, 4}}, // am_thingcolor_monster
|
||||
{&mapcolor_item, {112, 231, 231, 4}}, // am_thingcolor_item
|
||||
|
||||
{&hudcolor_titl, {CR_NONE, CR_GOLD, CR_GRAY}}, // DrawAutomapHUD()
|
||||
{&hudcolor_titl, {CR_NONE, CR_GOLD, CR_GOLD, CR_GRAY}}, // DrawAutomapHUD()
|
||||
|
||||
{NULL, { 0, 0, 0}},
|
||||
{NULL, { 0, 0, 0, 0}},
|
||||
};
|
||||
|
||||
int i;
|
||||
@ -2353,6 +2361,14 @@ void AM_ColorPreset(void)
|
||||
{
|
||||
HU_Start();
|
||||
}
|
||||
|
||||
// [crispy] Make secret wall colors independent from PLAYPAL color indexes
|
||||
if (mapcolor_preset == AM_PRESET_CRISPY)
|
||||
{
|
||||
byte *playpal = W_CacheLumpName("PLAYPAL", PU_CACHE);
|
||||
mapcolor_secr = I_GetPaletteIndex(playpal, 255, 0, 255);
|
||||
mapcolor_revsecr = I_GetPaletteIndex(playpal, 119, 255, 111);
|
||||
}
|
||||
}
|
||||
|
||||
void AM_BindAutomapVariables(void)
|
||||
@ -2376,8 +2392,9 @@ void AM_BindAutomapVariables(void)
|
||||
M_BindBool("map_smooth_lines", &map_smooth_lines, NULL, true, ss_auto,
|
||||
wad_no, "Smooth automap lines");
|
||||
|
||||
M_BindNum("mapcolor_preset", &mapcolor_preset, NULL, 1, 0, 2, ss_auto, wad_no,
|
||||
"Automap color preset (0 = Vanilla Doom; 1 = Boom; 2 = ZDoom)");
|
||||
M_BindNum("mapcolor_preset", &mapcolor_preset, NULL, AM_PRESET_BOOM,
|
||||
AM_PRESET_VANILLA, AM_PRESET_ZDOOM, ss_auto, wad_no,
|
||||
"Automap color preset (0 = Vanilla Doom; 1 = Crispy Doom; 2 = Boom; 3 = ZDoom)");
|
||||
|
||||
#define BIND_CR(name, v, help) \
|
||||
M_BindNum(#name, &name, NULL, (v), 0, 255, ss_none, wad_yes, help)
|
||||
|
@ -1569,7 +1569,7 @@ void MN_DrawStatusHUD(void)
|
||||
|
||||
static const char *overlay_strings[] = {"Off", "On", "Dark"};
|
||||
|
||||
static const char *automap_preset_strings[] = {"Vanilla", "Boom", "ZDoom"};
|
||||
static const char *automap_preset_strings[] = {"Vanilla", "Crispy", "Boom", "ZDoom"};
|
||||
|
||||
static const char *automap_keyed_door_strings[] = {"Off", "On", "Flashing"};
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user