From 0e082551b1bf6d65ae9c1a406abbbc6db5f067d2 Mon Sep 17 00:00:00 2001 From: Misa Date: Sun, 26 Apr 2020 18:33:07 -0700 Subject: [PATCH] De-duplicate screen effects timer decrementing The code to decrement the timers for flashing and shaking is now handled outside the game-gamestate case-switch, instead of having to be duplicated inside each render function. As a bonus, I made it so the timer decrements even if screen effects are disabled. This is to prevent any theoretical situation where the timer can "pile up" due to disabled screen effects not letting it tick down. --- desktop_version/src/Render.cpp | 12 ------------ desktop_version/src/editor.cpp | 2 -- desktop_version/src/main.cpp | 10 ++++++++++ desktop_version/src/preloader.cpp | 2 -- 4 files changed, 10 insertions(+), 16 deletions(-) diff --git a/desktop_version/src/Render.cpp b/desktop_version/src/Render.cpp index 61bd0e64..cb0a64fa 100644 --- a/desktop_version/src/Render.cpp +++ b/desktop_version/src/Render.cpp @@ -1126,13 +1126,11 @@ void titlerender() if (game.flashlight > 0 && !game.noflashingmode) { - game.flashlight--; graphics.flashlight(); } if (game.screenshake > 0 && !game.noflashingmode) { - game.screenshake--; graphics.screenshake(); } else @@ -1291,13 +1289,11 @@ void gamecompleterender() if (game.flashlight > 0 && !game.noflashingmode) { - game.flashlight--; graphics.flashlight(); } if (game.screenshake > 0 && !game.noflashingmode) { - game.screenshake--; graphics.screenshake(); } else @@ -1335,13 +1331,11 @@ void gamecompleterender2() if (game.flashlight > 0 && !game.noflashingmode) { - game.flashlight--; graphics.flashlight(); } if (game.screenshake > 0 && !game.noflashingmode) { - game.screenshake--; graphics.screenshake(); } else @@ -1705,13 +1699,11 @@ void gamerender() if (game.flashlight > 0 && !game.noflashingmode) { - game.flashlight--; graphics.flashlight(); } if (game.screenshake > 0 && !game.noflashingmode) { - game.screenshake--; graphics.screenshake(); } else @@ -2520,7 +2512,6 @@ void maprender() if (game.flashlight > 0 && !game.noflashingmode) { - game.flashlight--; graphics.flashlight(); } @@ -2559,7 +2550,6 @@ void maprender() { if (game.screenshake > 0 && !game.noflashingmode) { - game.screenshake--; graphics.screenshake(); } else @@ -2697,7 +2687,6 @@ void teleporterrender() if (game.flashlight > 0 && !game.noflashingmode) { - game.flashlight--; graphics.flashlight(); } @@ -2736,7 +2725,6 @@ void teleporterrender() { if (game.screenshake > 0 && !game.noflashingmode) { - game.screenshake--; graphics.screenshake(); } else diff --git a/desktop_version/src/editor.cpp b/desktop_version/src/editor.cpp index eae32982..dedceaf0 100644 --- a/desktop_version/src/editor.cpp +++ b/desktop_version/src/editor.cpp @@ -3424,13 +3424,11 @@ void editorrender() if (game.flashlight > 0 && !game.noflashingmode) { - game.flashlight--; graphics.flashlight(); } if (game.screenshake > 0 && !game.noflashingmode) { - game.screenshake--; graphics.screenshake(); } else diff --git a/desktop_version/src/main.cpp b/desktop_version/src/main.cpp index 38b571be..c96faf7f 100644 --- a/desktop_version/src/main.cpp +++ b/desktop_version/src/main.cpp @@ -479,6 +479,16 @@ int main(int argc, char *argv[]) } + //Screen effects timers + if (game.infocus && game.flashlight > 0) + { + game.flashlight--; + } + if (game.infocus && game.screenshake > 0) + { + game.screenshake--; + } + //We did editorinput, now it's safe to turn this off key.linealreadyemptykludge = false; diff --git a/desktop_version/src/preloader.cpp b/desktop_version/src/preloader.cpp index 5f11fe51..6fab8ee4 100644 --- a/desktop_version/src/preloader.cpp +++ b/desktop_version/src/preloader.cpp @@ -97,13 +97,11 @@ void preloaderrender() if (game.flashlight > 0 && !game.noflashingmode) { - game.flashlight--; graphics.flashlight(); } if (game.screenshake > 0 && !game.noflashingmode) { - game.screenshake--; graphics.screenshake(); } else