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

78 Commits

Author SHA1 Message Date
54a46b77a9 Extract library entity randomization logic to separate class 2025-05-19 18:51:42 +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
c62e1d289e Merge pull request #5706 from IvanSavenko/antagarich
Fix missing messages on events without guards on .vmap's (e.g. Antagarich Burning)
2025-05-14 11:52:52 +03:00
35644da2b7 Reogranize callback-related classes on 1 file = 1 class basis 2025-05-12 22:07:09 +03:00
79591ac587 Fix missing messages on events without guards on .vmap's 2025-05-12 15:42:59 +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
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
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
2a05fbdd50 Unified handling of battle sides ID's
- Replaced BattleSide namespace-enum with enum class
- Merged two different BattleSide enum's into one
- Merged BattlePerspective enum into BattleSide enum
- Changed all places that use integers to represent battle side to use
BattleSide enum
- Added BattleSideArray convenience wrapper for std::array that is
always 2-elements in size and allows access to its elements using
BattleSide enum
2024-08-11 20:54:44 +00:00
ffaaa7da15 blockingDialog functions: the answer parameter can be negative 2024-08-09 00:28:28 +02:00
63bcf7d83c Replaced most of usages of CRandomGenerator with vstd::RNG in library 2024-07-16 13:13:07 +00:00
a15366f5a5 Make IObjectInterface::cb non-static 2024-01-19 13:55:21 +02:00
01f602ab92 Fixes warning about usage of unused variable 2023-12-27 22:25:29 +01:00
86a3806bec MetaString refactor to eliminate integer usage for identifiers
- entity names are now stored and serialized as text ID's
- added helper methods for convenience to get entities names to
metastring
2023-11-07 22:47:10 +02:00
8d5fa41a19 Minor fixes 2023-11-03 16:03:29 +02:00
5cbc75d3b7 Merge remote-tracking branch 'upstream/develop' into develop 2023-10-29 13:35:37 +00:00
03835236fb lib/mapObjects/CGPandoraBox.cpp: Identical sub-expressions on both sides of operator "||".
Identical expressions should not be used on both sides of a binary operator
2023-10-27 23:40:55 +00:00
b88a8da4e8 Split off some netpack structures into separate files 2023-10-23 13:59:15 +03:00
4f47555977 Split OBJECT bonus source into OBJECT_TYPE and OBJECT_INSTANCE 2023-10-22 16:55:19 +03:00
ac925bb786 Renamed new types for consistency with code style 2023-10-22 16:55:19 +03:00
b394158dc9 Bonus Source ID now uses metaidentifier 2023-10-22 16:55:18 +03:00
c57d5545c2 Merge pull request #2971 from Nordsoft91/translations
Multi-language support for network game and for VMAPs
2023-10-02 20:41:42 +02:00
1502ea2250 Fix pandora mana problem 2023-09-30 01:33:12 +02:00
ab373f08ab Use meta string for messages 2023-09-27 23:11:11 +02:00
8c0d78f1d9 Added initiator-player to packs that add/remove/move objects 2023-09-19 19:24:34 +03:00
326791886d Rename and events modal mode always 2023-09-19 17:11:03 +02:00
2960895041 Issues fixed 2023-09-17 22:19:45 +02:00
a517e6ad8e Message split for pandora box 2023-09-17 18:02:24 +02:00
7b22aefb12 Some minor fixes 2023-09-17 13:03:42 +02:00
a3b60bf829 Fix warning 2023-09-16 14:30:25 +02:00
4f76eb3fce Add limiter serialization 2023-09-15 23:00:33 +02:00
4af2d917c0 Fix messages for pandoras 2023-09-15 21:13:07 +02:00
68c61797f8 Implement select all option for rewardable objects 2023-09-15 21:08:14 +02:00
c1c13cfafb Pandora and events work as rewardable object 2023-09-15 15:29:41 +02:00
a30e7ba321 Remove bitmasks of PlayerColor's. Add encode/decode methods 2023-09-04 18:56:16 +03:00
e54287ea5d Converted remaining identifier to new system 2023-08-25 13:38:02 +03:00
62cd8b12d4 Converted several namespace enums to enum class 2023-08-25 13:38:02 +03:00
56d69e790b Renamed MetaString methods to more logical names 2023-06-20 19:37:27 +03:00
f35b3a0dc3 Replace MetaString operator << with member function 2023-06-20 19:37:27 +03:00
190244369c Fix empty Pandora message 2023-06-15 22:06:31 +02:00
05eccbc2bb vcmi: split bonus to enumerator and HeroBonus.h 2023-05-03 18:01:06 +03:00
bc228a938a vcmi: use enum class for EComponentType
There is really no reason not to use it
2023-03-11 21:41:57 +03:00
716dd9a43b vcmi: remove a bunch of duplicated showInfoDialog
These methods duplicated in almost every map object
Just replace it by one such method
2023-03-11 21:41:57 +03:00
8edba4fb06 vcmi: use MODAL by default
Convert only some objects to AUTO, need futher testing
than no non-adventure objects will not use AUTO or INFO
2023-03-11 21:41:57 +03:00
5f181e25af vcmi: modernize lib/mapObjects 2023-02-14 14:39:56 +03:00
fa6f7513e8 All heroes-related strings are passed through translator 2023-01-20 15:18:36 +02:00
ff635edc0b wrap all library code into namespace if VCMI_LIB_NAMESPACE is defined
preparation for having client and server in a single process
2022-09-24 15:55:21 +03:00