Ivan Savenko
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
Ivan Savenko
ad7f0416a7
Added overloaded version of getObjectHandler to CGHeroInstance
2024-10-13 13:06:31 +00:00
Ivan Savenko
31095248ab
Removed typeName and subtypeName properties from CGObjectInstance
2024-10-13 13:05:50 +00:00
Laserlicht
11eaed9fef
code review
2024-10-12 23:01:14 +02:00
SoundSSGood
d4d3ddf685
fused artifacts
2024-10-12 16:43:04 +03:00
Ivan Savenko
c55a75cc4e
Remove copy-pasted code in rewardable town building leading to hero not
...
registered as visitor
2024-10-11 15:02:48 +00:00
Ivan Savenko
d1e7cb72c2
Fix game gang on random map generation
2024-10-11 15:02:14 +00:00
Ivan Savenko
e221cdccab
Fix initialization of hero type in map editor
2024-10-11 15:01:55 +00:00
Ivan Savenko
a8e84c55f6
Fix some of the new warnings from sonarcloud
2024-10-11 10:45:29 +00:00
Ivan Savenko
6bed497f2c
Fix mod validation reporting failure for well-formed mods
2024-10-10 21:18:43 +00:00
Ivan Savenko
15ad0440f7
Fix iOS build
2024-10-10 12:38:32 +00:00
Ivan Savenko
3dd4fa2528
Reduce usage of pointers to VLC entities
...
Final goal (of multiple PR's) is to remove all remaining pointers from
serializeable game state, and replace them with either identifiers or
with shared/unique pointers.
CGTownInstance::town and CGHeroInstance::type members have been removed.
Now this data is computed dynamically using subID member.
VLC entity of a town can now be accessed via following methods:
- getFactionID() returns ID of a faction
- getFaction() returns pointer to a faction
- getTown() returns pointer to a town
VLC entity of a hero can now be accessed via following methods:
- getHeroTypeID() returns ID of a hero
- getHeroClassID() returns ID of a hero class
- getHeroType() returns pointer to a hero
- getHeroClass() returns pointer to a hero class
2024-10-10 12:28:08 +00:00
Ivan Savenko
81f0222c68
Merge pull request #4741 from IvanSavenko/serialize_local_state
...
Serialize local state of player interface
2024-10-10 15:03:14 +03:00
Ivan Savenko
5aebf287b9
Merge pull request #4735 from IvanSavenko/private_pos
...
Reduce usages of ambiguos CGObjectInstance::pos
2024-10-10 15:00:50 +03:00
Ivan Savenko
a22de74323
Fixes for loading 1.5 mods in vcmi 1.6
2024-10-10 09:50:56 +00:00
Ivan Savenko
a8f8c3f4b1
Replaced most of accesses to CGObjectInstance::pos with anchorPoint()
2024-10-09 15:43:46 +00:00
Ivan Savenko
679181c103
Implemented serialization of local player state in json form
2024-10-08 20:04:32 +00:00
Ivan Savenko
c0f5c7c0ea
Replace pointer with reference in pack apply functions
2024-10-07 14:59:46 +00:00
Ivan Savenko
786f80871e
Replace more usages of pointers to packs with references
2024-10-07 14:59:14 +00:00
Ivan Savenko
c1c552d394
Replaced some of pointers to CPack's with references
2024-10-07 14:59:14 +00:00
Ivan Savenko
2399a5a765
Merge pull request #4712 from IvanSavenko/detect_conflict
...
Detection of potential conflicts between mods
2024-10-07 17:57:52 +03:00
Laserlicht
344e845684
Merge branch 'develop' into adv_search
2024-10-07 12:56:54 +02:00
Laserlicht
a826b88641
Merge branch 'develop' into spell
2024-10-07 12:55:23 +02:00
Ivan Savenko
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
Ivan Savenko
1488629628
Add simple support for translation of strings that were changed by
...
another mod
2024-10-06 19:42:15 +00:00
Ivan Savenko
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
Ivan Savenko
c77da2e476
Remove no longer used compatibility containers
2024-10-06 19:42:15 +00:00
Ivan Savenko
66fdad145c
Added an option to configure validation level in launcher
2024-10-06 19:21:33 +00:00
Ivan Savenko
3e3f842fbe
Respect dependencies when checking for filesystem conflicts
2024-10-06 17:20:58 +00:00
Ivan Savenko
d849e53499
Implement detection of mod compatibility patches
2024-10-06 16:11:32 +00:00
Ivan Savenko
d0aba56a5e
Analyze json object modifications to detect mod conflicts
2024-10-06 13:58:41 +00:00
Ivan Savenko
2439d176a0
Analyze filesystem of mods to detect potential mod conflicts
2024-10-06 13:58:41 +00:00
Ivan Savenko
cd52625657
Merge pull request #4710 from kdmcser/display_attack_type
...
display attack type(melee/ranged) in popup window
2024-10-06 16:04:39 +03:00
Ivan Savenko
a7027e10f4
Merge pull request #4696 from Laserlicht/color_param
...
color shift parameter to config
2024-10-06 16:03:45 +03:00
Ivan Savenko
f17fe6a48e
Merge pull request #4708 from IvanSavenko/subterra_pathfinder_fix
...
Fixes pathfinding via subterranean gates located on right edge of map
2024-10-06 16:00:09 +03:00
Ivan Savenko
9850ef5b89
Merge pull request #4718 from IvanSavenko/witch_hut_fix
...
Fixes randomization of Witch Hut preconfigured in map editor
2024-10-06 15:59:30 +03:00
SoundSSGood
c472b2ce5e
BulkEraseArtifacts crash fix
2024-10-04 15:19:57 +03:00
Ivan Savenko
b79897f598
Merge pull request #4714 from IvanSavenko/integer_overflow_fix
...
Fix potential int32_t overflow when computing total army value
2024-10-03 15:35:47 +03:00
Ivan Savenko
5d64da9b6c
Fixes randomization of Witch Hut preconfigured in map editor
2024-10-03 12:35:15 +00:00
Ivan Savenko
f5c2772f8d
Fix potential int32_t overflow when computing total army value
2024-10-02 19:48:08 +00:00
kdmcser
60177bffab
remove bracket
2024-10-02 19:57:26 +08:00
kdmcser
4896b51a5d
display attack type(melee/ranged) in popup window
2024-10-02 19:08:40 +08:00
Ivan Savenko
5aebc83bca
Fixes pathfinding via subterranean gates located on right edge of map
...
In this case, 'pos' is actually outside of map borders, so never visible
to a player
2024-10-02 09:24:53 +00:00
Laserlicht
e85e938865
use subid
2024-10-01 20:44:08 +02:00
Laserlicht
9c6bd20159
code review
2024-10-01 16:32:28 +02:00
Ivan Savenko
f816c3306b
Merge pull request #4694 from Laserlicht/spell_cast_only_self
...
cast only on self
2024-10-01 17:20:20 +03:00
Laserlicht
be31041a48
"general" -> "interface"
2024-10-01 16:09:22 +02:00
Ivan Savenko
cef7466c71
Merge pull request #4643 from SoundSSGood/CArtHandler-refactoring
...
CArtifactSet tidy up
2024-10-01 16:26:32 +03:00
DjWarmonger
ffed9480e0
Merge pull request #4483 from vcmi/custom_objects_per_zone
...
Customizable objects in RMG zones
2024-10-01 14:58:35 +02:00
Ivan Savenko
f39d515d54
Merge pull request #4687 from dydzio0614/chain-lightning-magic-immunity
...
Fix chain lightning wasting effect on creatures immune to magic
2024-10-01 15:27:15 +03:00
Ivan Savenko
a4c3dd622f
Merge pull request #4685 from Laserlicht/turn_timer_load_change
...
turn timer and simturn change on load
2024-10-01 15:27:04 +03:00
Ivan Savenko
9c91559414
Merge pull request #4677 from IvanSavenko/rewardable_fixes
...
Unify rewardable map object and town building code
2024-10-01 15:26:50 +03:00
Laserlicht
844b078482
color shift parameter to config
2024-09-30 19:46:53 +02:00
Laserlicht
713fcd6543
research per day & seperate config
2024-09-30 02:40:28 +02:00
Laserlicht
e6cb87abac
cast only on self
2024-09-28 17:32:53 +02:00
Dydzio
63b711758f
Fix chain lightning wasting effect on creatures immune to magic
2024-09-28 17:22:26 +02:00
Laserlicht
f94f0a3274
new dialog
2024-09-28 15:51:53 +02:00
Laserlicht
d929bfb9d1
rename; introduce factor
2024-09-28 15:05:13 +02:00
Laserlicht
2052a26031
code review
2024-09-28 14:25:11 +02:00
Laserlicht
1558cbdfa9
turn timer and simturn change on load
2024-09-28 13:45:04 +02:00
Laserlicht
3559f9f923
HMI for spell research
2024-09-28 01:47:32 +02:00
Laserlicht
7707adc44f
checks on server
2024-09-28 01:18:10 +02:00
Laserlicht
5b2aa4dc71
swapping spells
2024-09-28 00:34:25 +02:00
Laserlicht
a9327b3fa3
netpacks
2024-09-27 22:47:22 +02:00
Laserlicht
efcac3b933
settings
2024-09-27 20:16:41 +02:00
Ivan Savenko
7f8f09c8fa
Merge pull request #4668 from Laserlicht/scenario_name
...
Chronicles improvements
2024-09-27 20:01:47 +03:00
Ivan Savenko
19db016473
Merge pull request #4654 from dydzio0614/any-hex-shooting
...
Allow targeting empty hex by shooters with multi-tile SPELL_LIKE_ABILITY
2024-09-27 19:23:33 +03:00
Laserlicht
0e1bb73994
code review
2024-09-27 18:23:02 +02:00
Ivan Savenko
69d9e34ebf
Merge pull request #4642 from Laserlicht/invincible_improvements
...
Invincible bonus: only blocking non positive spells; counterstrike
2024-09-27 18:58:00 +03:00
Ivan Savenko
f2c20b54d0
Unify rewardable map object and town building code
2024-09-27 15:41:24 +00:00
Ivan Savenko
072aa8aadd
Remove unused method
2024-09-27 15:41:24 +00:00
MichalZr6
edf43f5702
Get and translate messages on client side
2024-09-24 19:12:05 +02:00
MichalZr6
303b0a6552
Fixes based on review remarks
2024-09-24 18:29:01 +02:00
Laserlicht
138cbc6a81
scenario name for campaigns
2024-09-24 11:23:10 +02:00
SoundSSGood
586a32a616
CArtifactSet cleanup
2024-09-23 23:39:19 +03:00
SoundSSGood
b9ae7f1138
CMap put move and remove artifact method
2024-09-23 23:30:38 +03:00
Tomasz Zieliński
a4392fce36
Allow mod name in camelCase
2024-09-23 20:34:26 +02:00
Tomasz Zieliński
54ba4d50d6
Allow to ban spell scrolls
2024-09-23 17:09:46 +02:00
Ivan Savenko
92c5fd4156
Merge pull request #4655 from IvanSavenko/bugfixing
...
Bugfixing
2024-09-23 18:01:27 +03:00
Dydzio
230893f423
Merge branch 'develop' into any-hex-shooting
2024-09-23 16:57:27 +02:00
Ivan Savenko
bb74ffa382
Merge pull request #4640 from godric3/map-editor-fix-quest-editor-lists
...
Add all artifacts/spells/skills to quest widget lists and disable banned
2024-09-23 17:37:15 +03:00
Ivan Savenko
dbfa5b8b2d
Merge pull request #4637 from IvanSavenko/validate_gamesettings
...
Added validation of game settings
2024-09-23 17:28:37 +03:00
Ivan Savenko
1fb108b79d
Merge pull request #4636 from IvanSavenko/bank_compat
...
Compatibility hack for mods with old banks format
2024-09-23 17:28:20 +03:00
Ivan Savenko
e93a060500
Merge branch 'vcmi/beta' into 'vcmi/develop'
2024-09-23 14:25:53 +00:00
Ivan Savenko
0058c9ba2e
Fix crash on transfer of multiple artifacts in a backpack to another
...
hero on starting next campaign scenario without hero that held these
artifacts before
2024-09-22 20:31:52 +00:00
Ivan Savenko
123f9ee676
Fix missing registration of onGuardedMessage string for banks
2024-09-22 20:30:55 +00:00
Dydzio
5dda4aa0f0
Remove overly strict condition
2024-09-22 21:43:20 +02:00
Dydzio
bb69ab1a1a
Fix assert and condition for counting spell hexes
2024-09-22 18:25:18 +02:00
Dydzio
bf9a9283a4
Make any hex shooting possibility configurable
2024-09-22 16:58:15 +02:00
Dydzio
1a2d349267
Initial unconditionally working version
2024-09-22 15:07:44 +02:00
Laserlicht
899d3a14a0
only blocking non positive spells; counterstrike
2024-09-21 23:50:35 +02:00
godric3
f4dc2dcd22
add missing serialization of spells in Limiter
2024-09-21 22:40:58 +02:00
Ivan Savenko
e07340b531
Added validation of game settings
...
Should detect invalid config in all sources of settings - vcmi config,
mods, random map templates
2024-09-21 15:34:33 +00:00
Ivan Savenko
9ee2ee45bc
Compatibility hack for mods with old banks format
2024-09-21 15:11:57 +00:00
Ivan Savenko
4a5818aa7d
Merge pull request #4631 from Laserlicht/fix_error_output
...
fix error with description
2024-09-21 17:46:31 +03:00
Tomasz Zieliński
79c4d7d51f
Merge remote-tracking branch 'origin/develop' into custom_objects_per_zone
2024-09-21 14:20:56 +02:00
Tomasz Zieliński
55e2a99154
Default object limit to unlimited
2024-09-21 13:36:51 +02:00
Tomasz Zieliński
ec603f46ae
- Handle new configurable banks
...
- Handle "all" object banned option
2024-09-21 13:36:28 +02:00
Laserlicht
629da99679
fix error with description
2024-09-20 18:21:52 +02:00
Ivan Savenko
cb96b9959e
Merge pull request #4623 from Laserlicht/invincible_bonus
...
INVINCIBLE bonus
2024-09-20 11:50:29 +03:00