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

51 Commits

Author SHA1 Message Date
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
456525109e Replaced undescriptive bool true/false with more clear enum for
absolute/relative change via netpacks
2025-05-16 17:21:39 +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
6859ab7c36 Fix discovered issues, remove not implemented ideas 2025-05-09 17:26:23 +03:00
6b6199d3a4 Implemented giving bonuses to commanders 2025-05-07 22:49:22 +03:00
0e2ea99283 Implemented option to emulate H3 seer hut full-army quest bug 2025-05-07 19:16:58 +03:00
f1d9d8479f Extend rewards & limiters functionality 2025-05-06 17:28:12 +03:00
0212b6e37d Remove artifact from slot as reward 2025-05-06 17:28:12 +03:00
6688d28198 Taking artifacts as a reward 2025-05-06 17:28:12 +03:00
5dec3efa2f Spell scrolls as a reward 2025-05-06 17:28:12 +03:00
62e774c91e Add new rewards for configurable objects 2025-05-06 17:28:11 +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
9e6397d1f9 Remove pointer to boat from CGHeroInstance 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
4609a83fc1 ArtInfoWindow on client. Lib side 2025-04-05 18:02:04 +02:00
82506d5eff Removed ConstTransitivePtr from StackLocation 2025-03-08 14:04:51 +00:00
645b95ba02 Renamed LibClasses * VLC to GameLibrary * LIBRARY 2025-02-21 16:54:56 +00:00
291c5e1027 Do not send empty packets changing primary skills by 0 points 2024-12-21 14:43:09 +00:00
0e1f8f99bc Reduce excessive logging 2024-12-21 14:43:08 +00:00
d3af9f1c67 Removed pointer to VLC entity from CStackBasicDescriptor 2024-10-30 16:47:02 +00:00
08fbcd5239 TerrainTile now uses identifiers instead of pointers to VLC 2024-10-30 16:22:11 +00: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
c55a75cc4e Remove copy-pasted code in rewardable town building leading to hero not
registered as visitor
2024-10-11 15:02:48 +00:00
f2c20b54d0 Unify rewardable map object and town building code 2024-09-27 15:41:24 +00:00
7466d7452d vcmiscrolls 2024-09-05 15:51:45 +03:00
6b8f94e6e7 Merge remote-tracking branch 'vcmi/master' into develop 2024-07-11 17:43:44 +00:00
77e827c51e Fix leveling up secondary skills via Scholar (map object) visit 2024-06-27 09:58:53 +00:00
02e429e973 Fix typos using https://github.com/crate-ci/typos
Changes were reviewed manually
2024-06-24 03:47:19 +02:00
9e81c53547 Do not give spells as reward if hero can't learn them 2024-04-12 00:25:02 +03:00
edb2ecd751 Fix possible overflow errors on leveling up beyond int64_t limit
- added separate giveExperience method instead of weird changePrimSkill
- experience is now always used in form of int64_t
- max supported level reduced from 201 to 197 to fit into int64_t
- fixed undefined behavior in experience calculation
2024-01-04 23:57:36 +02:00
abad4b01ce Remove explicit convesion to int in operators 2023-11-15 15:55:19 +02:00
6b81012f31 Use variant identifier in netpacks where applicable 2023-11-08 14:00:23 +02:00
f201e3019a Fix crash on right-clicking rewardable objects with no hero selected 2023-11-02 12:00:05 +02:00
b88a8da4e8 Split off some netpack structures into separate files 2023-10-23 13:59:15 +03:00
901fd77699 Fix Cover of Darkness 2023-10-18 18:04:01 +03:00
dd841bdaa7 Use enum instead of mix of bool's and int's for tile reveal 2023-10-16 00:12:38 +03:00
98fd939ed6 Cartographer/Observatory is now configurable object 2023-10-16 00:12:38 +03:00
06f01c3b82 Seerhut works as rewardable object 2023-09-15 10:06:06 +02:00
e8453916cf Merge remote-tracking branch 'vcmi/beta' into develop 2023-09-08 18:49:06 +03:00
f92af94f19 Fix crash on removing object during visit 2023-09-06 12:32:26 +03:00
62cd8b12d4 Converted several namespace enums to enum class 2023-08-25 13:38:02 +03:00
08cfbe79cf Added encapsulation for movement points access 2023-06-25 17:42:36 +03:00
0250e6fb92 Merge branch 'develop-upstream' into town-buildings
# Conflicts:
#	client/CPlayerInterface.cpp
#	client/windows/CTradeWindow.cpp
#	config/objects/generic.json
#	lib/mapObjects/CGMarket.cpp
#	lib/mapObjects/CGMarket.h
#	lib/mapObjects/CGTownInstance.cpp
#	lib/mapObjects/CommonConstructors.cpp
#	lib/mapObjects/CommonConstructors.h
2023-05-02 01:48:13 +04:00
6fc3bb6690 Attempt to fix msvs build 1 2023-05-01 01:15:48 +04:00
e9279cfbc4 Blocking dialogs supported 2023-05-01 00:14:53 +04:00