15e45f966c
typos found by lintian
2023-10-17 22:06:08 +02:00
27b75dbbea
Fixed silent errors on invalid Json references in schemas
2023-09-26 15:55:27 +03:00
f8541d0ae4
Merge branch 'vcmi/master' into 'vcmi/develop'
2023-09-15 13:59:02 +03:00
1522ed85e2
vcmi: make "noneOf" selector more restrictive
...
It should do "or-not" instead of "and-not".
2023-09-13 17:09:59 +03:00
9cfcf5ea19
Fix regressions
2023-09-04 18:22:34 +03:00
6f0108e462
Use ResourcePath for referencing texts and json's
2023-09-04 18:22:34 +03:00
823ffa7a07
Always use ResourcePath for referencing images and animations
2023-09-04 18:22:34 +03:00
e54287ea5d
Converted remaining identifier to new system
2023-08-25 13:38:02 +03:00
f13a53c1d9
Merge remote-tracking branch 'vcmi/beta' into develop
2023-08-12 17:28:47 +03:00
dd17896082
Fix crash on bonus parsing failure (outdated mods?)
2023-08-05 12:49: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
3a348abf4f
Text of configurable/rewardable objects now uses translator
2023-07-19 22:25:52 +03:00
8f602b2ef6
Allow defining default values of settings per platform
2023-06-21 10:55:30 +03:00
45ca449f2c
vcmi: more optionals in bonuses
2023-05-05 21:30:45 +03:00
8764765dcf
Bonus: complex duration as bitset
...
Fixes #2125
2023-05-05 21:30:45 +03:00
05eccbc2bb
vcmi: split bonus to enumerator and HeroBonus.h
2023-05-03 18:01:06 +03:00
a6de9097be
vcmi: rename HeroBonus.h to Bonus.h
2023-05-02 11:20:58 +03:00
1d34c73c2d
vcmi: split CBonusSystemNode, BonusParams and prop
...
More splitting of HeroBonus.h
2023-05-02 00:54:53 +03:00
713e3004df
vcmi: rename updater and limiter files
2023-05-02 00:53:51 +03:00
e37f798a68
vcmi: split bonus updaters
2023-05-02 00:53:50 +03:00
416faf521e
vcmi: move limiters outside of HeroBonus.cpp
...
This will help for recompilation.
2023-05-02 00:53:50 +03:00
6fa1b2b19f
vcmi: move bonuses to its own folder
2023-05-02 00:53:50 +03:00
cb83a9371d
vcmi: 1.2 compatibility to FACTION_LIMITER
2023-04-12 23:14:38 +03:00
dd196f2aa8
vcmi: slightly rework limiters
...
1. Add vector to aggregates
2. Rework CreatureFactionLimiter to FactionLimiter
2023-04-10 19:28:16 +03:00
f8eba58003
vcmi: remove ALL_CREATURES propagator
...
Now unneded, because it handled by GLOBAL_EFFECT with
CREATURE_LEVEL_LIMITER (when range set to UINT_MIN and UINT_MAX).
2023-04-10 19:28:16 +03:00
1760d2295c
HeroBonus: add CreatureLevelLimiter
2023-04-10 19:28:16 +03:00
8968f0ef0e
vcmi: change EAlignment to enum class
2023-04-05 01:22:04 +03:00
4c08e6a0f9
vcmi: add UnitOnHex limiter
...
Bonus will be accepted, if unit stands in listed hexes
2023-03-30 12:51:59 +03:00
895572df02
vcmi: fix first aid regression
2023-03-19 19:20:08 +03:00
4c4498b22a
vcmi: modernize rest of lib
2023-03-16 17:55:20 +03:00
0adffc824f
vcmi: allow to configure army movement counter
...
It is not hardcoded now. MOVEMENT.TXT is still not read,
but ARMY_MOVEMENT updater parameters can be specified in json.
There is a 4 parameters:
1. Base - base value (firstly lowest speed is multiplied by it)
2. Divider - base value is integrally divided by it
3. Multiplier - result value will be multiplied by it
4. Max - maximum allowed movement from army.
Vanilla values is in defaultMods.json
Fixes: https://bugs.vcmi.eu/view.php?id=3209
2023-03-16 16:46:42 +03:00
b91d7418dd
vcmi: remove ONLY_ENEMY_ARMY range
...
It should be used directly instead of alias, propagation updater
also can be useful for any other updaters can be added.
2023-03-16 16:46:42 +03:00
0540e1531d
vcmi: allows parsing selectors from JSON
...
Supports anyOf, allOf, noneOf,
and all selectors from Selector namespace.
Can be useful to define selectors in JSON when required
2023-03-16 16:46:42 +03:00
930955f268
vcmi: deprecated bonus converter
...
It converts almost all sorts of deprecated bonuses from mods
when loading json. It can print to console correct new variant
or bonus.
Also removed a bunch of deprecated bonuses from list.
It will break saves!!!
2023-03-16 16:46:41 +03:00
a943d2cb12
vcmi: add sourceType to HasAnotherBonusLimiter
...
Now we can filter bonuses by sourceType, hence,
checking, for example, specific secondary skills.
Also fix archery artifacts working without Archery skill.
2023-03-16 16:46:41 +03:00
7e9a15c20b
vcmi: add PERCENT_TO_TARGET_SOURCE value type
...
It will break saves!!!
Added a new value type to bonuses which allows to add percentage
only to one foreign bonus source, for example, to add percentage to all
bonuses from secondary skills from hero special.
2023-03-16 16:46:41 +03:00
b99a2ad669
vcmi: adjust parseBonus and Bonus::toJson
...
This was an error, when scheme and parser asks different values for
source type. Corrected this.
2023-03-16 16:46:41 +03:00
3ba8d708f8
Partially fixed bonuses descriptions (affected by separate old bug)
2023-01-24 17:34:48 +02:00
695a94c3c8
Fixed all major bugs with newly converted objects
2023-01-22 18:17:26 +02:00
01811317f9
Remove assert which may not always be true
2023-01-09 23:22:59 +02:00
3219e322ae
Fixed all non-silenced gcc/clang warnings
2022-12-07 18:05:47 +02:00
5cd405bce8
Fixed meta field handling in JsonUtils::inherit function, removed
...
workarounds
2022-11-30 17:38:53 +02:00
9f46bf5bff
Apply suggestions from code review
...
Co-authored-by: Nordsoft91 <nordsoft@yahoo.com >
2022-09-24 15:55:26 +03:00
011f303397
code style improvement
2022-09-24 15:55:25 +03: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
aaa07e4d2e
New terrain support - part 1 ( #755 )
...
Initial support of new terrains
2022-09-11 11:31:26 +03:00
2a39c401b8
Feature: Opposite Side Limiter. Added: Old saves support.
2021-09-04 14:15:38 +03:00
25d9ea1ddf
Feature: Opposite Side Limiter
2021-09-04 14:15:38 +03:00
9c8d776398
Merge branch 'develop' into handlersAbstraction
...
# Conflicts:
# CI/linux/before_install.sh
# CI/mac/before_install.sh
# CI/mxe/before_install.sh
# lib/CModHandler.cpp
# lib/mapObjects/CObjectClassesHandler.cpp
# lib/mapObjects/CObjectClassesHandler.h
# lib/mapObjects/CommonConstructors.cpp
# server/CGameHandler.cpp
# test/CMakeLists.txt
# test/spells/effects/TeleportTest.cpp
2021-07-16 00:32:13 +03:00
8b08973283
Fix: ID-collisions when processing large mods collections
2021-04-25 15:07:06 +03:00