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

33 Commits

Author SHA1 Message Date
07a46ed03b Configurable icons for bonuses
It is now possible for mods (e.g. vcmi extras) to provide custom icons
for bonuses subtypes or for custom bonuses values without requiring
hardcoded check in vcmi.

All existing hardcoded checks have been removed.

Bonuses config json from mods is now actually loaded.
2025-02-28 14:51:32 +00:00
645b95ba02 Renamed LibClasses * VLC to GameLibrary * LIBRARY 2025-02-21 16:54:56 +00:00
879eb2184f Implement some TODO's, fix sonar warnings 2024-11-26 13:55:46 +00:00
41466238fc Cleanup code 2024-11-26 13:55:46 +00:00
87a665fb7f Restored all disabled mod functinality that was used by client 2024-11-26 13:55:46 +00:00
f8724b9558 Reworked mod handling in Launcher in order to unify code with lib 2024-11-26 13:55:46 +00:00
ba9e3dca9d Mod management rework, part 1
- Replaced CModInfo class with constant ModDescription class
- Simplified mod loading logic
- Extracted some functionality from ModHandler into separate classes for
future reuse by Launcher
2024-11-26 13:55:46 +00:00
123f3923d3 Update lib/modding/ContentTypeHandler.cpp
Co-authored-by: Ivan Savenko <saven.ivan@gmail.com>
2024-10-29 00:35:03 +08:00
3b72594743 add support for soft dependencies 2024-10-26 19:15:12 +08:00
604e3b5c67 Merge pull request #4763 from IvanSavenko/herohandler_split
Split CHeroHandler.cpp/.h into 1 file per class
2024-10-14 19:05:48 +03: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
a8e84c55f6 Fix some of the new warnings from sonarcloud 2024-10-11 10:45:29 +00:00
2399a5a765 Merge pull request #4712 from IvanSavenko/detect_conflict
Detection of potential conflicts between mods
2024-10-07 17:57:52 +03:00
8e4152bc81 It is now possible to define objects directly in mod.json instead of
using path to file with object definition
2024-10-06 19:42:15 +00:00
66fdad145c Added an option to configure validation level in launcher 2024-10-06 19:21:33 +00:00
d849e53499 Implement detection of mod compatibility patches 2024-10-06 16:11:32 +00:00
d0aba56a5e Analyze json object modifications to detect mod conflicts 2024-10-06 13:58:41 +00:00
8225eb454e Added GameSettings to gamestate, potentially allowing to define game
settings per map (or in random map template)
2024-09-05 15:16:27 +00:00
4aa73b40c9 Split CTownHandler into smaller chunks 2024-07-21 18:21:48 +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
7461df161c lib now uses shared_ptr for entities. Removed manual memory management. 2024-05-17 15:04:05 +00:00
3e3959d360 Move all OH3 objects and obstacle sets to a mod 2024-04-08 12:50:41 +02: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
9af7c63a26 Fix build 2024-01-19 13:56:05 +02:00
d5c4478816 Remove most of non-const access to VLC entities 2024-01-19 13:54:49 +02:00
18227cba00 Implemented better error-reporting for issues commonly encountered by
modders
2024-01-07 22:35:22 +02:00
3b66701ffe Ignore illegal 'index' entries in mods 2024-01-04 23:52:01 +02:00
feae8b6ae4 Do not allow loading new objects into another mod namespace 2023-10-26 15:32:46 +03:00
b2c336de0d JsonNode now uses std::variant internally. Fixes crash on deserialize 2023-10-21 20:41:58 +03:00
a05f8339ae Proper mod compatibility check system 2023-09-21 04:31:08 +02:00
e54287ea5d Converted remaining identifier to new system 2023-08-25 13:38:02 +03:00
62fddca21e Split massive CModHandler class/file into multiple parts:
- IdentifierStorage is now a separate handler in VLC
- Renamed ModHandler::Incompatibility exception to ModIncompatibility
- Extracted ModScope namespace from ModHandler
- Extracted ModUtilities namespace from ModHandler
- Split CModHandler.cpp on per-class basis
- Replaced some direct members with unique_ptr to reduce header includes
2023-07-30 22:17:47 +03:00