Vladimir Olteanu
75ea31e89c
Remove unused misc items
2022-07-16 02:35:22 +02:00
Mikołaj Piróg
262fa9ac2d
Rename MonsterData members ( #5000 )
2022-07-15 16:20:13 +02:00
Anders Jenbo
ac2bf9aaac
Limit what gets called in headless mode
2022-07-13 18:54:36 +02:00
obligaron
0d00d75cd3
Items: Handle if CelSprite is not present
2022-07-13 18:54:36 +02:00
ephphatha
019b52c247
Remove temporary variables in SpawnRock
2022-07-13 11:44:07 +02:00
ephphatha
1337ff6ea2
Add check if a monster potentially has leashed minions
2022-07-13 07:13:34 +02:00
Anders Jenbo
2d21fc372e
Remove more miniwin code
2022-07-10 21:13:39 +02:00
Anders Jenbo
6a8fd04067
Use player by references ( #4938 )
2022-07-10 11:40:04 +02:00
Gleb Mazovetskiy
197e1180b2
Add StrCat and StrAppend
...
Adds simple string / integer concatenation functions.
Many of the uses of `fmt::format` are simply concatenation
of a few strings and integers.
`StrCat` is an easier-to-read alternative to such uses of `fmt`.
2022-07-10 06:14:58 +02:00
ephphatha
420a248e0c
Use FlipCoin for most uses of GenerateRnd with variable frequency
2022-07-10 02:37:33 +02:00
ephphatha
7c54066f31
Use PickRandomlyAmong when choosing between two options
2022-07-10 02:37:33 +02:00
ephphatha
bc0a058350
Invert FlipCoin
2022-07-10 02:37:33 +02:00
burningserenity
b5378f74d5
Apply formatting
2022-07-09 19:51:55 +02:00
burningserenity
69e0c51d8c
Another approach
2022-07-09 19:51:55 +02:00
Anders Jenbo
bd7d5a0143
Deduplicate using spells
2022-07-09 05:25:33 +02:00
staphen
cab75ded6b
Check both SPL_NULL and SPL_INVALID to determine spell validity
2022-07-09 04:04:22 +02:00
Cesar Canassa
bb3fb36ddc
✨ Introduces FlipCoin() (#4908 )
2022-07-07 20:57:03 +02:00
Mikołaj Piróg
15989609a8
Members' name changes and comments in Monster struct ( #4861 )
2022-07-06 10:21:22 +02:00
Mikołaj Piróg
dda0b96ea5
Remove #defines in player.h and add constexpr where applicable ( #4896 )
...
* Change defines to constexpr int in player.h
* Add const or constexpr to player.h/cpp where applicable
* Update tests with changed names of player constatns
* remove unecessary variable
2022-07-05 17:25:23 +02:00
k-bar
26de74f4a2
AnimationInfo class correct style ( #4870 )
...
* AnimationInfo class correct case-style for private members
clang-tidy warnings:
readability-identifier-naming invalid case style for private member
* AnimationInfo class correct case-style for members
clang-tidy warnings:
readability-identifier-naming invalid case style for member
* AnimationInfo class correct case-style for methods
clang-tidy warnings:
readability-identifier-naming invalid case style for method
* AnimationInfo class use nodiscard
clang-tidy warnings:
modernize-use-nodiscard function should be marked [[nodiscard]]
2022-07-03 16:55:37 +02:00
Gleb Mazovetskiy
6949a6f418
Monster: Remove MType/MData pointers
...
These pointers are redundant, replaces them with methods.
2022-07-03 13:21:11 +01:00
Gleb Mazovetskiy
d152d2c0fb
Add OptionalOwnedCelSprite
2022-07-03 12:26:39 +01:00
Gleb Mazovetskiy
21dc7f553d
Add OptionalCelSprite: smaller than std::optional
...
`CelSprite` data pointer can never be `nullptr`.
We implement a smaller `optional` for it by taking advantage of that.
2022-07-03 12:26:39 +01:00
obligaron
e87aca38bb
Change animation frames and tick per frame to int8_t
2022-07-03 10:20:42 +01:00
Gleb Mazovetskiy
72660d9189
Migrate snprintf to fmt ( #4845 )
...
* Migrate `app_fatal` from printf to libfmt
* Migrate snprintf to fmt
2022-07-02 02:36:17 +02:00
Mikołaj Piróg
7cab074aa5
Correct members' names in monster.h ( #4850 )
...
* Fix case in AnimStruct
* Rename CMonster members
2022-07-01 23:34:32 +02:00
Gleb Mazovetskiy
3178dd5158
Replace most uses of sprintf with fmt ( #4837 )
2022-07-01 17:02:56 +02:00
Anders Jenbo
54598e2a8f
CreatePlayer by reference
2022-06-28 16:51:45 +02:00
Anders Jenbo
d82f2ebc9e
Pass players by reference instead of an index
2022-06-28 00:30:00 +02:00
Anders Jenbo
99181fd709
Move more files to the engine folder
2022-06-24 11:08:15 +02:00
ephphatha
c68fcf3cb1
Apply MethodCase config to Rectangle::Contains
...
Also included Circle and VirtualButton classes due to the shared use.
2022-06-24 00:39:55 +02:00
Anders Jenbo
6d56058708
Move level generation to subfolder
2022-06-23 09:21:58 +02:00
Gleb Mazovetskiy
8e9c9e0238
Reduced the size of OwnedCelSprite* by 8 bytes
...
`OwnedCelSpriteWithFrameHeight`: 40 -> 32
2022-06-20 01:11:22 +02:00
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
2022-06-18 15:25:52 +02:00
Vladimir Olteanu
2cc9d70fa6
Use decimal separators for gold and XP ( #4722 )
2022-06-18 09:13:59 +02:00
Anders Jenbo
d17d7e018d
Use common function for loading .dun tile data
2022-06-15 14:18:06 +02:00
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.
2022-06-14 12:46:36 +01:00
Gleb Mazovetskiy
779ccaca17
Overhaul translation fetching
...
1. Do not modify the map after loading. Instead, return string views
(guaranteed to be null-terminated) from look up functions and return
the key directly if not found.
2. Use an `unorded_map` instead of `map` where available (C++20).
Saves a bit of RAM (~50 KiB) and improves lookup performance.
2022-06-14 12:46:36 +01:00
Anders Jenbo
1203514383
Clean up use of currlevel
2022-06-07 21:35:01 +02:00
staphen
a2fe3a981e
Fix issues with ears due to translation
2022-06-06 07:26:43 +02:00
qndel
354e329644
Players[MyPlayerId] -> MyPlayer
2022-05-31 05:35:52 +02:00
obligaron
70c5cf6cad
Fix item label text with open stash ( #4595 )
...
* Item labels: check if stash is open in IsMouseOverGameArea
* Add IsLeft/RightPanelOpen
2022-05-20 09:12:54 +02:00
ephphatha
4d7c08d5b4
Deduplicate code for setting stat requirements/flag
2022-04-21 05:44:38 +02:00
ephphatha
ca48efc185
Update spell book requirements when refreshing stash items
2022-04-21 05:44:38 +02:00
ephphatha
64a2c41b2c
Set clang-tidy config for MethodCase option
...
Previously this was falling back to FunctionCase, leading to inconsistent casing of class methods throughout the codebase. Applied to Item as an example.
2022-04-20 13:50:57 +02:00
DakkJaniels
dad46e1905
Item special effect enum ( #4129 )
2022-04-19 15:44:46 +02:00
ephphatha
7e7798fd2b
Add function to mark an item as empty
2022-04-18 19:25:55 +02:00
Anders Jenbo
dfd8bdab70
Avoid using HeldItem in CreatePlrItems ( #4308 )
2022-04-18 13:46:15 +10:00
Gleb Mazovetskiy
a66ca44695
Zero-based frame indexing
...
Index frames starting at 0 instead of 1.
2022-04-14 04:39:26 +01:00
Anders Jenbo
b9b7e9698a
Revert IPL_TARGAC description
...
Lets give it a better one later
2022-04-13 04:52:49 +02:00