Ivan Savenko
a8a6be7ac1
Fix potential compatibility with C++20 / C++23 mode
...
This fixes several issues with compatibility with C++20. C++23 was also
tested, but apparently it does not have any additional breaking changes
compared to C++20 (or we don't have those).
VCMI still uses C++17 as before - goal is only to make potential
transition easier.
There were 2 cases that are deprecated in C++20 that we use:
- Floating point operations on enums are deprecated
- `this` can no longer be captured when using default capture by value
`[=]`
Both of those should now be replaced with code that works fine in both C+
+17 and in C++20 mode
2025-03-02 14:11:48 +00:00
Ivan Savenko
e5a095a237
Remove main menu global. Now accessed via GameInstance
2025-03-01 21:16:41 +00:00
Ivan Savenko
645b95ba02
Renamed LibClasses * VLC
to GameLibrary * LIBRARY
2025-02-21 16:54:56 +00:00
Ivan Savenko
156de5b17e
Added GameInstance class
...
- available as global GAME
- integrates LOCPLINT (CPlayerInterface)
- integrates CGI->mh (CMapHandler)
- integrates CSH (CServerHandler)
2025-02-21 16:54:06 +00:00
Ivan Savenko
ffd37a8fa8
Removed CGI in favor of VLC. Map handle is for now global variable
2025-02-21 16:53:14 +00:00
Ivan Savenko
f657e85305
Integrated CClientState into GameEngine class
2025-02-21 16:53:14 +00:00
Ivan Savenko
cacceda950
Renamed CGuiHandler to GameEngine
...
- class CGuiHandler is now called GameEngine to better describe its
functionality
- renamed global GH to more clear ENGINE
- GH/ENGINE is now unique_ptr to make construction / deconstruction
order more clear and to allow interface / implementation split
- CGuiHandler.cpp/h is now called GameEngine.cpp/h and located in root
directory of client dir
2025-02-21 16:53:13 +00:00
Laserlicht
b276603b34
fixes #5324
2025-02-14 22:45:52 +01:00
Laserlicht
97e2480e7d
blink only accessible scenarios
2024-12-27 19:09:01 +01:00
Laserlicht
72f498f2c8
add region blink #3601
2024-12-27 18:58:05 +01:00
Laserlicht
94606ba5a3
campaign map description size
2024-10-20 02:13:50 +02:00
Laserlicht
b2da317906
fixes audio playback after using Back button
2024-10-14 20:26:31 +02:00
Ivan Savenko
10ad0fc760
Split CHeroHandler.cpp/.h into 1 file per class
...
All parts of CHeroHandler.cpp are now in lib/entities/hero
Adjusted includes to use new paths
No functionality changes
2024-10-13 14:01:09 +00:00
Laserlicht
2d60252e4c
read from mapheader; move chr to subfolder
2024-09-24 21:41:37 +02:00
Laserlicht
138cbc6a81
scenario name for campaigns
2024-09-24 11:23:10 +02:00
Laserlicht
21c3cf0960
rename and move window class
2024-09-12 23:35:21 +02:00
Laserlicht
2fbdeb3a5d
skippable video intro
2024-09-12 23:23:00 +02:00
Laserlicht
8fc3fe3cc3
scaling
2024-09-12 23:06:33 +02:00
Laserlicht
822fa61bf2
intro rework
2024-09-12 22:28:45 +02:00
Laserlicht
258d298775
Merge branch 'develop' into outro_support
2024-09-09 23:09:44 +02:00
Laserlicht
7ae8514657
allow double click for bonus selection
2024-09-06 00:22:59 +02:00
Laserlicht
6d9385b8bd
outro for RoE
2024-09-05 21:31:17 +02:00
Laserlicht
c7064377da
code review
2024-09-01 12:23:10 +02:00
Laserlicht
b80852617a
text len
2024-09-01 03:43:20 +02:00
Laserlicht
46872b764b
integrate campaign intro
2024-08-31 17:57:27 +02:00
Laserlicht
9c2a5f6baa
window
2024-08-31 17:16:42 +02:00
Laserlicht
61af23d258
text length
2024-08-21 21:43:54 +02:00
Ivan Savenko
9fba3d97f1
Renamed & unified OBJECT_CONSTRUCTION macro set
2024-08-09 15:30:04 +00:00
Ivan Savenko
4aa73b40c9
Split CTownHandler into smaller chunks
2024-07-21 18:21:48 +00:00
Ivan Savenko
1aa391fdf8
Split CGeneralTextHandler file into 1 file per class form
...
All text processing code is now located in lib/texts.
No changes other than code being moved around and adjustment of includes
Moved without changes:
Languages.h -> texts/Languages.h
MetaString.* -> texts/MetaString.*
TextOperations.* -> texts/TextOperations.*
Split into parts:
CGeneralTextHandler.* -> texts/CGeneralTextHandler.*
-> texts/CLegacyConfigParser.*
-> texts/TextLocalizationContainer.*
-> texts/TextIdentifier.h
2024-07-20 12:55:17 +00:00
Ivan Savenko
6b8f94e6e7
Merge remote-tracking branch 'vcmi/master' into develop
2024-07-11 17:43:44 +00:00
Ivan Savenko
9ea3b31ddc
Use spell name for spell scroll campaign bonus
2024-06-27 09:58:53 +00:00
Ivan Savenko
df83fa33a1
Merge branch 'vcmi/master' into 'vcmi/develop'
2024-05-31 09:34:21 +00:00
Ivan Savenko
88fbb7ee71
Most of buttons created in cpp now have assigned shortcut
2024-05-19 09:12:36 +00:00
Ivan Savenko
d27b854cb1
Reorganized music, video and sound players:
...
- All XXXplayers are now in client/media directory
- Reogranized code on one class per file basis
- Extracted interfaces from handlers. Handlers now implement
corresponding interface.
- CCS now only stores pointer to an interface
2024-05-15 17:05:12 +00:00
Ivan Savenko
3311676f1d
Fix incorrect string ID
2024-04-22 16:51:08 +03:00
Ivan Savenko
2d9e42b623
Do not attempt to show extra options in campaign scenario information
...
screen
2024-04-06 15:59:08 +03:00
Ivan Savenko
22f23ba6f8
Restore previously disabled functionality
2024-02-29 16:47:44 +02:00
Ivan Savenko
07d201502e
Refactoring of button class to prepare for configurable button
2024-02-29 13:57:25 +02:00
Ivan Savenko
6e399eb21a
Make some non-const static variables const or constexpr
2024-02-12 13:22:54 +02:00
Ivan Savenko
f2ecd4cf11
Merge branch 'develop' into 'lobby'
2024-02-11 16:13:13 +02:00
Laserlicht
4e8152f268
reorder gui
2024-02-07 22:04:50 +01:00
Laserlicht
c8b6d6a684
add extra button for campaigns
2024-02-07 21:40:56 +01:00
Ivan Savenko
d4bedd8d8d
Fixed handling of match server crash
2024-02-04 19:58:09 +02:00
Laserlicht
56db0e06cf
fix render artefacts remaining after video playback
2024-01-24 00:04:56 +01:00
Laserlicht
0df4f9bda5
video button
2024-01-23 23:45:31 +01:00
Ivan Savenko
50536e28da
Fixed invalid text ID in description of "start with hero" campaign bonus
2023-12-23 18:13:31 +02:00
Ivan Savenko
13763cad8e
Remove few more implicit conversions
2023-11-15 15:55:19 +02:00
Ivan Savenko
86a3806bec
MetaString refactor to eliminate integer usage for identifiers
...
- entity names are now stored and serialized as text ID's
- added helper methods for convenience to get entities names to
metastring
2023-11-07 22:47:10 +02:00
Ivan Savenko
8d5fa41a19
Minor fixes
2023-11-03 16:03:29 +02:00