From 15c74600590b833302c103b18488af79ede47c67 Mon Sep 17 00:00:00 2001 From: helixhorned Date: Thu, 2 Feb 2012 17:34:16 +0000 Subject: [PATCH] When loading a map and in a few other places, reset screen tinting. git-svn-id: https://svn.eduke32.com/eduke32@2306 1a8010ca-5511-0410-912e-c29ae57300e0 --- polymer/eduke32/source/game.c | 5 +++-- polymer/eduke32/source/menus.c | 2 +- polymer/eduke32/source/osdcmds.c | 2 +- polymer/eduke32/source/premap.c | 2 +- polymer/eduke32/source/savegame.c | 1 + 5 files changed, 7 insertions(+), 5 deletions(-) diff --git a/polymer/eduke32/source/game.c b/polymer/eduke32/source/game.c index b33b40542..1d9ee77eb 100644 --- a/polymer/eduke32/source/game.c +++ b/polymer/eduke32/source/game.c @@ -2658,7 +2658,8 @@ void G_DisplayRest(int32_t smoothratio) if (g_restorePalette < 2 || omovethingscnt+1 == g_moveThingsCount) { - P_SetGamePalette(pp,pp->palette,2+16); + // g_restorePalette < 0: reset tinting, too (e.g. when loading new game) + P_SetGamePalette(pp,pp->palette, 2 + (g_restorePalette>0)*16); g_restorePalette = 0; } else @@ -7443,7 +7444,7 @@ void G_HandleLocalKeys(void) CONTROL_ClearButton(gamefunc_See_Coop_View); screenpeek = connectpoint2[screenpeek]; if (screenpeek == -1) screenpeek = 0; - g_restorePalette = 1; + g_restorePalette = -1; } if ((g_netServer || ud.multimode > 1) && BUTTON(gamefunc_Show_Opponents_Weapon)) diff --git a/polymer/eduke32/source/menus.c b/polymer/eduke32/source/menus.c index 9d15bcda5..cb01ef9ab 100644 --- a/polymer/eduke32/source/menus.c +++ b/polymer/eduke32/source/menus.c @@ -3348,7 +3348,7 @@ cheat_for_port_credits: } else onvideomodechange(nbpp > 8); - g_restorePalette = 1; + g_restorePalette = -1; G_UpdateScreenArea(); setrendermode(nrend); diff --git a/polymer/eduke32/source/osdcmds.c b/polymer/eduke32/source/osdcmds.c index 1d355e10c..d9fd27dc4 100644 --- a/polymer/eduke32/source/osdcmds.c +++ b/polymer/eduke32/source/osdcmds.c @@ -733,7 +733,7 @@ void onvideomodechange(int32_t newmode) #endif setbrightness(ud.brightness>>2, palid, 0); - g_restorePalette = 1; + g_restorePalette = -1; g_crosshairSum = 0; } diff --git a/polymer/eduke32/source/premap.c b/polymer/eduke32/source/premap.c index a4ad499d3..4cda79f77 100644 --- a/polymer/eduke32/source/premap.c +++ b/polymer/eduke32/source/premap.c @@ -2099,7 +2099,7 @@ int32_t G_EnterLevel(int32_t g) for (i=g_numInterpolations-1; i>=0; i--) bakipos[i] = *curipos[i]; - g_restorePalette = 1; + g_restorePalette = -1; // mmulti_flushpackets(); diff --git a/polymer/eduke32/source/savegame.c b/polymer/eduke32/source/savegame.c index c3dd2f507..55d0a86b8 100644 --- a/polymer/eduke32/source/savegame.c +++ b/polymer/eduke32/source/savegame.c @@ -2621,6 +2621,7 @@ static void postloadplayer(int32_t savegamep) //3 P_UpdateScreenPal(g_player[myconnectindex].ps); + g_restorePalette = -1; //3.5 if (savegamep)