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
434da3ffe1
Added forceCombat
field for ambush-like objects
2025-05-07 19:49:26 +03:00
4b77140f4a
Implemented playerGlobal visit mode for objects like cartographer
2025-05-06 18:53:43 +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
63d00b080e
Removed pointer to army from StackInstance
2025-04-27 14:57:30 +03:00
645b95ba02
Renamed LibClasses * VLC
to GameLibrary * LIBRARY
2025-02-21 16:54:56 +00:00
b85ccccb37
Minor refactoring of translations:
...
- removed unsuccessful and broken validation of translations
- pass JsonNode when registering strings to provide information on mod
source
2024-10-06 19:42:15 +00:00
ffed9480e0
Merge pull request #4483 from vcmi/custom_objects_per_zone
...
Customizable objects in RMG zones
2024-10-01 14:58:35 +02:00
123f9ee676
Fix missing registration of onGuardedMessage string for banks
2024-09-22 20:30:55 +00:00
ec603f46ae
- Handle new configurable banks
...
- Handle "all" object banned option
2024-09-21 13:36:28 +02:00
d20d9bd96b
Fix generation of placeholders for banks
2024-09-12 12:11:18 +00:00
2ee4e42348
Implement placeholders for creature banks messages
2024-09-12 12:11:18 +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
31dff8f8da
Add coastVisitable property to rewardables, update schemas
2024-09-12 12:11:18 +00:00
785036836c
Rewardable objects may now define guards. Converted Crypt to rewardable.
2024-09-12 12:10:40 +00:00
3d39963a1c
Merge branch 'master' into 'develop'
2024-08-26 14:01:00 +00:00
d1aa55de91
Fix rewards not rerolling correctly on reset due to cached variables
2024-08-22 16:38:53 +00:00
1aa391fdf8
Split CGeneralTextHandler file into 1 file per class form
...
All text processing code is now located in lib/texts.
No changes other than code being moved around and adjustment of includes
Moved without changes:
Languages.h -> texts/Languages.h
MetaString.* -> texts/MetaString.*
TextOperations.* -> texts/TextOperations.*
Split into parts:
CGeneralTextHandler.* -> texts/CGeneralTextHandler.*
-> texts/CLegacyConfigParser.*
-> texts/TextLocalizationContainer.*
-> texts/TextIdentifier.h
2024-07-20 12:55:17 +00:00
63bcf7d83c
Replaced most of usages of CRandomGenerator with vstd::RNG in library
2024-07-16 13:13:07 +00:00
60a51e98de
Remove usage of std::function from CRandomGenerator
2024-07-16 13:13:07 +00:00
922966dcf8
Renamed JsonNode::meta to more logical modScope. Member is now private
2024-02-26 12:55:49 +02:00
c3957c2c2a
Moved json files to new directory, split on per-class basis
2024-02-14 13:08:24 +02:00
a9866bb5c6
Added RandomGeneratorUtil::nextItemWeighted convenience method
2024-01-31 00:17:40 +02:00
60ffb81b33
Replaced remaining placeholder code with callbacks
2024-01-19 13:55:22 +02:00
a15366f5a5
Make IObjectInterface::cb non-static
2024-01-19 13:55:21 +02:00
31cef2e7d7
Attempt to fix crash on rewardable configuration
2023-12-22 14:03:05 +02: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
885dce0c27
Replace static_cast's of Identifiers with getNum call
2023-11-03 16:03:29 +02:00
056ef00f74
Bugfixing
2023-11-02 13:52:58 +02:00
10e50548e7
Converted Component class to use VariantIdentifier instead of int
2023-11-02 12:00:04 +02:00
1c4a142849
Fix remaining TODO's
2023-10-21 00:44:57 +03:00
8f4791914e
Show content preview only for Witch Huts / Shrines / Tree
2023-10-19 15:17:58 +03:00
530c70c282
Added object descriptions present in H3
2023-10-19 13:34:15 +03:00
ce480c8c84
Fixed Scholar handling
2023-10-18 17:14:22 +03:00
48eba6c362
Fix Witch Hut messages to match H3
2023-10-17 16:52:57 +03:00
eedaa63f5f
Hnadling of Shrine messages now matches H3
2023-10-17 16:35:34 +03:00
850d0ff8eb
Show (mostly) correct messages in Shrines
2023-10-16 18:16:15 +03:00
0ea44520fd
Fix build
2023-10-16 00:12:39 +03:00
e10de0594e
Scholar is now configurable object (partial)
2023-10-16 00:12:39 +03:00
bb05c2dea5
Implemented configurable shrine
2023-10-16 00:12:39 +03:00
98fd939ed6
Cartographer/Observatory is now configurable object
2023-10-16 00:12:38 +03:00
a3b2354481
Implemented visit mode "limiter". Fixed h3m variable loading
2023-10-16 00:12:38 +03:00
fd01a25352
Implemented basic version of configurable Witch Hut
2023-10-16 00:12:38 +03:00