1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-06-15 00:05:02 +02:00
Commit Graph

338 Commits

Author SHA1 Message Date
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
645b95ba02 Renamed LibClasses * VLC to GameLibrary * LIBRARY 2025-02-21 16:54:56 +00:00
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
ffd37a8fa8 Removed CGI in favor of VLC. Map handle is for now global variable 2025-02-21 16:53:14 +00:00
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
2362c6da21 Fixes for multiple new issues from Sonar 2025-02-21 15:57:39 +00:00
05e8542a79 Fix corrupted image of university 2025-02-20 13:09:38 +00:00
de06de06b5 refactor backgrounds (allow resolution change) 2025-02-08 20:53:32 +01:00
9a1c2a5800 Merge pull request #5317 from Laserlicht/search_inp
[1.6.4] improved text search
2025-01-25 13:54:27 +02:00
0035b2346a optimized search input 2025-01-23 23:50:04 +01:00
3c104d0e4b max width 2025-01-23 22:12:40 +01:00
38d3426a3b thieves guild icons instead of text 2025-01-23 21:47:49 +01:00
c1e709e8c4 fix video background 2025-01-18 20:35:01 +01:00
487297b05e correct align of thiefguild text an add popup 2024-12-22 00:13:36 +01:00
f893c80192 Move UpgradeInfo class to header and source files 2024-12-19 14:13:09 +01:00
d8d3948ac3 Fix AI to use hillFort all available upgrades. UpgradeInfo refactor. 2024-12-17 22:34:06 +01:00
9fbeacb688 Fix possible memory corruption in video player
Fixes two bugs, one was definitely happening, and 2nd one that is causing
undefined behavior and may work only in some std implementations

- VideoPlayer would attempt to access subtitles widget after VideoPlayer
itself was destroyed in onPlaybackFinished call
- std::function was destroyed from a function that is being called by
it. Replaced with 1-method interface to avoid usage of std::function in
this scenario
2024-12-07 15:37:03 +00:00
28fd6c50c4 search box scroll fix 2024-11-30 16:55:45 +01:00
f59834afe1 Fixes for configurable markets support
- string "speech" can now be translated
- removed "title" string, VCMI will now use object name instead
- moved configuration of all "markets" into a separate json file
- added schema for validation of market objects
- removed serialization of translated strings from University
2024-11-20 15:45:13 +00:00
251155d913 More robust management of body/shadow/overlay split 2024-11-17 17:54:55 +00:00
1d0fdb1c0e Merge pull request #4867 from Laserlicht/notFocusedClick
notFocusedClick refactoring
2024-11-13 20:49:31 +02:00
da8fe13632 Merge pull request #4870 from SoundSSGood/secSkillPlace-fix
CHeroOverview secondary skill icons fixed
2024-11-06 22:02:28 +02:00
f60813d86f CHeroOverview secondary skill icons fixed 2024-11-03 17:29:27 +02:00
ca037aae33 notFocusedClick refactoring 2024-11-03 01:13:14 +01:00
d3af9f1c67 Removed pointer to VLC entity from CStackBasicDescriptor 2024-10-30 16:47:02 +00:00
f8b1f40abb Merge pull request #4348 from MichalZr6/hill_fort_changes
Hill Fort unavailable upgrade and status bar new messages
2024-10-30 14:00:35 +02:00
83279211e6 CSecSkillPlace done 2024-10-23 15:01:56 +03:00
9ed4dbaeb4 Merge remote-tracking branch 'upstream/develop' into adv_search 2024-10-14 19:52:55 +02:00
604e3b5c67 Merge pull request #4763 from IvanSavenko/herohandler_split
Split CHeroHandler.cpp/.h into 1 file per class
2024-10-14 19:05:48 +03:00
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
f7e3641c04 fix shortcut bug; add center of selected item 2024-10-12 23:21:26 +02:00
a8e84c55f6 Fix some of the new warnings from sonarcloud 2024-10-11 10:45:29 +00:00
3dd4fa2528 Reduce usage of pointers to VLC entities
Final goal (of multiple PR's) is to remove all remaining pointers from
serializeable game state, and replace them with either identifiers or
with shared/unique pointers.

CGTownInstance::town and CGHeroInstance::type members have been removed.
Now this data is computed dynamically using subID member.

VLC entity of a town can now be accessed via following methods:
- getFactionID() returns ID of a faction
- getFaction() returns pointer to a faction
- getTown() returns pointer to a town

VLC entity of a hero can now be accessed via following methods:
- getHeroTypeID() returns ID of a hero
- getHeroClassID() returns ID of a hero class
- getHeroType() returns pointer to a hero
- getHeroClass() returns pointer to a hero class
2024-10-10 12:28:08 +00:00
344e845684 Merge branch 'develop' into adv_search 2024-10-07 12:56:54 +02:00
4bf02865e4 tavern invite show random hero icon as default 2024-10-04 23:14:02 +02:00
8e079cf016 add search box 2024-10-01 22:53:05 +02:00
07aa7bac3c search for texts 2024-10-01 21:19:42 +02:00
edf43f5702 Get and translate messages on client side 2024-09-24 19:12:05 +02:00
6cf423d977 Fix Hill Fort upgrade logic when there are two levels
Fixes #2503
2024-09-24 18:29:01 +02:00
303b0a6552 Fixes based on review remarks 2024-09-24 18:29:01 +02:00
5c6abb30c6 Fix typo 2024-09-24 18:29:01 +02:00
162e2ab22e Additional Wooden Hill Fort message
More verbose info-message for unavailable upgrades (creature levels 5 and higher). Some minor refactors.

Added other statusbar message if it's standard Hill Fort
2024-09-24 18:29:01 +02:00
b7b4277043 fix for smaller window 2024-09-22 17:20:43 +02:00
8907dc9362 improvement 2024-09-22 17:15:54 +02:00
6a74b3d26c optimize videowindow (black bg) 2024-09-22 17:03:20 +02:00
e3d365262e Merge pull request #4588 from Laserlicht/intro_video_rework
Intro video rework
2024-09-19 16:18:31 +03:00
bc9937e72c Fix corrupted shadow on ship image in shipyard 2024-09-13 13:42:27 +00:00
e963550431 fix and no shadow 2024-09-13 00:03:25 +02:00
16ae854f17 fix shadow 2024-09-12 23:49:57 +02:00
21c3cf0960 rename and move window class 2024-09-12 23:35:21 +02:00