1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-05-13 22:06:58 +02:00

281 Commits

Author SHA1 Message Date
Ivan Savenko
554a414302 Fix remaining memory leaks caused by API misuse 2025-04-29 12:11:10 +03:00
Ivan Savenko
4d57a8ed36 Prefer to pass CGameState as reference instead of pointer 2025-04-27 14:57:31 +03:00
Ivan Savenko
6d65641a43 Gamestate is now passed as shared pointer 2025-04-27 14:57:30 +03:00
Ivan Savenko
7a3e1409d0 Remove old boost includes and defines 2025-03-19 08:03:56 +00:00
Ivan Savenko
eaad6f9ce0 Fix crash on trasferring to next scenario in campaign 2025-03-12 13:33:12 +00:00
Ivan Savenko
b6026084ea StartInfo in gamestate now use unique_ptr 2025-03-08 14:04:51 +00:00
Ivan Savenko
219eea86ff Better handling of AI shutdown 2025-03-02 14:33:11 +00:00
Ivan Savenko
5f052165fe Fix missing names for some threads 2025-03-02 14:33:11 +00:00
Ivan Savenko
948abfb04c AI now uses std::thread, added custom thread interruption logic 2025-03-02 14:33:11 +00:00
Ivan Savenko
844dfb1604 Removed usage of boost::thread from vcmi, except for AI 2025-03-02 14:33:11 +00:00
Ivan Savenko
e5a095a237 Remove main menu global. Now accessed via GameInstance 2025-03-01 21:16:41 +00:00
Ivan Savenko
d3de0d525f Removed GameEngine::curInt member
- event processing is now initiated by GameEngine instead of weird chain
engine -> player interface -> engine
- introduced GameEngineUser interface (implemented by GameInstance) to
remove mutual depedency between GameEngine and GameInstance (some
technically still remains for now, in form of some free functions)
2025-03-01 21:16:40 +00:00
Laserlicht
7dfb499edf replace boost locks with std 2025-02-28 15:25:58 +01:00
Ivan Savenko
8f074490a7 Merge branch 'master' into 'develop' 2025-02-27 21:15:42 +00:00
Ivan Savenko
42878af3a6 Better fix for lobby room crash
Always use TCP connection when connecting to self-hosted lobby room.
Effectively reverts 1.6.6 change for lobby connections. Single-player
connections still use intra-process pseudo connection

Main problem is various side effects caused by changing order of
operations. For example, client may inform lobby about joining the room
before server finishes startup, which was not possible before.
2025-02-25 14:05:56 +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
Ivan Savenko
c3af0dc469 Remove unused parameters 2025-02-03 18:02:01 +00:00
Ivan Savenko
048fc503c3 Do not start listening for connections in single-player games 2025-02-03 17:24:02 +00:00
Ivan Savenko
d9244cf061 Remove network connection from local games
This removes need for TCP network connection in single-player games.

Instead, game will now create internal pseudo-connection that performs
client<->server communication by posting sent messages to client/server
asio::io_service'a.

This should fix gameplay aborting on switching to another app on iOS (and
apparently, on Android in some cases)
2025-02-03 17:24:02 +00:00
Ivan Savenko
7694e2da4b
Merge pull request #4736 from Laserlicht/fix_8th_portal_summoning
Fix multiple small issues
2024-10-07 22:19:17 +03:00
Laserlicht
1c6eaf6336 fix player translation 2024-10-07 18:37:07 +02:00
Ivan Savenko
786f80871e Replace more usages of pointers to packs with references 2024-10-07 14:59:14 +00:00
Ivan Savenko
c1c552d394 Replaced some of pointers to CPack's with references 2024-10-07 14:59:14 +00:00
Laserlicht
a43475042f code review 2024-09-18 22:10:25 +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
45625f0355 added AB intro; play only when resource exists 2024-09-06 22:57:53 +02:00
Laserlicht
6d9385b8bd outro for RoE 2024-09-05 21:31:17 +02:00
Ivan Savenko
6179521364
Merge pull request #4556 from IvanSavenko/town_building_visit
Implemented explicitly visitable town buildings, e.g. hota mana vortex
2024-09-05 17:21:21 +03:00
Ivan Savenko
81af66d35b Move visit query to a separate class, remove no longer needed Cast.h 2024-09-04 14:32:36 +00:00
Laserlicht
16cbd6a7d2 allow custom loadbar-backgrounds for campaigns 2024-08-31 16:03:42 +02:00
Ivan Savenko
b84af1a6de Significantly simplify packs applying
Apparently our logic for packs applying with types registration is
overcomplicated and by now completely unnecessary - it became redundant
after introduction of visitor pattern.
2024-08-26 19:48:46 +00:00
Laserlicht
a42afa2910 code review 2024-08-14 21:51:08 +02:00
Laserlicht
9e9a6f1c5f
Merge branch 'develop' into extended_statistic 2024-08-13 00:49:51 +02:00
Ivan Savenko
79c55bc898
Merge pull request #4425 from IvanSavenko/ui_cleanup
Remove old code from UI system
2024-08-12 17:16:03 +03:00
Laserlicht
f42f1de347 extended statistic: Button and data transfer 2024-08-11 22:21:13 +02:00
Ivan Savenko
00605b5129 Remove largely unused defActions member from CIntObject 2024-08-09 14:26:53 +00:00
Laserlicht
9ceb1c567d highscore refactoring 2024-08-02 19:37:46 +02:00
Laserlicht
4f0c3a3608
Merge branch 'develop' into handicap 2024-08-01 21:39:40 +02:00
Laserlicht
3e5df61946 code review 2024-07-29 22:54:42 +02:00
Laserlicht
939dd62491
change variable name 2024-07-29 20:43:41 +02:00
Laserlicht
c103d2a9f7
fix 2024-07-26 21:02:25 +02:00
Laserlicht
53c0d20a57 fix campaign highscores 2024-07-26 20:36:52 +02:00
Laserlicht
832e1531fc handycap percent 2024-07-25 00:28:49 +02:00