Boris Nagaev
38bfd1c7e5
Fix broken relative local include paths
...
Many quoted local includes had an incorrect ../ depth and resolved to
non-existent files from the including file's directory.
This was easy to miss because normal target include directories and PCH
usage masked some failures, and several stale paths lived in files that
are only compiled in optional test configurations. As a result, the
problem mostly surfaced in stricter or broader fresh builds.
Audit all C++ and header local includes, keep them relative, and adjust
paths so each include resolves to an existing in-tree header. For
headers that were renamed or moved, update includes to their current
relative location instead of switching to include-root form.
A few legacy ERM tests also used dynamic_ptr_cast at call sites where we
had to replace stale headers. The helper/header path they relied on is
no longer present after 81af66d35b , so
those downcasts are now explicit dynamic_cast calls with the same intent.
2026-03-26 20:14:59 -05:00
Ivan Savenko
d89ca14c9e
Add quick removal of map objects from UI. Fixes freezes on hero moveemnt
2026-02-09 17:44:30 +02:00
Ivan Savenko
9b0200578e
Fix potential undefined behavior on using sort with invalid predicate
2026-01-18 14:33:06 +00:00
Mircea TheHonestCTO
d0deaf85a4
fix: revert MapRenderer that crashes after AI vs AI fights as agreed with Ivan
2026-01-07 11:35:41 +01:00
Laserlicht
fadc667ea5
speedup removeObject
2025-12-31 16:24:07 +01:00
Opuszek
b7496d85de
move object blit order comparator to library
2025-12-17 10:12:02 +01:00
Ivan Savenko
1c746a840c
Merge pull request #6033 from thehonestcto/feature/nullkiller2
...
WIP feature/nullkiller2 cloned, restructured, tested and with additional improvements
2025-11-23 20:55:24 +02:00
Ivan Savenko
cf378c3672
Migrate codebase to C++20
...
- VCMI can now be compiled in C++20 mode
- Replaced all references to C++17 with C++20
- Boost 1.74 is now set as minimal version (older version might work but
untested)
- Updated documentation to reflect required versions of compilers /
libraries
- Removed excessive fail-fast / continue-on-error from CI
2025-11-06 14:40:21 +02:00
Mircea TheHonestCTO
00c93c7b6a
Merge branch 'develop' into feature/nullkiller2
2025-10-28 22:30:39 +01:00
Laserlicht
2bee582cc7
fix
2025-10-21 22:40:46 +02:00
Laserlicht
7a7ba74907
review
2025-10-21 22:30:32 +02:00
Laserlicht
5a64fbd89c
show invisible
2025-10-12 16:26:44 +02:00
Mircea TheHonestCTO
c914ca2d1a
Merge branch 'develop' into feature/nullkiller2
2025-10-03 16:38:57 +02:00
Laserlicht
2697f98d9f
left mouse drag on advmap improvement
2025-10-02 21:55:29 +02:00
Mircea TheHonestCTO
d43accfd95
Merge branch 'develop' into feature/nullkiller2
2025-10-01 17:56:58 +02:00
Laserlicht
acd067e587
remove CObjectHandler
2025-09-14 21:34:32 +02:00
Mircea TheHonestCTO
d085241007
fix race condition between MapViewController::hasOngoingAnimations and waitForOngoingAnimations internal usage
2025-09-06 05:25:00 +02:00
Laserlicht
d2d0b2292e
ui support
2025-08-02 02:33:47 +02:00
Ivan Savenko
7a1ede1e38
Adventure spell API refactoring to ease use by AI
2025-07-11 16:47:37 +03:00
Ivan Savenko
5ada2d19e1
UI now shows spell range from config
2025-07-11 12:06:01 +03:00
Ivan Savenko
e12765dca0
Fix sonar warnings, convert spaces -> tabs
2025-07-09 17:52:51 +03:00
Ivan Savenko
2ad186130f
Split MapDefines file on .h per class basis
2025-07-07 18:16:42 +03:00
Ivan Savenko
062c3fd5b5
Merge pull request #5852 from Laserlicht/showpath
...
implement show path checkbox
2025-06-30 12:00:07 +03:00
Laserlicht
50151444fc
show path
2025-06-25 17:25:19 +02:00
Laserlicht
30521bbc8f
code review
2025-06-24 13:48:36 +02:00
Laserlicht
b95293f254
better approach
2025-06-20 12:10:35 +02:00
Laserlicht
eef3e00f42
fix direction
2025-06-20 03:45:11 +02:00
Laserlicht
e1adbde5ac
direction & image functionality
2025-06-20 03:02:43 +02:00
Laserlicht
d0d3b96fa9
add battle animation
2025-06-20 01:51:10 +02:00
Ivan Savenko
35644da2b7
Reogranize callback-related classes on 1 file = 1 class basis
2025-05-12 22:07:09 +03:00
kdmcser
935476a86a
fix puzzle map never open
2025-05-01 23:40:43 +08:00
Ivan Savenko
829739da24
Reduce usage of implicit conversions to int
2025-04-27 14:57:31 +03:00
Ivan Savenko
9e6397d1f9
Remove pointer to boat from CGHeroInstance
2025-04-27 14:57:30 +03:00
Ivan Savenko
cd7732456a
Remove pointer to objects from TerrainTile
2025-04-27 14:57:30 +03:00
Ivan Savenko
bdae7285ae
Objects list is now private member of CMap
2025-04-27 14:57:30 +03:00
Ivan Savenko
745040def3
Access to heroes storage in CMap is now done via public methods
2025-04-27 14:57:30 +03:00
Ivan Savenko
0ada2a5ebd
Map objects now use shared_ptr (game)
2025-04-27 14:57:30 +03:00
Ivan Savenko
417ea6451a
Remove ConstTransitivePtr from hero and town instances
2025-04-27 14:57:30 +03:00
Ivan Savenko
4a6a8f9496
Merge pull request #5496 from IvanSavenko/std_thread
...
Replace boost::thread with std::thread
2025-03-08 16:03:55 +02:00
Laserlicht
8b950078c7
fix rightButtonDrag edge case
2025-03-05 20:42:49 +01:00
Ivan Savenko
948abfb04c
AI now uses std::thread, added custom thread interruption logic
2025-03-02 14:33:11 +00:00
Ivan Savenko
8f074490a7
Merge branch 'master' into 'develop'
2025-02-27 21:15:42 +00:00
Laserlicht
52f7caa0e4
use settings instead of persistentStorage
2025-02-22 20:34:13 +01:00
Laserlicht
a6a6b8c69c
save only adventure map zoom
2025-02-22 16:08:54 +01:00
Laserlicht
7beabc44ea
save mapzoom
2025-02-21 23:01:47 +01:00
Laserlicht
db23cc2ffa
add setting for disabling overlay
2025-02-21 21:35:17 +01:00
Ivan Savenko
cbcd48aabb
Fix build
2025-02-21 18:51:27 +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