mirror of
https://github.com/TerryCavanagh/VVVVVV.git
synced 2024-12-22 17:49:43 +01:00
No description
ea4302b41e
This commit adds a new string formatting system to replace uses of `SDL_snprintf` and string concatenation. Making our own string formatting system has been briefly discussed during the review of the localization branch, and on the VVVVVV Discord. It's inspired by Python's format strings, but simpler. This is primarily to benefit localization - strings will be easier to understand (`Now using %s Tileset` → `Now using {area} Tileset`, `"%s remain"` → `"{n_crewmates|wordy} remain"`), translators can change the word order for their language's grammar (`%1$s` is a POSIX extension), and this system is also less error-prone (making the format string not align with the actual arguments won't result in a crash or UB). It also integrates our needs better - particularly the "wordy" numbers without having to have a `help.number_words(n).c_str()` at the callsite, translators can opt in and out of wordy numbers per string, and this should also make it easier to solve #859. This commit adds the formatting system itself, and changes one `SDL_snprintf` in the code to use it as a small demo (the rest should probably be done in the localization branch to avoid more unneeded work). The system is described in full detail in VFormat.h and in the pull request description. |
||
---|---|---|
.github | ||
desktop_version | ||
mobile_version | ||
third_party | ||
tools | ||
.gitattributes | ||
.gitmodules | ||
License exceptions.md | ||
LICENSE.md | ||
README.md |
This is the source code to VVVVVV, version 2.0+. For more context about this release, see the announcement on Terry's blog!
License
VVVVVV's source code is made available under a custom license. See LICENSE.md for more details.
In general, if you're interested in creating something that falls outside the license terms, get in touch with Terry and we'll talk about it!
Authors
- Created by Terry Cavanagh
- Room Names by Bennett Foddy
- Music by Magnus Pålsson
- Metal Soundtrack by FamilyJules
- 2.0 Update (C++ Port) by Simon Roth
- 2.2 Update (SDL2/PhysicsFS/Steamworks port) by Ethan Lee
- Beta Testing by Sam Kaplan and Pauli Kohberger
- Ending Picture by Pauli Kohberger
Versions
There are two versions of the VVVVVV source code available - the desktop version (based on the C++ port, and currently live on Steam), and the mobile version (based on a fork of the original flash source code, and currently live on iOS and Android).