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

1900 Commits

Author SHA1 Message Date
aa9b13b66a Statistics is now managed as part of CGameHandler 2025-05-23 14:17:42 +03:00
af20b39fe6 Reduce non-const access to gamestate on server 2025-05-23 14:17:25 +03:00
8255a4b9ae CGameHandler no longer inherits CGameInfoCallback, reduce direct access
to gamestate
2025-05-23 14:17:25 +03:00
550d4d76eb Merge pull request #5730 from IvanSavenko/rewardable_creature_fix
Fix handling of creatures in configurable town buildings
2025-05-21 13:51:43 +03:00
07662a070f Merge pull request #5724 from IvanSavenko/randomization
Better randomization logic
2025-05-21 13:50:28 +03:00
323231fc30 Merge pull request #5720 from SoundSSGood/artifact-charges
Charged artifacts
2025-05-21 13:49:14 +03:00
95ce9ce509 Fix handling of creatures in configurable town buildings
- Fixed removal of partial stacks of creatures
- It is now possible to give units via town building, but only if
visitor has slots to take them
2025-05-20 22:36:20 +03:00
cc274c4d34 GameRandomizer is now in lib, add implementation 2025-05-19 18:51:42 +03:00
54a46b77a9 Extract library entity randomization logic to separate class 2025-05-19 18:51:42 +03:00
ed8ba52ed8 Merge pull request #5722 from IvanSavenko/wandering_month_fix
Fix crash on spawning wandering monsters on new month
2025-05-19 14:44:58 +03:00
57f0c5f50c Fix crash on spawning wandering monsters on new month 2025-05-18 11:05:13 +03:00
e85b1d4c1c suggested changes 2025-05-17 19:01:04 +02:00
051381d4db Docs 2025-05-17 15:06:09 +02:00
456525109e Replaced undescriptive bool true/false with more clear enum for
absolute/relative change via netpacks
2025-05-16 17:21:39 +03:00
630f911cc9 Merge pull request #5713 from IvanSavenko/gamecallback_remove
Game callback rework (part 1?)
2025-05-16 17:19:37 +03:00
b09152d62a Fix commander levelups
- Fixes commander not receiving experience if stack experience is off
- Fixes commander not leveling up when hero fill his secondary skills
2025-05-14 21:51:32 +03:00
716da918f8 Completely remove IGameCallback class
- CClient now inherits directly from CPrivilegedInfoCallback, like
IGameCallback did before. However CClient no longer needs dummy
implementation of IGameEventCallback
- CGObjectInstance hierarchy now uses CPrivilegedInfoCallback for
callback. Actual events can only be emitted in calls that receive
IGameEventCallback pointer, e.g. heroVisit
- CGameHandler now inherits directly from both CPrivilegedInfoCallback
and IGameEventCallback as it did before via IGameCallback
2025-05-14 13:39:41 +03:00
4b30336d03 Fix issues detected by Sonar 2025-05-11 19:50:57 +03:00
0e2ea99283 Implemented option to emulate H3 seer hut full-army quest bug 2025-05-07 19:16:58 +03:00
283adc37d7 Unit stack rebalancing rework
- CStackInstance::count is now private with accessor methods
- CStackInstance::experience renamed to totalExperience and now stores
total stack experience (multiplied by stack size) to reduce rounding
errors
- CStackInstance::totalExperience is now private with accessors methods
- stack experience is now automatically reallocated on stack management
- Removed buggy BulkSmartRebalanceStacks pack, that mostly duplicates
BulkRebalanceStacks
- Renamed BulkSmartSplitStack to BulkSplitAndRebalanceStack to drop
unclear "smart" in name
- Reworked split-and-rebalance logic to correctly reallocate stack
experience
2025-05-01 18:18:30 +03:00
f70ad2c15b Reorganized artifact-related classes
- files now generally contain only 1 class (except for tightly coupled
classes)
- files are now located in lib/entities/artifact directory
- removed excessive includes

No changes to functionality
2025-04-29 13:29:08 +03:00
04c9e27ccd Fix discovered bugs from develop branch 2025-04-27 15:53:03 +03:00
4e8e85e3e4 Fix issues reported by Sonar, review fixes 2025-04-27 14:57:31 +03:00
4d57a8ed36 Prefer to pass CGameState as reference instead of pointer 2025-04-27 14:57:31 +03:00
ce436bd63e Fix regressions in combat 2025-04-27 14:57:31 +03:00
966468f3fa Fix and simplify game saving / loading 2025-04-27 14:57:31 +03:00
912c2eae94 Fix regressions 2025-04-27 14:57:31 +03:00
f9989d9152 Cleanup serializer/deserializer code 2025-04-27 14:57:31 +03:00
93b18ee94b Fix some issues detected by Sonar & code review, fix build 2025-04-27 14:57:31 +03:00
586620a290 Basic code review, remove unused code from serializers 2025-04-27 14:57:31 +03:00
d1d2cf4189 Fix crashes on game start, gamestate now derives from GameCallbackHolder 2025-04-27 14:57:31 +03:00
d34b47bb20 Remove pointers from artifacts 2025-04-27 14:57:31 +03:00
9e6397d1f9 Remove pointer to boat from CGHeroInstance 2025-04-27 14:57:30 +03:00
6d65641a43 Gamestate is now passed as shared pointer 2025-04-27 14:57:30 +03:00
cd7732456a Remove pointer to objects from TerrainTile 2025-04-27 14:57:30 +03:00
63d00b080e Removed pointer to army from StackInstance 2025-04-27 14:57:30 +03:00
c02a8a84fd Stacks of armed instance are now unique_ptr 2025-04-27 14:57:30 +03:00
bdae7285ae Objects list is now private member of CMap 2025-04-27 14:57:30 +03:00
745040def3 Access to heroes storage in CMap is now done via public methods 2025-04-27 14:57:30 +03:00
1f502c0548 CMap towns and heroes on map fields are now private 2025-04-27 14:57:30 +03:00
0ada2a5ebd Map objects now use shared_ptr (game) 2025-04-27 14:57:30 +03:00
417ea6451a Remove ConstTransitivePtr from hero and town instances 2025-04-27 14:57:30 +03:00
603672ff51 revert some changes 2025-04-07 17:00:24 +02:00
f0a9c95075 ArtInfoWindow on client. Client side 2025-04-06 13:47:32 +02:00
4609a83fc1 ArtInfoWindow on client. Lib side 2025-04-05 18:02:04 +02:00
dfbe6d1965 Merge pull request #5572 from IvanSavenko/old_banks_remove
Remove deprecated support for banks in 1.5 format
2025-03-26 16:45:56 +02:00
7a3e1409d0 Remove old boost includes and defines 2025-03-19 08:03:56 +00:00
2b286378e8 Remove logic for banks in 1.5 format 2025-03-19 08:02:39 +00:00
e273263334 Fix possible crash on accessing Cannon Yard from HotA 2025-03-11 13:41:14 +00:00
99c6ca7e70 Fix build 2025-03-08 16:11:59 +00:00