Gleb Mazovetskiy
8ca71272b8
Load all CEL as CL2
...
Convert CEL files to CL2 at load time. CL2 format is more efficient and is about as fast to render.
CEL vs CL2 sizes, on dLvl 5: https://gist.github.com/glebm/9bbdd76962abcd4fd2405ecd3379af97
Memory:
* Peak memory (while loading): -300 KiB
* Memory in-game (dLvl5): -700 KiB
* RG99 binary size: -15 KiB (1333096 -> 1317192)
Performance on rg99:
* On average, -1 FPS in town.
* Same FPS in dungeon (20 FPS on dLvl 1).
2022-07-19 10:59:35 +02:00
Anders Jenbo
d1189388f5
Use user by reference
2022-07-17 18:41:05 +02:00
ephphatha
1337ff6ea2
Add check if a monster potentially has leashed minions
2022-07-13 07:13:34 +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
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
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
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
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
Andrew James
f846263462
Restore change to trigger position when advancing betrayer quest ( #4752 )
2022-06-20 10:15:10 +02:00
Gleb Mazovetskiy
8e9c9e0238
Reduced the size of OwnedCelSprite* by 8 bytes
...
`OwnedCelSpriteWithFrameHeight`: 40 -> 32
2022-06-20 01:11:22 +02:00
Anders Jenbo
4cc3a5264c
Make dPiece zero-indexed
2022-06-19 09:57:30 +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
Andrew James
4bd1e06336
Point mega <-> world conversion helpers
2022-06-13 00:27:57 +02:00
ephphatha
c859ec57d0
Dedupe SP/MP logic when killing archbishop lazarus
2022-06-12 03:44:24 +02:00
Anders Jenbo
6962fcd63e
Clean up PlaceMiniSet()
2022-06-11 09:26:06 +02:00
Anders Jenbo
50a222f1a2
Test generating a level for the butcher quests
2022-06-06 14:10:58 +02:00
qndel
354e329644
Players[MyPlayerId] -> MyPlayer
2022-05-31 05:35:52 +02:00
Anders Jenbo
457f804f10
[vanilla] Fix missing tource light in Lazarus' chamber
2022-05-12 21:39:00 +02:00
galaxyhaxz
157adc7e11
Lazarus level reset bugfix
2022-05-08 12:15:32 +02:00
Gleb Mazovetskiy
a66ca44695
Zero-based frame indexing
...
Index frames starting at 0 instead of 1.
2022-04-14 04:39:26 +01:00
Gleb Mazovetskiy
ade8aba822
Fix some more warnings
2022-04-14 01:26:29 +02:00
Anders Jenbo
3c54925a84
Fix cow quest getting stuck in multiplayer
2022-03-29 11:25:33 +02:00
Anders Jenbo
6d28810dc7
Change infostr from char[128] to std::string
2022-03-20 14:23:30 +01:00
Anders Jenbo
1409e604f5
Reduce string conversions
2022-03-20 11:04:15 +01:00
Anders Jenbo
be57d62684
Use UTF8 aware string copying
2022-03-19 06:03:19 +01:00
Gleb Mazovetskiy
7fede6c4cb
Clean up owned/unowned CelSprite ambiguity
...
Makes `CelSprite` unowned and adds a new `OwnedCelSprite` class for
owned sprites.
This clarifies ownership and makes the code cleaner in a number of
places.
Additionally, because the `CelSprite` class is now tiny (1 less
pointer), we can pass it by-value instead of by-reference, removing a
pointer indirection in the rendering functions.
2022-03-06 04:49:13 +01:00
staphen
5b21e0188f
Fix order of operations during game initialization
2022-01-15 06:47:09 +01:00
obligaron
ff5de056fa
Add all (boolean) Game Settings to Settingsmenu ( #3616 )
2021-11-26 23:43:46 +01:00
Gleb Mazovetskiy
c57644970f
Move UiFlags and UiPanels into their own files
...
The first breaks circular dependency between `DiabloUI` and `text_render`.
The latter one moves `UiPanels` to a more appropriate place.
2021-11-25 12:22:27 +01:00
obligaron
677303cba9
Reduce use of view globals in game menu
2021-11-20 21:57:32 +01:00
Anders Jenbo
082be73dd4
Expose all quest titles for translation
2021-09-26 00:17:02 +02:00
Anders Jenbo
464fd77238
Clean up quests.cpp global naming
2021-09-22 04:21:53 +02:00
qndel
6d35fee7f9
fix quest panel
2021-09-19 10:15:14 +01:00
Anders Jenbo
7771a08d03
Translatable mainpanel
2021-09-19 07:21:52 +02:00
Anders Jenbo
e68c8cc834
Reuse EntranceBoundaryContains in portal logic
2021-09-12 02:51:34 +02:00
Juliano Leal Goncalves
8a93087fb7
♻️ Extract quest entrance boundary check to a member function on QuestStruct
2021-09-12 02:30:08 +02:00
Juliano Leal Goncalves
3e24a58ba6
♻️ Replace 'questxoff' and 'questyoff' globals with single 'questEntranceOffsets'
2021-09-12 02:30:08 +02:00
ephphatha and Anders Jenbo
b12de6fe12
Use scoped enum for Direction
...
Identified and removed an instance of Direction being used as an argument for a bool parameter
Removed a single-use temporary variable being cast from sprite frame to direction to size_t
Co-authored-by: Anders Jenbo <[email protected] >
Fix alignment of WalkSettings array
2021-09-12 02:27:47 +02:00
Anders Jenbo
7169882b1f
✨ Implement new font rendering
2021-09-12 01:37:28 +02:00
Andrew James
784057780c
Prevent OOB access when initialising quest pools ( #2775 )
2021-09-07 01:07:46 +02:00
Juliano Leal Goncalves
ce40344ae9
🚚 Rename 'QuestDataStruct' struct to 'QuestData'
2021-09-06 12:54:40 +02:00
Juliano Leal Goncalves
ce23cd6bce
🚚 Rename 'QuestData' global array to 'QuestsData'
...
This will allow us to disambiguate from the 'QuestDataStruct' after the 'Struct' suffix is removed.
2021-09-06 12:54:40 +02:00
Juliano Leal Goncalves
1f7cfcf945
♻️ Replace 'ReturnLvlX' and 'ReturnLvlY' globals with single 'ReturnLvlPosition'
2021-09-06 00:31:25 +02:00
Juliano Leal Goncalves
940a120bf9
♻️ Replace 'ViewX' and 'ViewY' globals with single 'ViewPosition'
2021-09-04 18:06:28 -04:00
Juliano Leal Goncalves
0baffa6e33
🚚 Rename 'QuestStruct' to 'Quest'
2021-09-02 05:46:01 +02:00