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

424 Commits

Author SHA1 Message Date
139f41c9b2 Implement STACK_EXPERIENCE_GAIN_PERCENT bonus
Suggested on Discord

- implements STACK_EXPERIENCE_GAIN_PERCENT that modifies stack
experience received by units after combat
- removed "EXPERIENCE" primary skill. Changes to experience are now
applied through separate netpack
2025-06-02 21:21:20 +03:00
cc6f65d8da Resolve Sonar issues in server code 2025-05-27 22:02:13 +03:00
1666a5a7e5 Prefer dynamic_cast to unsafe static_cast, fix Sonar 2025-05-23 14:17:43 +03:00
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
a13806a0df Fix build 2025-05-15 16:58:16 +03:00
4d4da0454f map objects hierarchy now uses IGameInfoCallback 2025-05-14 18:33:20 +03:00
6f20235d07 Merge CPrivilegedInfoCallback into CGameInfoCallback 2025-05-14 13:42:20 +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
35644da2b7 Reogranize callback-related classes on 1 file = 1 class basis 2025-05-12 22:07:09 +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
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
6d65641a43 Gamestate is now passed as shared pointer 2025-04-27 14:57:30 +03:00
0ada2a5ebd Map objects now use shared_ptr (game) 2025-04-27 14:57:30 +03:00
4609a83fc1 ArtInfoWindow on client. Lib side 2025-04-05 18:02:04 +02:00
2b286378e8 Remove logic for banks in 1.5 format 2025-03-19 08:02:39 +00:00
2fdf40e7a9 Remove connection pointer from CPack 2025-03-03 10:46:00 +00:00
a8e84c55f6 Fix some of the new warnings from sonarcloud 2024-10-11 10:45:29 +00:00
c0f5c7c0ea Replace pointer with reference in pack apply functions 2024-10-07 14:59:46 +00:00
48fb58e7a0 Replace few more pointers with references, remove manual delete call 2024-10-07 14:59:14 +00:00
ee831c06e7 Reduced usage of CPack, replaced with CPackForServer where applicable 2024-10-07 14:59:14 +00:00
f6f6f98580 Merge pull request #4699 from SoundSSGood/backpack-arts-sorting
Backpack artifacts sorting
2024-10-07 17:55:42 +03:00
a826b88641 Merge branch 'develop' into spell 2024-10-07 12:55:23 +02:00
e22d15b1d8 manageBackpackArtifacts 2024-10-02 12:45:50 +03:00
d929bfb9d1 rename; introduce factor 2024-09-28 15:05:13 +02:00
5b2aa4dc71 swapping spells 2024-09-28 00:34:25 +02:00
857b2e9a35 spell replacement works 2024-09-27 23:52:33 +02:00
a9327b3fa3 netpacks 2024-09-27 22:47:22 +02:00
b9ae7f1138 CMap put move and remove artifact method 2024-09-23 23:30:38 +03:00
bff2e064fc Wait for queries generated by town building visit to end before visiting
next building
2024-09-16 19:32:39 +00:00
39a2c29c97 Removed creatureBank flag from battle, battles now receive BattleLayout
struct that defines how units are placed in combat
2024-09-12 12:11:18 +00:00
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
7466d7452d vcmiscrolls 2024-09-05 15:51:45 +03:00
b09d9d501b Pass pointer to actual caller in showBlockingDialog callWith
Fixes activation of all rewardable buildings in town on blocking dialog
answer
2024-09-04 15:14:56 +00:00
d34b4a141e Split map object visit from town building visit. Removes side effects
from building visit
2024-09-04 14:54:09 +00:00
327ff01471 Implemented explicitly visitable town buildings, e.g. hota mana vortex
Added flag `manualHeroVisit` flag to town building. If this flag is set,
then building will only be activated on click and will not give its
effect on hero recrutiment, hero visit, or new day.

This allows implementing changes to Mana Vortex from HotA
2024-09-03 16:31:07 +00:00