obligaron
9ac04314f4
Introduce Player::isOnLevel
4 years ago
obligaron
19749420b5
Introduce Player::isOnActiveLevel
4 years ago
Andrew James
0add7a8af6
Define sizes using Size type in control.cpp/stash.cpp ( #4737 )
...
* Use appropriate types for size constants in control.cpp
* Declare constexpr value for iterating over the cells in a stash grid
* Use appropriate type for UIRectangle dimensions
4 years ago
Gleb Mazovetskiy
b7404af9c7
Fix build with NONET and no exceptions
...
Fixes the build with `-fno-rtti` and `-fno-exceptions`.
Building with these flags reduces the binary size by more than 200 KiB.
4 years ago
ephphatha
e246ac78db
Simplify character test in UiValidPlayerName
4 years ago
ephphatha
771beeb82d
Use string_view for UiValidPlayerName
4 years ago
ephphatha
34b7d85263
Add IsLeadUtf8CodeUnit to complement trail byte detection
4 years ago
ephphatha
3c173df83b
Update comment on IsTrailUtf8CodeUnit
...
Also use char literals instead of int literals.
4 years ago
ephphatha
956fe7c093
Add tests for IsTrailUtf8CodeUnit
4 years ago
Gleb Mazovetskiy
563ee3af7c
Optimize `FormatInteger`
4 years ago
Gleb Mazovetskiy
a939b12f97
monstdat: Fix incompatible enum warning
4 years ago
Vladimir Olteanu
2cc9d70fa6
Use decimal separators for gold and XP ( #4722 )
4 years ago
obligaron
0efebc2cc8
Fix PlaceUniqueMonsters off by one monstertype
4 years ago
Anders Jenbo
73e84c9a44
Update Assets.cmake
4 years ago
Anders Jenbo
76704ac65f
Correct name of Bone Chamber transparancy data
4 years ago
obligaron
9713441b69
Fix PlaceUniqueMonsters when unique monster type is not active on the level
4 years ago
obligaron
b2714da91e
Fix: Disable lightning in town
4 years ago
Vladimir Olteanu
6f4fe8a142
Fix typo in CanPlaceRandomObject
4 years ago
Vladimir Olteanu
5d3274de45
Consolidate random object placement
4 years ago
Vladimir Olteanu
4d6ff58c22
Reduce reliance on `bool done` for control flow (part 1 of x) ( #4720 )
4 years ago
Oleksandr Kalko
31d43b3b84
UK TL: Translate new audio options
4 years ago
ephphatha
6a0fc6627e
Use LANGUAGE as a preference list if available
4 years ago
Gleb Mazovetskiy
f22d1d0149
Remove uses of deprecated codecvt
...
codecvt is deprecated in C++17 and we don't really need all of its heavy
machinery for simply converting to UTF-8.
4 years ago
Gleb Mazovetskiy
d500886293
Use env or <clocale> to get the locale
...
The C++ `std::locale("")` constructor performs a static
initialization of all the facets on the first call.
For example, this includes things like currency formatting.
Avoid all of that by using the environment variables with a fallback to
the equivalent C locale call.
4 years ago
Anders Jenbo
60856fb724
Clean up ApplyCryptShadowsPatterns
4 years ago
Anders Jenbo
0d5f07d93c
Clean up chamber generation
...
Share soom selection, remove unreachable cases
4 years ago
Anders Jenbo
fd98aff9f1
Move shared dungeon level code to common function
4 years ago
Anders Jenbo
6fa681e567
Clean up level initialization
4 years ago
Anders Jenbo
6fffbb4676
Clean up selecting what chamber to spawn quests in
4 years ago
obligaron
f0b3d9cb5b
pfile: remove savePrefix global
4 years ago
obligaron
7afe7d2a70
Save Methods in loadsave gets MpqWriter passed
4 years ago
Gleb Mazovetskiy
02d448267a
Render fonts as PCX (-420 KiB RAM)
...
Reduces peak memory consuption in game by ~420 KiB.
This is because the PCX renderer applies the palette on the fly while
rendering, meaning we do not need to duplicate the font for different
palettes.
This approach is also a bit slower than precomposed palettes (still
plenty fast).
4 years ago
Anders Jenbo
885d3ef49e
Bump fmt requirement to 8.0.0
...
because of fmt::runtime
4 years ago
Gleb Mazovetskiy
a885df8b21
Bump libmpq
...
Includes https://github.com/diasurgical/libmpq/pull/5
and https://github.com/diasurgical/libmpq/pull/6
4 years ago
Anders Jenbo
d17d7e018d
Use common function for loading .dun tile data
4 years ago
Gleb Mazovetskiy
2386fd12a9
Fix a few warnings
4 years ago
Gleb Mazovetskiy
9d2948c782
Loading screen: Free the background early
...
Frees the background after blitting it once in the loading screen.
This gives the game more RAM for the actual loading.
4 years ago
Gleb Mazovetskiy
fabbb62bb1
OpenDingux: `strip` `.comment` and `.gnu.version`
...
Saves 108 bytes in the binary size
4 years ago
Gleb Mazovetskiy
4a68c3baef
Remove unused and undefined `snd_stop_snd`
4 years ago
Gleb Mazovetskiy
ede7eab7e8
Fix `-wnarrowing` from `SDL_Rect` construction
4 years ago
Gleb Mazovetskiy
7cd9b23c7d
Fix NOSOUND build
...
Follow-up to 9d082389d8
4 years ago
staphen
b363d5d962
Fix order of loop conditions when adding spell missiles
4 years ago
ephphatha
d74e2f2b7e
Tidy up constants used in CreateRoom
4 years ago
ephphatha
8d0afac194
Don't preserve an unreachable vanilla bug
4 years ago
ephphatha
cf956aff96
Use identifiable messages when test cases fail
4 years ago
TheTank20
8ecfd9df2a
Update shareware link
4 years ago
Gleb Mazovetskiy
a4bd44b1cd
Fix MSVC ADL format error
...
fmt::join is required when formatting containers
4 years ago
Gleb Mazovetskiy
ecf4efdf67
CMAKE_CXX_STANDARD: 17 -> 20
...
This allows us to use heterogenous `unordered_map` where available.
4 years ago
Gleb Mazovetskiy
dab48daed6
options.cpp: Remove unnecessary data() calls
4 years ago
Gleb Mazovetskiy
1fc8ecb6f6
Add fmt::runtime annotations for C++20 support
...
`fmt` requires non-contexpr format string arguments to be wrapped in
`fmt::runtime` in C++20.
4 years ago