From 4b3409e2e81d0a870631868ad7847fac6f5b622c Mon Sep 17 00:00:00 2001 From: Misa Date: Thu, 1 Apr 2021 16:21:58 -0700 Subject: [PATCH] Remove advancetext check from teleporter prompt logic This fixes being unable to use teleporters while the "- Press ACTION to advance text -" prompt is up, which is used to perform credits warp. In 2.2 and 2.0, this advancetext check was only in gamerender() for rendering the "- Press ENTER to Teleport -" prompt and didn't affect any logic. In 2.3, I moved the check (and the rest of the conditional it was in) to gamelogic() - same as the activity zone prompt conditionals - so if you gained control while being in a prompt zone, the prompt wouldn't suddenly appear[1]. As a side effect, this ended up aligning rendering and logic together, so if you couldn't see the teleporter prompt, you weren't able to teleport - whereas in 2.2 and 2.0, you could still use the teleporter even though the prompt wasn't up. So by removing the advancetext check, you are now able to use the teleporter again, AND the "- Press ENTER to Teleport -" prompt will also show up as well. Habeechee reported this regression on the VVVVVV speedrunning Discord server. [1]: f07a8d2143479a465c31aea2e08764197a37a2e3, PR #421 --- desktop_version/src/Logic.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/desktop_version/src/Logic.cpp b/desktop_version/src/Logic.cpp index a1ed2669..9ae1841f 100644 --- a/desktop_version/src/Logic.cpp +++ b/desktop_version/src/Logic.cpp @@ -1554,7 +1554,7 @@ void gamelogic(void) } game.oldreadytotele = game.readytotele; - if (game.activetele && !game.advancetext && game.hascontrol && !script.running && !game.intimetrial) + if (game.activetele && game.hascontrol && !script.running && !game.intimetrial) { int i = obj.getplayer(); SDL_Rect temprect = SDL_Rect();