1
0
mirror of https://github.com/TerryCavanagh/VVVVVV.git synced 2024-06-25 22:18:30 +02:00
VVVVVV/desktop_version/src
Dav999-v 80b9bcf0dd Add level exploring menu for translators
I would, of course, recommend translators to translate the roomnames
while playing the full game (optionally in invincibility) so they can
immediately get all the context and maybe the most inspiration. And if
you want to go back into a specific level, then there's always the time
trials and intermission replays which will give you full coverage of
all the room names.

However, the time trials weren't really made for room name translation.
They have some annoying features like the instant restart when you
press ENTER at the wrong time, they remove context clues like
teleporters and companions, but the worst problem is that the last room
in a level is often completely untranslatable inside the time trials
because you immediately get sent to the results screen...

So, I added a new menu in the translator options, "explore game", which
gives you access to all the time trials and the two intermissions, from
the same menu. All these time trials (which they're still based off of,
under the hood) are stripped of the annoying features that come with
time trials. These are the changes I made to time trial behavior in
translator exploring mode:

- No 3-2-1-Go! countdown
- No on-screen time/death/shiny/par
- ENTER doesn't restart, and the map menu works. The entire map is also
  revealed.
- Prize for the Reckless is in its normal form
- The teleporters in Entanglement Generator, Wheeler's Wormhole and
  Level Complete are restored as context for room names (actually, we
  should probably restore them in time trials anyway? Their "press to
  teleport" prompt is already blocked out in time trials and they do
  nothing other than being a checkpoint. I guess the reason they were
  removed was to stop people from opening the teleporter menu when that
  was not specifically blocked out in time trials yet.)
- The companions are there at the end of levels, and behave like in no
  death mode (become happy and follow you to the teleporter). Also for
  context.
- At the end of each level, you're not suddenly sent to the menu, but
  you can use the teleporter at your leisure just like in the
  intermission replays. In the Final Level, you do get sent to the menu
  automatically, but after a longer delay.

I made another mark on VVVVVV: don't be startled, I added gamestates.
I wanted all teleporters at the end of levels to behave like the ones
at the end of the intermission replays, and all handling for
teleporting with specific companions is already done in gamestates, so
rather than adding conditional blocks across 5 or so different
gamestates, it made more sense to make a single gamestate for
"teleporting in translator exploring mode" (3090). I also added an
alternative to having to use gamestate 3500 or 82 for the end of the
final level: 3091-3092.

One other thing I want to add to the "explore game" menu: a per-level
count of how many room names are left to translate. That shouldn't be
too difficult, and I'm planning that for the next commit.
2022-12-31 20:04:56 -08:00
..
Alloc.h Replace all free calls with VVV_free[func] 2022-11-30 22:50:08 -08:00
BinaryBlob.cpp Replace all free calls with VVV_free[func] 2022-11-30 22:50:08 -08:00
BinaryBlob.h Use fixed-size int types for resourceheader 2021-09-23 22:21:49 -07:00
BlockV.cpp Add setactivityposition(x,y), add new textbox color transparent (#847) 2021-10-13 15:38:51 -07:00
BlockV.h Add setactivityposition(x,y), add new textbox color transparent (#847) 2021-10-13 15:38:51 -07:00
Constants.h Fix SCREEN_HEIGHT_PIXELS being wrong constant 2021-10-01 09:35:28 -07:00
Credits.h Render.cpp: make titlerender and gamecompleterender translatable 2022-12-31 20:04:56 -08:00
CustomLevels.cpp Add localization "foundation" (many code changes) 2022-12-31 20:04:56 -08:00
CustomLevels.h Add localization "foundation" (many code changes) 2022-12-31 20:04:56 -08:00
CWrappers.cpp Use loc::toupper_ch instead of SDL_toupper in VFormat 2022-12-31 20:04:56 -08:00
CWrappers.h Use loc::toupper_ch instead of SDL_toupper in VFormat 2022-12-31 20:04:56 -08:00
DeferCallbacks.c Add deferred callbacks to game loop 2021-03-21 02:55:42 -04:00
DeferCallbacks.h Add deferred callbacks to game loop 2021-03-21 02:55:42 -04:00
Editor.cpp Editor.cpp: make remaining strings translatable 2022-12-31 20:04:56 -08:00
Editor.h Use const std::string& where possible in function params 2021-09-06 15:43:59 -07:00
Ent.cpp Untabify every single file 2021-09-06 18:56:39 -07:00
Ent.h Untabify every single file 2021-09-06 18:56:39 -07:00
Entity.cpp Entity.cpp: make all activity prompts translatable 2022-12-31 20:04:56 -08:00
Entity.h Unexport getgridpoint 2022-12-11 12:40:45 -08:00
Enums.h Remove unused game-gamestates 2021-12-18 00:01:32 -08:00
Exit.h Use SDL_NORETURN 2021-09-27 10:32:23 -07:00
FileSystemUtils.cpp FileSystemUtils.cpp: make translatable 2022-12-31 20:04:56 -08:00
FileSystemUtils.h Add localization "foundation" (many code changes) 2022-12-31 20:04:56 -08:00
Finalclass.cpp Add level exploring menu for translators 2022-12-31 20:04:56 -08:00
Finalclass.h Indicate what special roomnames are in the levels 2022-12-31 20:04:56 -08:00
Game.cpp Add level exploring menu for translators 2022-12-31 20:04:56 -08:00
Game.h Add level exploring menu for translators 2022-12-31 20:04:56 -08:00
GlitchrunnerMode.c Split glitchrunner mode into multiple versions 2021-08-05 13:35:21 -04:00
GlitchrunnerMode.h Split glitchrunner mode into multiple versions 2021-08-05 13:35:21 -04:00
GOGNetwork.c Axe NETWORK_[set/get]AchievementProgress() 2021-09-19 21:49:54 -07:00
Graphics.cpp Render.cpp: make maprender translatable 2022-12-31 20:04:56 -08:00
Graphics.h Render.cpp: make maprender translatable 2022-12-31 20:04:56 -08:00
GraphicsResources.cpp Replace all free calls with VVV_free[func] 2022-11-30 22:50:08 -08:00
GraphicsResources.h Consistently use angle brackets for SDL.h includes 2020-07-19 21:37:40 -04:00
GraphicsUtil.cpp Replace all free calls with VVV_free[func] 2022-11-30 22:50:08 -08:00
GraphicsUtil.h Add ClearSurface() 2021-02-25 19:38:25 -05:00
Input.cpp Add level exploring menu for translators 2022-12-31 20:04:56 -08:00
Input.h Explicitly declare void for all void parameter functions (#628) 2021-02-25 17:23:59 -05:00
InterimVersion.h Optimize recompilation from changing commit hash 2022-08-23 00:00:38 -07:00
InterimVersion.in.c Optimize recompilation from changing commit hash 2022-08-23 00:00:38 -07:00
KeyPoll.cpp Add Ctrl+X for roomname translator mode 2022-12-31 20:04:56 -08:00
KeyPoll.h Add localization "foundation" (many code changes) 2022-12-31 20:04:56 -08:00
Labclass.cpp Add level exploring menu for translators 2022-12-31 20:04:56 -08:00
Labclass.h Indicate what special roomnames are in the levels 2022-12-31 20:04:56 -08:00
Localization.cpp Add Localization.cpp/h (not compiled yet) 2022-12-31 20:04:56 -08:00
Localization.h Add Localization.cpp/h (not compiled yet) 2022-12-31 20:04:56 -08:00
LocalizationMaint.cpp Add LocalizationMaint.cpp/h (not compiled yet) 2022-12-31 20:04:56 -08:00
LocalizationMaint.h Add LocalizationMaint.cpp/h (not compiled yet) 2022-12-31 20:04:56 -08:00
LocalizationStorage.cpp Add LocalizationStorage.cpp/h (not compiled yet) 2022-12-31 20:04:56 -08:00
LocalizationStorage.h Add LocalizationStorage.cpp/h (not compiled yet) 2022-12-31 20:04:56 -08:00
lodepng_wrapper.c Migrate LodePNG to submodule 2022-03-13 23:50:37 -07:00
Logic.cpp Add level exploring menu for translators 2022-12-31 20:04:56 -08:00
Logic.h Explicitly declare void for all void parameter functions (#628) 2021-02-25 17:23:59 -05:00
main.cpp main.cpp: make pause screen translatable 2022-12-31 20:04:56 -08:00
MakeAndPlay.h Use multiline comments in C files 2021-04-17 00:50:04 -04:00
Map.cpp Make some hardcoded room names (and some special ones) translatable 2022-12-31 20:04:56 -08:00
Map.h Indicate what special roomnames are in the levels 2022-12-31 20:04:56 -08:00
Maths.h Remove clamp in favor of SDL_clamp 2022-02-11 17:31:41 -05:00
Music.cpp Replace all free calls with VVV_free[func] 2022-11-30 22:50:08 -08:00
Music.h SDL_mixer is now entirely contained in Music.cpp. 2021-12-26 08:57:38 -05:00
Network.c Axe NETWORK_[set/get]AchievementProgress() 2021-09-19 21:49:54 -07:00
Network.h Explicitly declare void for all void parameter functions (#628) 2021-02-25 17:23:59 -05:00
Otherlevel.cpp Indicate what special roomnames are in the levels 2022-12-31 20:04:56 -08:00
Otherlevel.h Indicate what special roomnames are in the levels 2022-12-31 20:04:56 -08:00
preloader.cpp preloader.cpp: make loading screen translatable 2022-12-31 20:04:56 -08:00
preloader.h Explicitly declare void for all void parameter functions (#628) 2021-02-25 17:23:59 -05:00
ReleaseVersion.h De-duplicate release version 2022-08-23 00:00:39 -07:00
Render.cpp Add level exploring menu for translators 2022-12-31 20:04:56 -08:00
Render.h Explicitly declare void for all void parameter functions (#628) 2021-02-25 17:23:59 -05:00
RenderFixed.cpp Use resumegamemode to track menu animation 2021-09-05 16:59:05 -07:00
RenderFixed.h Remove now-unneeded deltaframe fix when going to in-game settings 2021-03-21 02:55:42 -04:00
RoomnameTranslator.cpp Add RoomnameTranslator.cpp/h (not compiled yet) 2022-12-31 20:04:56 -08:00
RoomnameTranslator.h Add RoomnameTranslator.cpp/h (not compiled yet) 2022-12-31 20:04:56 -08:00
Screen.cpp Replace all free calls with VVV_free[func] 2022-11-30 22:50:08 -08:00
Screen.h Add forced fullscreen mode 2021-12-25 23:01:45 -08:00
ScreenSettings.h Add and use scaling mode enum 2021-12-25 23:14:12 -08:00
Script.cpp Add level exploring menu for translators 2022-12-31 20:04:56 -08:00
Script.h Add localization "foundation" (many code changes) 2022-12-31 20:04:56 -08:00
Scripts.cpp Add textcase(n) commands to scripts 2022-12-31 20:04:56 -08:00
Spacestation2.cpp Add level exploring menu for translators 2022-12-31 20:04:56 -08:00
Spacestation2.h Indicate what special roomnames are in the levels 2022-12-31 20:04:56 -08:00
SteamNetwork.c Silence GCC warnings about void*-to-function-pointer casts 2021-10-21 01:00:06 -07:00
TerminalScripts.cpp Add textcase(n) commands to scripts 2022-12-31 20:04:56 -08:00
Textbook.c Add Textbook 2022-12-31 20:04:56 -08:00
Textbook.h Add Textbook 2022-12-31 20:04:56 -08:00
Textbox.cpp Add localization "foundation" (many code changes) 2022-12-31 20:04:56 -08:00
Textbox.h Add localization "foundation" (many code changes) 2022-12-31 20:04:56 -08:00
ThirdPartyDeps.c Replace all free calls with VVV_free[func] 2022-11-30 22:50:08 -08:00
Tower.cpp Add POS_MOD macro and use for all positive modulos 2021-09-24 17:48:15 -07:00
Tower.h Remove vmult lookup tables 2021-09-24 16:37:27 -07:00
TowerBG.h Untabify every single file 2021-09-06 18:56:39 -07:00
Unreachable.h Use _SDL_HAS_BUILTIN 2022-12-29 16:13:54 -08:00
Unused.h Factor out UNUSED macro to header file 2021-05-25 15:23:34 -04:00
UtilityClass.cpp UtilityClass.cpp: make time formats and numbers translatable 2022-12-31 20:04:56 -08:00
UtilityClass.h Simplify time formatting functions 2021-12-25 11:38:12 -08:00
VFormat.c Use loc::toupper_ch instead of SDL_toupper in VFormat 2022-12-31 20:04:56 -08:00
VFormat.h Support underscore (_) in VFormat arg name 2022-12-31 20:04:56 -08:00
Vlogging.c Add color support to Windows console output, properly 2022-11-14 21:57:01 -08:00
Vlogging.h Add -console option on Windows 2022-11-14 19:40:23 -08:00
WarpClass.cpp Add level exploring menu for translators 2022-12-31 20:04:56 -08:00
WarpClass.h Indicate what special roomnames are in the levels 2022-12-31 20:04:56 -08:00
XMLUtils.cpp Move all settings to settings.vvv 2020-11-04 12:06:57 -05:00
XMLUtils.h Add localization "foundation" (many code changes) 2022-12-31 20:04:56 -08:00
Xoshiro.c Move xoshiro_seed debug print to top 2022-11-14 13:14:25 -08:00
Xoshiro.h Replace Gravitron RNG with seeded Xoshiro 2021-08-27 12:28:35 -07:00