nordsoft
56b0e900d8
Add outer caster class
2023-04-10 05:39:25 +04:00
nordsoft
7041950ae1
Don't show empty window
2023-04-10 05:06:05 +04:00
nordsoft
e440343921
Bypass initial version of spell callback
2023-04-10 04:34:24 +04:00
nordsoft
fc310c6e79
Town portal fix
2023-04-10 01:46:37 +04:00
nordsoft
601e7e854f
Dimensions door fix
2023-04-10 01:37:46 +04:00
nordsoft
0093a44889
Added abstract method to caster interface
2023-04-10 01:31:41 +04:00
nordsoft
72b2a09f0b
Boat summon spell rewritten
2023-04-10 01:06:02 +04:00
nordsoft
69ad62ef58
Fixes from code review
2023-04-09 23:00:20 +04:00
nordsoft
a8f31fabd1
Fix bug
2023-04-09 23:00:20 +04:00
nordsoft
67c0d29478
Fix header
2023-04-09 23:00:20 +04:00
nordsoft
e7c6f596ee
Little code improvement
2023-04-09 23:00:20 +04:00
nordsoft
ab7d316c3f
Rename fields
2023-04-09 23:00:20 +04:00
nordsoft
b40a3a1b14
Banned arts and skills cannot be randomly rewarded
2023-04-09 23:00:20 +04:00
nordsoft
26c3277895
New format for skills selection
2023-04-09 23:00:20 +04:00
nordsoft
b7ccc4d649
Revert "Random selection for secondary skills"
...
This reverts commit 6e538dab30
.
2023-04-09 23:00:20 +04:00
nordsoft
6c5f3f21a5
Extend loadKey function
2023-04-09 23:00:20 +04:00
nordsoft
fe21acb0d0
Revert "Random selection for resources"
...
This reverts commit 0e4ff3e2bf
.
2023-04-09 23:00:20 +04:00
nordsoft
dce5a924b0
Random selection for secondary skills
2023-04-09 23:00:20 +04:00
nordsoft
53e16c7e22
Random selection for primary skills
2023-04-09 23:00:20 +04:00
nordsoft
bb915b0e7e
Random selection for resources
2023-04-09 23:00:20 +04:00
Ivan Savenko
bfd77d871c
Merge pull request #1918 from IvanSavenko/fix_map_loading
...
Fix vcmi map loading
2023-04-09 20:08:23 +03:00
Ivan Savenko
6e90c0fd09
Merge pull request #1913 from IvanSavenko/fix_shooting_yourself_in_the_foot
...
Fix initialization of spell effects registry
2023-04-09 20:07:29 +03:00
Konstantin
235fddaf4b
vcmi: constexpr IDs
2023-04-09 19:54:41 +03:00
Andrii Danylchenko
737c34b8c6
BattleAI: avoid selfblocking on siege
2023-04-09 16:22:37 +03:00
Ivan Savenko
a6ce99573c
Added fallback identifiers for reading older vcmi maps
2023-04-09 12:27:33 +03:00
Ivan Savenko
ae5d273df9
Merge pull request #1905 from IvanSavenko/fix_rewardables
...
Fixed UI of objects that provide one reward that can be refused
2023-04-08 22:15:22 +03:00
Adriankhl
1d6192ca62
Shut down the thread for tactic phase properly
2023-04-08 22:52:46 +04:00
Ivan Savenko
a97ebc2bf1
Merge pull request #1874 from krs0/feature/separate_movement_highlight_for_hoverd_units_in_battle
...
Separate movement highlight for hovered units in battle
2023-04-08 21:47:49 +03:00
Ivan Savenko
f211207f83
Merge pull request #1893 from trofi/fix-build-without-pch
...
Add missing include headers when building with -DENABLE_PCH=OFF
2023-04-08 21:45:47 +03:00
Ivan Savenko
84af64ce6b
Removed magical initialization of registry via static variables
2023-04-08 21:29:04 +03:00
krs
dab07bdef9
Now unit range is shown in Tactics phase as well
...
A new parameter: isActiveStack was needed in battleGetAvailableHexes, so that we show the propper Tactics range.
2023-04-08 20:39:59 +03:00
SoundSSGood
e58be8e7f7
vcmiartifacts fixed
2023-04-08 12:28:53 +03:00
SoundSSGood
ea7dd14d8b
client is able to erase artifact
2023-04-08 00:41:55 +03:00
Ivan Savenko
50da080130
Fixed UI of objects that provide one reward that can be refused
2023-04-08 00:13:38 +03:00
Tomasz Zieliński
cf1f9c456b
Removed unrelated comment
2023-04-07 21:40:47 +02:00
Tomasz Zieliński
37f1bf9d78
Merge remote-tracking branch 'origin/beta' into fix_pandora_amounts
2023-04-07 21:26:36 +02:00
Tomasz Zieliński
f1c52f501d
Fix Pandora Box creature amounts to match OH3 exactly.
2023-04-07 21:23:34 +02:00
Ivan Savenko
1590c710dd
Merge pull request #1886 from rilian-la-te/fix-rmg-levels
...
vcmi: fix rmg header levels
2023-04-07 12:43:34 +03:00
Ivan Savenko
e306e8f9ce
Merge pull request #1879 from kambala-decapitator/single-process-development-mode
...
fix "development mode" condition when building in single process mode
2023-04-07 12:42:03 +03:00
Ivan Savenko
d8faacc9f2
Merge pull request #1875 from IvanSavenko/ttf_fonts_fallback
...
TTF fonts fallback
2023-04-07 12:41:00 +03:00
Sergei Trofimovich
2885536bf5
Add missing include headers when building with -DENABLE_PCH=OFF
...
Example build failure is missing `VCMI_LIB_NAMESPACE_BEGIN` declaration:
[ 0%] Building CXX object lib/CMakeFiles/vcmi.dir/spells/ObstacleCasterProxy.cpp.o
In file included from lib/spells/ProxyCaster.h:13,
from lib/spells/ObstacleCasterProxy.h:11,
from lib/spells/ObstacleCasterProxy.cpp:11:
lib/../include/vcmi/spells/Caster.h:13:1: error: 'VCMI_LIB_NAMESPACE_BEGIN' does not name a type
13 | VCMI_LIB_NAMESPACE_BEGIN
| ^~~~~~~~~~~~~~~~~~~~~~~~
2023-04-07 10:25:11 +01:00
nordsoft
e85593dbb3
Save & restore mana
2023-04-06 21:19:46 +04:00
nordsoft
ece8a2a41f
Merge branch 'battle-dialog' into battle-dialog2
...
# Conflicts:
# AI/BattleAI/BattleAI.h
# AI/StupidAI/StupidAI.h
# client/CPlayerInterface.cpp
# client/CPlayerInterface.h
# client/Client.cpp
# client/NetPacksClient.cpp
# client/battle/CBattleInterface.cpp
# client/battle/CBattleInterface.h
# client/battle/CBattleInterfaceClasses.cpp
# client/battle/CBattleInterfaceClasses.h
# config/schemas/settings.json
# lib/CGameInterface.h
# lib/IGameEventsReceiver.h
# lib/NetPacks.h
# lib/NetPacksLib.cpp
# lib/battle/BattleInfo.cpp
# server/CGameHandler.cpp
# server/CQuery.h
2023-04-06 19:53:52 +04:00
nordsoft
ce3028bd73
Intermediate commit
2023-04-06 19:34:07 +04:00
Konstantin
a04d8b34f3
vcmi: fix rmg header levels
...
It was printed as char, not as int.
2023-04-06 12:48:53 +03:00
Konstantin
11b237a23c
vcmi: massive refactoring v1
2023-04-05 22:33:12 +03:00
Andrey Filipenkov
1da06e04cc
fix "development mode" condition when building in single process mode
2023-04-05 20:22:29 +03:00
Konstantin
ee489f18d2
vcmi: PlayerState is now an Entity
...
This will reduce code duplication a little bit.
2023-04-05 01:22:04 +03:00
Konstantin
8968f0ef0e
vcmi: change EAlignment to enum class
2023-04-05 01:22:04 +03:00
Konstantin
0c7dbea990
HeroBonus: remove unused function
2023-04-04 23:02:55 +03:00
Konstantin
b7d6270272
vcmi: add getNativeTerrain method to factions
2023-04-04 23:02:55 +03:00
Konstantin
e0715a76c8
vcmi: reduce CStack usage a little bit
2023-04-04 23:02:54 +03:00
Konstantin
22dd97ad18
vcmi: use entilites when possible part 1
2023-04-04 23:02:54 +03:00
Ivan Savenko
c5225aab70
Fix serialization
2023-04-04 22:22:58 +03:00
Ivan Savenko
fc750d0917
Fix identifiers resolving for stack experience bonuses
2023-04-04 17:12:40 +03:00
Ivan Savenko
307065a633
Merge beta into develop
2023-04-04 16:06:20 +03:00
Ivan Savenko
6b2b8bb5c0
Merge pull request #1863 from IvanSavenko/fix_mod_identifiers
...
Fix mod identifiers
2023-04-04 11:22:30 +03:00
DjWarmonger
53df84459f
Merge pull request #1781 from vcmi/object_distribution
...
Improved object distribution
2023-04-04 06:52:10 +02:00
Tomasz Zieliński
1e18887c9c
Merge remote-tracking branch 'origin/beta' into object_distribution
2023-04-04 05:52:57 +02:00
Ivan Savenko
255bb145b9
Added fallback for 1.2 compatibility
2023-04-03 16:26:43 +03:00
Ivan Savenko
766fb066c6
Fix debug build
2023-04-03 15:15:51 +03:00
Ivan Savenko
c5acb8bb7d
Fixed empty scope on resolving map overrides
2023-04-03 15:15:29 +03:00
Ivan Savenko
191959ae05
Fixed moat identifiers requests - will now always request spells
2023-04-03 15:15:12 +03:00
Ivan Savenko
2d0344f905
VCMI will now correctly resolve identifiers in unexpected form
2023-04-03 15:14:34 +03:00
Ivan Savenko
6683c866ee
Disabled check for unused lines in translations due to false positives
2023-04-03 01:12:48 +03:00
Ivan Savenko
10e852fcb9
Fix scope of identifiers resolving for commanders abilities
2023-04-03 01:12:04 +03:00
Konstantin
f41b2475fe
vcmi: fix stack smash
2023-04-02 23:27:15 +03:00
Ivan Savenko
c661419897
Merge pull request #1700 from rilian-la-te/resource-array
...
Modernize resourceSet.
2023-04-02 20:12:45 +03:00
Ivan Savenko
6dac15c5b2
Merge pull request #1706 from rilian-la-te/moats-landmines
...
Proper moats: mechanincs
2023-04-02 20:12:33 +03:00
Ivan Savenko
c5ca17a324
Merge pull request #1853 from Nordsoft91/fix-scope-guard
...
Fix ScopeGuard move behavior
2023-04-02 20:10:26 +03:00
Ivan Savenko
1cb0c6b270
Merge pull request #1848 from Nordsoft91/editor-fix
...
Fix map editor crash with cutting random town
2023-04-02 20:09:24 +03:00
Ivan Savenko
a3074e2741
Merge pull request #1835 from rilian-la-te/fix-native-type
...
CCreatureHandler: fix native terrain for any
2023-04-02 20:08:18 +03:00
nordsoft
91ef7cbb4f
Fix ScopeGuard move behavior
2023-04-02 15:46:56 +04:00
nordsoft
d63e32841d
Fix divide by zero crash
2023-04-02 15:28:41 +04:00
nordsoft
1e5362cb07
Fix crash with cutting random town
2023-04-02 14:06:16 +04:00
Konstantin
cabe228ebc
CCreatureHandler: fix native terrain for any
2023-04-02 02:32:40 +03:00
Konstantin
ff3e761f3b
CTownHandler: remove hardcoded Cove grail
...
We have now exactly same definition in Json
2023-04-02 00:27:29 +03:00
Ivan Savenko
4d6b88f10d
Merge pull request #1821 from rilian-la-te/remove-cove-hardcode
...
CTownHandler: remove hardcoded Cove grail
2023-04-02 00:20:49 +03:00
Ivan Savenko
042e46580b
Fix uninitialized variable
2023-04-01 23:59:31 +03:00
Tomasz Zieliński
aca227b5e4
Manually adjust the position of town - noticeable on S maps.
2023-04-01 17:07:43 +02:00
Konstantin
3df5964847
CTownHandler: remove hardcoded Cove grail
...
We have now exactly same definition in Json
2023-04-01 03:14:35 +03:00
Ivan Savenko
a64f35c933
Merge pull request #1765 from vcmi/fix_horde_buildings_load
...
Fix loading horde buildings predefined in editor
2023-03-31 17:59:26 +03:00
Tomasz Zieliński
308b42549b
Merge remote-tracking branch 'origin/beta' into object_distribution
2023-03-31 15:44:14 +02:00
Konstantin
6d17b9342d
ResourceSet: resolve .at troubles
2023-03-31 14:12:38 +03:00
Konstantin
c1fd7309ad
ResourceSet: composition
2023-03-31 14:00:49 +03:00
Ivan Savenko
ea1d177c9b
Fixed false error messages on game startup
2023-03-31 01:28:56 +03:00
Konstantin
d8a237ba46
vcmi: add getTrigger method to obstacles
...
Fixes advanced remove obstacle spell
2023-03-31 01:01:26 +03:00
Konstantin
25956e3f37
vcmi: bump serializer version
2023-03-31 01:01:25 +03:00
Konstantin
ecae600563
effects: Moat now includes battlefield bonus
...
This is an implementation which works exactly like in H3
2023-03-31 01:01:25 +03:00
Konstantin
f704a17e1a
vcmi: add a last hex setting
...
I consider this behaviour as H3 bug, but this is H3.
So, added a setting to disable this behaviour.
2023-03-31 01:01:25 +03:00
Konstantin
179cee3e88
vcmi: add obstacle animation helper functions
2023-03-31 01:01:25 +03:00
Konstantin
eff41f66ed
vcmi: now obstacles can have disappearing anim
...
It is a reverse version of appearingAnimation.
2023-03-31 01:01:25 +03:00
Konstantin
c4d5a7a2d6
vcmi:towns now can choose if moat render is needed
...
Using invalid points. Also removed unused variable.
2023-03-31 01:01:25 +03:00
Konstantin
3bbff0588d
CSpell: !isMagical() -> no sorcery and no generic spell dmg reduction
...
Other bonus are still applied.
2023-03-31 01:01:25 +03:00
Konstantin
a639bd2606
spells: rework isMagical()
...
Now it is a flag of a spell, and not a target condition.
This fixes resistance to bind effect
2023-03-31 01:01:25 +03:00
Konstantin
aab5b47038
vcmi: setup moats using MoatAbility
...
Setup moats using moat ability, need playtest for now.
-3 to defence not added for now.
2023-03-31 01:01:25 +03:00
Konstantin
1100bc7a5b
obstacle: remove trigger animation and sound
...
It was not working anyway. Now it is handled by trigger ability.
Trigger ability hit animation + trigger ability cast sound.
2023-03-31 01:01:25 +03:00
Ivan Savenko
508d68f77c
Rewardables will use per-object name, if available
2023-03-30 22:29:58 +03:00
Ivan Savenko
e652b3eef0
Removed old code - VCMI now supports json-based animations everywhere
2023-03-30 19:59:19 +03:00
Konstantin
cd1730b1fb
vcmi: remove obstacle caster logic
...
It is possible now to cast something via obstacle
Immune creatures should not trigger an obstacle trigger now
and should not reveal it.
2023-03-30 14:41:40 +03:00
Konstantin
db428faeeb
vcmi: allow obstacles to store another spells
...
It will be used as trigger spell, if set
If not set, it will be ignored
2023-03-30 14:41:40 +03:00
Konstantin
57c35f39ca
WIP: Moat placer
2023-03-30 14:41:40 +03:00
Konstantin
d90d00eeac
vcmi: rework ProxyCaster
...
Now ProxyCaster can be used without hero and can even cast something
with default values.
2023-03-30 14:41:40 +03:00
Konstantin
847437bbfa
BattleInfo: update bonus tree when unit is moved
...
This is a semi-dirty hack to force uncaching a bonuses with
UnitOnHexLimiter
2023-03-30 12:51:59 +03:00
Konstantin
4c08e6a0f9
vcmi: add UnitOnHex limiter
...
Bonus will be accepted, if unit stands in listed hexes
2023-03-30 12:51:59 +03:00
Konstantin
ffe24627e7
HeroBonus: change limiters to enum class
...
Also remove unused functions.
2023-03-30 12:42:24 +03:00
Konstantin
777818b388
HeroBonus: use 64 bit for tree counter (to be more robust)
2023-03-30 12:41:17 +03:00
Konstantin
0e69aac96f
HeroBonus: removed unused functions
2023-03-30 12:41:17 +03:00
Konstantin
89fd742c1a
NetPacks: add BATTLE type to GiveBonus
...
Will work as battlefield effect of current battle.
2023-03-30 12:41:17 +03:00
Konstantin
5716925b47
NetPacks: change GiveBonus enum to enum class.
2023-03-30 12:41:17 +03:00
Tomasz Zieliński
46a24043e8
Add back Mines.
2023-03-29 17:06:17 +02:00
Tomasz Zieliński
401f2342c0
Place Mines after Towns and Monoliths.
2023-03-29 16:54:22 +02:00
Tomasz Zieliński
5ed3c2d518
Place towns and monoliths first - preferably at the zone border.
2023-03-29 16:25:13 +02:00
Tomasz Zieliński
045942fd68
Fixed warning-as-error
2023-03-28 18:25:56 +02:00
Tomasz Zieliński
b184e80b72
Use the most suitable template for object
2023-03-28 17:53:08 +02:00
Tomasz Zieliński
49c029ea6c
Minor refactor
2023-03-28 17:13:24 +02:00
Ivan Savenko
8d0d5341db
Refactoring of hero specialty loading code:
...
- removed no longer used code
- follow creature upgrade chains (e.g. third upgrades)
2023-03-28 17:09:54 +03:00
Ivan Savenko
39ff7efb78
Fix crash on starting Launcher without H3 data
2023-03-27 22:33:36 +03:00
Ivan Savenko
b2f5042942
Merge pull request #1783 from vcmi/beta
...
Merge beta -> develop
2023-03-27 21:21:25 +03:00
Ivan Savenko
a4fe11d413
Merge pull request #1766 from vcmi/fix_editor_shortcut
...
Fix editor shortcut
2023-03-27 21:20:14 +03:00
Ivan Savenko
11088100a0
Merge pull request #1782 from korli/haiku
...
Haiku patch
2023-03-27 18:42:22 +03:00
Tomasz Zieliński
b3a457c71a
Skip objects with value too low to be placed in the zone.
2023-03-27 17:29:46 +02:00
Ivan Savenko
b875da108b
Merge pull request #1717 from SoundSSGood/backpack-limit-size
...
Introducing backpack size limit functionality
2023-03-27 17:17:49 +03:00
Ivan Savenko
e3b5db0ade
Merge pull request #1778 from rilian-la-te/fix-obstacle-removal-mechanincs
...
Fix landmines staying on battlefield after trigger
2023-03-27 17:17:14 +03:00
Konstantin
9a229d6e48
vcmi: really correct obstacle trigger
...
Now obstacle trigger really matches H3
2023-03-27 16:11:17 +03:00
Konstantin
8c1d6c8e13
CBattleInfoCallback: use obstacle only once
...
We should not affect creature by obstacle twice.
2023-03-27 15:45:41 +03:00
Konstantin
88a7b3141d
vcmi: really correct BFS
...
AFAIK, all is working as H3.
2023-03-27 15:45:41 +03:00
Jerome Duval
518f8d69e5
Haiku patch
2023-03-27 10:10:09 +02:00
Tomasz Zieliński
511a42f9b9
Oops missed that part.
2023-03-27 09:35:52 +02:00
Tomasz Zieliński
18a87d1ec0
Distribute limited objects evenly in zones with matching terrain
2023-03-27 09:09:58 +02:00
Tomasz Zieliński
a88e1dc1f6
Add only one template per object
2023-03-27 08:44:49 +02:00
Konstantin
5b50191af7
NetPacksLib: remove obstacle ACTIVATE* actions
...
Actually these actions was not working anyway.
2023-03-26 22:59:34 +03:00
Konstantin
26db14b7b4
vcmi: expert dispel now works mechanically correct
2023-03-26 21:25:26 +03:00
Konstantin
edc9812559
obstacle: correct logic as in OH3
...
Obstacle spells should not be cast if they are affected by native
terrain and enemy have at least one stack with native terrain
2023-03-26 21:22:38 +03:00
Konstantin
705afbb898
UnitEffect: it should not always assume smart
...
It is normal than non-smart spell will be cast on our units.
2023-03-26 21:19:49 +03:00
Konstantin
44a625aa6b
vcmi: check spell obstacles by type
2023-03-26 21:17:39 +03:00
Andrii Danylchenko
a0de223901
Merge pull request #1772 from vcmi/fix_invalid_native_terrain
...
Fix the case of invalid native town type
2023-03-26 13:19:01 +03:00
Ivan Savenko
9287d1b837
Merge pull request #1776 from vcmi/beta
...
Merge beta -> develop
2023-03-26 01:48:23 +02:00
Ivan Savenko
7477e4a8cc
Handle mods with "keepDisabled" propertly on client
2023-03-25 23:54:51 +02:00
Ivan Savenko
4eed0b2c9e
Added workaround for Dungeon towers
2023-03-25 23:54:51 +02:00
Ivan Savenko
8fbeff2a02
Fix movement over lowered drawbridge in Fortress
2023-03-25 23:54:51 +02:00
Ivan Savenko
5288e3761e
Merge pull request #1764 from IvanSavenko/selectable_spellcaster
...
Implemented support for multi-spell casters
2023-03-25 20:08:47 +02:00
Ivan Savenko
6f631a0aa7
Merge pull request #1759 from IvanSavenko/kills_in_tooltip
...
Show potential kill amount in attack tooltip
2023-03-25 20:03:27 +02:00
Tomasz Zieliński
00a77e3c5f
Probably found the root cause of terrain problems.
2023-03-25 18:52:18 +01:00
DjWarmonger
2c4cde060a
Merge pull request #1694 from vcmi/extra_rmg_monoliths
...
This could be controversial solution, but since there were no objections, I'll give it a shot.
2023-03-25 18:38:06 +01:00
DjWarmonger
114e7d196b
Merge pull request #1698 from vcmi/object_placement_tweaks
...
No objections, works fine for me as well.
2023-03-25 18:13:15 +01:00
Tomasz Zieliński
68a2bb78a5
Fix the case of invalid native town type :?
2023-03-25 18:08:46 +01:00
Tomasz Zieliński
9d7d4b6a5f
Fixed editor shortcut on Windows
2023-03-25 11:40:44 +01:00
Tomasz Zieliński
392061e97e
Fix loading towns which in OH3 editor have defined horde buildings level 1 - 5 (inluding random town).
2023-03-25 11:17:49 +01:00
Ivan Savenko
9a19feaf4a
Fix spellcasters with massive spells
2023-03-25 01:23:49 +02:00