Tomasz Zieliński
3c87b3934d
Do not place object visible tiles over the top of the map.
2023-04-10 19:26:53 +02:00
nordsoft
9371f013e9
Rename outer caster
2023-04-10 20:56:50 +04:00
Konstantin
4da97682be
vcmi: remove code duplication for native terrain
2023-04-10 19:28:17 +03:00
Konstantin
7b9e281f7d
vcmi: bump serialization version
2023-04-10 19:28:16 +03:00
Konstantin
fedf7d377c
vcmi: remove TFaction
...
This is a huge change and will break save compatibility
2023-04-10 19:28:16 +03:00
Konstantin
452cebfdfd
CPropagatorNodeType: replace default constructor
...
Parameter constructor did the same
2023-04-10 19:28:16 +03:00
Konstantin
09cbec7c75
HeroBonus: remove StackOwnerLimiter
...
It seems not to be used anywhere
2023-04-10 19:28:16 +03:00
Konstantin
dd196f2aa8
vcmi: slightly rework limiters
...
1. Add vector to aggregates
2. Rework CreatureFactionLimiter to FactionLimiter
2023-04-10 19:28:16 +03:00
Konstantin
7326980bd4
vcmi: rename WithXXX to IXXXProvider
2023-04-10 19:28:16 +03:00
Konstantin
bb1a5d9521
vcmi: remove configurable limiters from map
...
This limiters should be always initialized with parameters.
Add CREATURES_ONLY limiter to limit bonuses only to creatures
(no heroes).
2023-04-10 19:28:16 +03:00
Konstantin
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
Konstantin
9f8dcfc736
CCreatureHandler: load old stack exp as global effects
...
It is more robust and more logical.
2023-04-10 19:28:16 +03:00
Konstantin
0f5f4c69ec
vcmi: specialize native terrain entity
...
Specialize native terrain entity for all object that have
native terrain. Allow creatures to take global bonuses into
account when checking for native terrain.
2023-04-10 19:28:16 +03:00
Konstantin
6d9859932b
vcmi: add native terrain entity
...
Add interface which should be used on any object with native terrain
So far, it is faction, hero, creature and battle stack
2023-04-10 19:28:16 +03:00
Konstantin
1760d2295c
HeroBonus: add CreatureLevelLimiter
2023-04-10 19:28:16 +03:00
Konstantin
01f5571342
CGHeroInstance: remove old struct
...
Saves where struct is used is incompatible anyway
2023-04-10 19:28:16 +03:00
Ivan Savenko
2d332f5ce8
Merge pull request #1916 from rilian-la-te/constexpr-id
...
vcmi: constexpr IDs
2023-04-10 18:28:45 +03:00
Ivan Savenko
42b2be4bbb
Merge pull request #1908 from SoundSSGood/art-client-server-fixes
...
Artifact related fixes
2023-04-10 18:26:49 +03:00
nordsoft
b9cabef179
Fixes issues related to spell mechanics
2023-04-10 17:08:24 +04:00
Konstantin
4f3c826196
vcmi: manaLimit should be spellcaster property
2023-04-10 15:35:21 +03:00
nordsoft
f550457d23
Added stdinc
2023-04-10 12:17:43 +04:00
nordsoft
1a63f44dab
Minor change
2023-04-10 05:53:20 +04:00
nordsoft
464ad63749
Implement behavior
2023-04-10 05:46:45 +04:00
nordsoft
c0b90432cb
Change callback interface
2023-04-10 05:40:03 +04:00
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
nordsoft
3166fd05f4
Handle array exceed limit potential crash
2023-04-09 14:43:51 +04:00
nordsoft
23e411cacd
Adding logging and error handling
2023-04-09 13:29:07 +04:00
Ivan Savenko
a6ce99573c
Added fallback identifiers for reading older vcmi maps
2023-04-09 12:27:33 +03:00
nordsoft
7c13246851
Keep creatures and arts
2023-04-09 05:02:34 +04:00
nordsoft
08809f1cdc
String building id
2023-04-09 04:53:06 +04:00
nordsoft
6ed8f748b3
Use string ids for most of bonuses
2023-04-09 04:26:04 +04:00
nordsoft
307fb071a2
VCMI campaign format support prototype
2023-04-09 03:24:40 +04: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
Ivan Savenko
dc099b2a35
Implemented support for multi-spell casters
2023-03-25 00:48:14 +02:00
Ivan Savenko
970981cfc9
Show information on potential kills in attack tooltip
2023-03-24 17:18:47 +02:00
Ivan Savenko
31147ac83b
refactoring: TDmgRange pair -> DamageRange struct
2023-03-23 17:49:33 +02:00
Konstantin
e40b9c849d
vcmi: no open-code NO_APPROPRIATE_TARGET
2023-03-22 12:04:28 +03:00
SoundSSGood
19096f39f0
Backpack limit. Amount of fixes.
2023-03-21 22:11:42 +02:00
Konstantin
0ffc440b53
vcmi: fix target condition regression
2023-03-21 19:19:34 +03:00
Ivan Savenko
44dc89bdcf
Merge pull request #1736 from rilian-la-te/fix-target-conditions
...
vcmi: fix target condition regression
2023-03-21 17:35:20 +02:00
Konstantin
60b510617c
vcmi: fix target condition regression
2023-03-21 17:56:15 +03:00
Ivan Savenko
575fb29a22
Merge pull request #1534 from kambala-decapitator/pathfinder-fly
...
fix movement cost with Fly
2023-03-21 14:32:56 +02:00
SoundSSGood
f0f9eecf97
Backpack limit part5. End of battle. Other stuff
2023-03-21 12:14:33 +02:00
SoundSSGood
9f8aa25297
Backpack limit part4 (Using cheats, buying)
2023-03-21 12:14:33 +02:00
SoundSSGood
ca5c9910a4
Backpack limit part3 finishQuest
2023-03-21 12:14:33 +02:00
SoundSSGood
e23766280f
Backpack limit part2 (Pick up, Dig up, Object rewards)
2023-03-21 12:14:33 +02:00
SoundSSGood
96e8a1f21c
Backpack limit part1 (move, disassemble)
2023-03-21 12:14:33 +02:00
SoundSSGood
37edffd788
GameConstants upd
2023-03-21 12:14:33 +02:00
SoundSSGood
72122fb433
CArtifact, CArtifactInstance, CCombinedArtifactInstance reorganization
2023-03-21 12:14:33 +02:00
Ivan Savenko
6ee4fd24f7
Merge pull request #1731 from rilian-la-te/fix-unicorns
...
CStack: make unicorns ability multiplicative
2023-03-20 23:34:05 +02:00
Konstantin
8c10f48fbd
CStack: make unicorns ability multiplicative
2023-03-20 23:29:33 +03:00
Ivan Savenko
9289646dab
Merge pull request #1722 from rilian-la-te/fix-first-aid
...
vcmi: fix first aid regression
2023-03-20 21:49:53 +02:00
Andrey Filipenkov
147633bd9d
compute movement cost using PathNodeInfo layer info when possible
2023-03-20 11:35:20 +03:00
Andrey Filipenkov
a0cd69e944
Slight refactoring of CGHeroInstance::movementPointsAfterEmbark()
2023-03-20 11:35:20 +03:00
Andrey Filipenkov
3602645a30
improve iterating over EPathfindingLayer
2023-03-20 11:35:19 +03:00
Andrey Filipenkov
c0c19557af
fix method documentation
2023-03-20 11:35:19 +03:00
Andrey Filipenkov
8f843d0bff
fix typos
2023-03-20 11:35:19 +03:00
Andrey Filipenkov
68f5c1de79
improve variable names in CPathfinderHelper::getNeighbours()
2023-03-20 11:35:19 +03:00
Andrey Filipenkov
bfb0dc26d5
fix movement cost on roads
2023-03-20 11:35:19 +03:00
Andrey Filipenkov
0c7b5ac793
fix movement cost on Favorable Winds
2023-03-20 11:35:19 +03:00
Andrey Filipenkov
3fbdc3b198
improve code that checks last possible tile
2023-03-20 11:35:18 +03:00
Andrii Danylchenko
23fa7c4a9b
Merge pull request #1720 from vcmi/fix_small_lakes_clean
...
Don't place shipyard or boats at very small lakes
2023-03-19 19:52:22 +02:00
Andrii Danylchenko
aede3da74e
Merge pull request #1721 from vcmi/fix_rmg_infinite_loop
...
Fix rmg infinite loop
2023-03-19 19:46:28 +02:00
Konstantin
895572df02
vcmi: fix first aid regression
2023-03-19 19:20:08 +03:00
DjWarmonger
15047a4469
Merge pull request #1718 from vcmi/fix_shipyard_border
...
Fix shipyard border calculation for RMG
2023-03-19 16:05:24 +01:00
Tomasz Zieliński
9e206dbbc7
Forgot this one
2023-03-19 09:51:37 +01:00
Tomasz Zieliński
f52c465322
Allow zones to inherit properties recursively, in any order.
2023-03-19 09:27:05 +01:00
Andrey Filipenkov
21463f1c0e
fix movement cost with Fly
2023-03-19 11:26:55 +03:00
Andrey Filipenkov
43e89523a9
Merge pull request #1716 from rilian-la-te/tw-fix
...
TotalValue: fix typo
2023-03-19 11:25:48 +03:00
Tomasz Zieliński
dd3803b111
Don't place shipyard or boats at very small lakes
...
(cherry picked from commit 1d2913bea0
)
2023-03-18 22:05:25 +01:00
Tomasz Zieliński
e1ced317a1
Few tweaks for boat placement to keep distance between it and other objects, especially guards.
2023-03-18 21:59:23 +01:00
Tomasz Zieliński
1dc96d6844
Fix shipyard border calculation for RMG
2023-03-18 20:12:36 +01:00
Konstantin
54b1b49f5a
totalValue: fix overflow
...
Fixes #1715
2023-03-18 22:08:21 +03:00
Tomasz Zieliński
23a5a32756
Add fallback for empty terrain types. Still it's a workaround and does not solve the root cause.
2023-03-18 17:00:50 +01:00
Konstantin
b07f4fb383
TotalValue: fix typo
2023-03-18 15:45:32 +03:00
Tomasz Zieliński
eabcbfc25a
Fix all stacks being capped at 10 units
2023-03-17 22:32:05 +01:00
Tomasz Zieliński
f57c275603
Merge remote-tracking branch 'origin/develop' into object_placement_tweaks
2023-03-17 21:47:16 +01:00
Ivan Savenko
f24ca6fbcf
Merge pull request #1699 from rilian-la-te/fix-ignissa
...
Rewardable: always initialize numbers
2023-03-17 22:15:28 +02:00
Ivan Savenko
95d56d3f2a
Merge pull request #1705 from rilian-la-te/convert-scouting
...
HeroBonus: add scouting to converter
2023-03-17 22:14:54 +02:00
Konstantin
6de042657c
fix Ignissa bug the old way
2023-03-17 20:09:18 +03:00
Konstantin
b4fe7908a4
HeroBonus: add scouting to converter
2023-03-17 18:50:57 +03:00
Konstantin
bbbbfe00f0
Modernize resourceSet
2023-03-17 02:26:54 +03:00
Ivan Savenko
8a6c51a9e6
Fix uninitialized pointer dereference
2023-03-16 20:48:37 +02:00
Tomasz Zieliński
f2dc9cb48e
- Place Subterranean Gates as far from other objects as possible
...
- Added minimum distance between zone guards
2023-03-16 18:42:28 +01:00
Ivan Savenko
fbb9810c49
Fix regression - uninitialized pointer
2023-03-16 19:25:26 +02:00
Ivan Savenko
aea2a1e22e
Fixed loading of settings from mods
2023-03-16 18:11:36 +02:00
Ivan Savenko
a0e9e01b48
Renamed & reorganized all game mechanics settings names
2023-03-16 18:11:35 +02:00
Ivan Savenko
383387ef29
Integrated defaultMods into mod system
2023-03-16 17:55:09 +02:00
Tomasz Zieliński
62490683ce
Place objects away from zone guard in both zones, not only the where it is placed.
2023-03-16 16:20:11 +01:00
Konstantin
4c4498b22a
vcmi: modernize rest of lib
2023-03-16 17:55:20 +03:00
Konstantin
7f805768f0
battle: fixup siege crash
2023-03-16 16:47:06 +03:00
Konstantin
4eb248b5e2
vcmi: bump serialization version
...
Saves from this branch are incompatible with generic ones
2023-03-16 16:47:05 +03:00
Konstantin
580268bfd4
vcmi: fix logistics specialist movement regression
...
There was incorrect calculations introduced earlier.
2023-03-16 16:46:42 +03:00
Konstantin
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
Konstantin
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
Konstantin
ff5f828031
vcmi: remove SELF_LUCK bonus
...
This bonus also now handled by LUCK bonus with INDEPENDENT_MAX of 1
2023-03-16 16:46:42 +03:00
Konstantin
c7e197e1ff
vcmi: remove SELF_MORALE bonus
...
It is easily handled by MORALE bonus with INDEPENDENT_MAX
Harmless due to converter.
2023-03-16 16:46:42 +03:00
Konstantin
ebbc8cf208
vcmi: remove BLOCK_LUCK bonus
...
To block a luck, just set both INDEPENDENT_MAX and INDEPENDENT_MIN
to 0 of LUCK bonus
2023-03-16 16:46:42 +03:00
Konstantin
c07e74250b
vcmi: remove BLOCKS_MORALE bonus
...
To block morale, just set INDEPENDENT_MAX and INDEPENDENT_MIN
to 0, there is no need for separate bonus.
2023-03-16 16:46:42 +03:00
Konstantin
1e7875cb36
vcmi: selector-based target conditions
...
For now, allows us to define target conditions by selector and even
by minimal and maximal value of bonuses. Convert Bonus condition
to Selector condition.
Allow structures inside TargetCondition struct.
2023-03-16 16:46:42 +03:00
Konstantin
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
Konstantin
f13a934c47
vcmi: allow converting bonusParams to selector
2023-03-16 16:46:42 +03:00
Konstantin
eaceb65b5c
vcmi: fix CSkillHandler crash
2023-03-16 16:46:42 +03:00
Konstantin
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
Konstantin
95503d0623
vcmi: unify movement
...
1. Now there is only one bonus: MOVEMENT, with 2 subtypes: 0 is sea, 1 is land
For movement value on land depends on creature speed we use a new
ARMY_MOVEMENT updater with global bonus. If we does not like such
dependency, we can just remove this updater from json.
2. All specialities and secondary skills for movement moved to new
system AFAIK
2023-03-16 16:46:41 +03:00
Konstantin
20a9332a3f
vcmi: translate wisdom
...
Make wisdom as separate bonus. It will be enough for now. But
next is should be done as IsLearnable for each spell.
2023-03-16 16:46:41 +03:00
Konstantin
ddcff9dc36
vcmi: convert magic schools to MAGIC_SCHOOL_SKILL
...
It is already used by battlefields.
2023-03-16 16:46:41 +03:00
Konstantin
64ad7558c6
vcmi: skill-agnostic artillery
...
Now it should work for any creature and with any damage percentage.
2023-03-16 16:46:41 +03:00
Konstantin
9205ef2c91
vcmi: skill-agnostic ballistics
...
Made ballistics by using spell action and more code is shared now.
2023-03-16 16:46:41 +03:00
Konstantin
84f53485e2
vcmi: skill-agnostic first aid
...
Now first aid is passive battle spell, and skill just bumps
specific spell power for this spell. Everything about healing
is handled into Heal spell effect.
2023-03-16 16:46:41 +03:00
Konstantin
a0987313ba
vcmi: convert intelligence
...
Intelligence is converted to both global effect and skill bonus
Bonus name HERO_MANA_PER_TEN_KNOWLEDGE is a little weird, but works
like old SECONDARY_SKILL_PREMY bonus
2023-03-16 16:46:41 +03:00
Konstantin
a86e12cd42
vcmi: convert necromancy
...
Now it is 3 bonuses to cover necromancy.
1. IMPROVED_NECROMANCY = possible creatures raized (affected by cloak)
2. UNDEAD_RAISE_CHANCE = raise chance (affected by artifacts)
3. UNDEAD_RAISE_POWER = helper to select creature from first
2023-03-16 16:46:41 +03:00
Konstantin
84eece1d8b
vcmi: convert mysticism to MANA_REGENERATION
...
With PERCENT_TO_TARGET_TYPE it was easy.
2023-03-16 16:46:41 +03:00
Konstantin
f641ed2015
vcmi: convert learning to global effect
...
Now hero experience is a global effect, and secondary
skill gives exactly same bonus. Can be modified by
PERCENT_TO_TARGET_TYPE.
2023-03-16 16:46:41 +03:00
Konstantin
a85f3b63ec
vcmi: reuse SPELL_DAMAGE for sorcery
...
Now there is no need for specific spell bonus, and
we need to simply reuse SPELL_DAMAGE, and by using
PERCENT_TO_TARGET_TYPE speciality will work.
2023-03-16 16:46:41 +03:00
Konstantin
6b987275eb
vcmi: use global bonuses for sight radius and mana
...
We do not need to hardcode constants for there. We can just
use default bonuses.
2023-03-16 16:46:41 +03:00
Konstantin
5d4bcb3c78
vcmi: fix scouting bonus spelling error
...
With fallback for old mods.
2023-03-16 16:46:41 +03:00
Konstantin
f264c541fb
vcmi: skill-agnostic tactics
...
Tactics is split to 2 bonuses, and it is now possible to
block tactics without having tactics itself. But tactics
for two sides is not implemented, because it is huge rework
and not high priority for me now, I want to do basic
secondary skill rework first.
2023-03-16 16:46:41 +03:00
Konstantin
300a8a15ba
vcmi: remove estates bonus
...
Now it is handled by GENERATE_RESOURCE::GOLD.
2023-03-16 16:46:41 +03:00
Konstantin
c64d05c419
vcmi: skill-agnostic diplomacy
...
This is simple and will work.
2023-03-16 16:46:41 +03:00
Konstantin
34a26580a7
vcmi: skill-agnostic resistance
...
Uses exiting bonus and new PERCENT_TO_TARGET_TYPE value type
2023-03-16 16:46:41 +03:00
Konstantin
6e4372176a
vcmi: skill-agnostic pathfinding
...
For now, works exactly as in VCMI and H3.
I think we should add some BONUS_TERRAIN_DISCOUNT_PERCENT bonus
to discount by percent, like written in pathfinding description
2023-03-16 16:46:41 +03:00
Konstantin
9ffd18c914
vcmi: skill-agnostic armorer
...
This is a skill-agnostic armorer, which can be used same as
armorer before.
2023-03-16 16:46:41 +03:00
Konstantin
43f09dd2e4
vcmi: convert scholar to new bonus
...
Convert scholar to new skill-agnostic bonus. Now works only for any
school (not from specific). In all schools form identical to
past's SECONDARY_SKILL_PREMY::SCHOLAR
2023-03-16 16:46:41 +03:00
Konstantin
0ed89e77d4
vcmi: replace archery and offence to new bonus
...
Add PERCENTAGE_DAMAGE_BOOST bonus, which will work exactly as old
archery or offence. Subtype is actually boolean which select
ranged (1) and melee (0)
2023-03-16 16:46:41 +03:00
Konstantin
4a89418ada
vcmi: replace SecondarySkillPremy:EAGLE_EYE
...
Replace this bonus to new ArcaneIntuition bonus, which
will work independently from the rest of skill bonuses.
Proof of concept for other skills.
2023-03-16 16:46:41 +03:00
Konstantin
a0a78d0596
vcmi: remove MAXED_SPELL
...
Replace it by SPELL bonus with val = 3
2023-03-16 16:46:41 +03:00
Konstantin
496c1def12
vcmi: remove FULL_HP_REGENERATION bonus
...
Just set HP_REGENERATION to high number
(in OH3 doubled stack health is sufficient)
2023-03-16 16:46:41 +03:00
Konstantin
62e579f672
vcmi: replace KINGx bonuses to one KING bonus
...
val = level of slayer which require to affect.
Can break saves.
2023-03-16 16:46:41 +03:00
Konstantin
1e73c2e1e6
vcmi: configurable charge
...
There is no reason not to make charge configurable.
Just do it.
2023-03-16 16:46:41 +03:00
Konstantin
f26fac5562
vcmi: move obligatory marker to CSkillHandler
...
It is working, now it is possible to
define other obligatory skills than wisdom or magic schools,
but only 2 types of obligatory skills exists - like wisdom and
like magic school
2023-03-16 16:46:41 +03:00
Konstantin
4acf3778ef
vcmi: allow adding global bonuses
...
I will use it to implement some H3 base features like
mana regen and base movement.
2023-03-16 16:46:41 +03:00
Konstantin
9280d70819
vcmi: remove deprecated "specalties" node
...
Use new bonus system format
2023-03-16 16:46:41 +03:00
Konstantin
d9496dd9f7
vcmi: remove vector speciality format
...
It is deprecated and will not be used anymore.
2023-03-16 16:46:41 +03:00
Konstantin
96c40eb36e
vcmi: remove SPECIAL_BLESS_DAMAGE bonus
...
It is handled by HAS_ANOTHER_BONUS_LIMITER with SPELL_EFFECT limiter
with desired spell id (bless). Yes, bonus will come from HERO_SPECIAL,
but will work only for blessed with spell id creatures.
2023-03-16 16:46:41 +03:00
Konstantin
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
Konstantin
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
Konstantin
98218adea5
vcmi: add PERCENT_TO_SOURCE value type
...
This will adds percent only to bonuses with same source.
In theory it should allow us to create specials which affects only
secondary skills, or only artifacts (let's say, swordmaster special
- any attack bonus from artifact is doubled).
2023-03-16 16:46:41 +03:00
Konstantin
ee90400d66
vcmi: add a Not bonus selector.
...
It will allow us to form complex selector logics with full boolean
operator.
2023-03-16 16:46:41 +03:00
Konstantin
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
Ivan Savenko
129b5313c5
Merge pull request #1663 from Adriankhl/fix_load_sleeping_heroes
...
Fix client data deserialization, such as sleepingHeroes
2023-03-16 15:05:18 +02:00
Ivan Savenko
865f9f7d2b
Merge pull request #1511 from IvanSavenko/launcher_welcome_page
...
Add welcome/setup page to Laucher
2023-03-16 15:04:49 +02:00
Ivan Savenko
962f7ac4de
Merge pull request #1682 from IvanSavenko/h3m_text_export
...
H3M/H3C text export
2023-03-16 14:50:57 +02:00
Ivan Savenko
2a2af34788
Merge pull request #1650 from SoundSSGood/arts-swap-regression-fix
...
Arts swap regression fixed
2023-03-16 14:47:31 +02:00
Tomasz Zieliński
5b267f9cbd
- Duplicate Monolith templates to ensure at least 100 are available to RMG
...
- Do not use Monoliths which can't be placed at any land
2023-03-16 06:58:25 +01:00
Ivan Savenko
f5f303202a
Update localization
2023-03-14 22:04:08 +02:00
Ivan Savenko
d2152d387f
Fix processing of VCMI_Tests map
2023-03-14 21:48:39 +02:00
Ivan Savenko
06e5d37fbd
Fixed incorrect error messages from translations
2023-03-14 19:55:08 +02:00
Ivan Savenko
f42a894723
Implemented h3c translations
2023-03-14 19:46:15 +02:00
Ivan Savenko
a4ef9fd0b8
Added h3m strings generation to 'convert txt' command
2023-03-14 17:54:37 +02:00
Ivan Savenko
369e925af8
Loading of translation mods is now skipped on language mismatch
2023-03-14 16:02:16 +02:00
Ivan Savenko
66df19352f
Do not show languages without translations in UI
2023-03-14 16:02:16 +02:00
Ivan Savenko
c3d78ba761
Partially implemented Setup Window
2023-03-14 16:02:16 +02:00
Ivan Savenko
6fe319329b
Fix language selection
2023-03-14 16:02:16 +02:00
Ivan Savenko
70bdb3aeaf
Moved language handling code to Languages.h/cpp
2023-03-14 16:02:16 +02:00
Adriankhl
626721cbba
Fix serialization of ObjectClass
2023-03-12 21:41:46 +01:00
Konstantin
45dcd95f20
miscObjects: fix whirpool display
...
It should display negative numbers, not positive
2023-03-11 21:41:58 +03:00
Konstantin
fafe352f93
vcmi: bump max serialization version
...
And also - now we can choose between 3 states for rewardables
actually.
2023-03-11 21:41:57 +03:00
Konstantin
bc228a938a
vcmi: use enum class for EComponentType
...
There is really no reason not to use it
2023-03-11 21:41:57 +03:00
Konstantin
716dd9a43b
vcmi: remove a bunch of duplicated showInfoDialog
...
These methods duplicated in almost every map object
Just replace it by one such method
2023-03-11 21:41:57 +03:00
Konstantin
8edba4fb06
vcmi: use MODAL by default
...
Convert only some objects to AUTO, need futher testing
than no non-adventure objects will not use AUTO or INFO
2023-03-11 21:41:57 +03:00
Konstantin
c759400767
vcmi: allow showing simple rewardables in infobox
2023-03-11 21:41:57 +03:00
Konstantin
4617ce10e5
vcmi: allow showing more than one components in infobar
...
Up to 8, AFAIK. So, we can show multi-reward in infobox now.
One issue remain - cannot dynamically choose components size
based on text size.
2023-03-11 21:41:57 +03:00
Konstantin
d503c875a4
vcmi: fix mana points displayed
2023-03-11 21:41:57 +03:00
Ivan Savenko
0ea73cae7f
Merge pull request #1662 from rilian-la-te/reduce-lexical-cast
...
vcmi: reduce boost::lexical_cast usage
2023-03-10 12:53:21 +02:00
Ivan Savenko
c4de8a5cd0
Merge pull request #1580 from rilian-la-te/modernize-log-fs-events
...
Modernize next part
2023-03-09 15:53:43 +02:00
Ivan Savenko
a503c9d413
Merge pull request #1638 from rilian-la-te/fix-road-river
...
vcmi: fix road and river loading
2023-03-09 15:53:10 +02:00
Konstantin
5366f9190e
vcmi: reduce boost::lexical_cast usage
2023-03-09 16:36:46 +03:00
SoundSSGood
e24eb6cc12
regression fixed
2023-03-08 17:20:38 +02:00
Ivan Savenko
58cfea02f1
Added option to skip validation of mods
2023-03-07 00:06:58 +02:00
Ivan Savenko
db9a296d02
Fix debug renderer
2023-03-07 00:06:58 +02:00
Ivan Savenko
499496f9d0
Restored Simplified Chinese support
2023-03-07 00:06:58 +02:00
Ivan Savenko
3d71f8b46d
Fix loading of h3m translations
2023-03-07 00:06:58 +02:00
Ivan Savenko
0c847c85cc
Fix serialization of rewardable objects
2023-03-07 00:06:58 +02:00
Ivan Savenko
0b3c10d990
Fix crash on hovering Market of Time (unfinished H3 object)
2023-03-07 00:06:58 +02:00
Konstantin
042885c0b8
vcmi: modernize lib/events
2023-03-06 20:24:38 +03:00
Konstantin
462599a5c6
vcmi: modernize lib/filesystem
2023-03-06 20:24:38 +03:00
Konstantin
c142bf1072
vcmi: modernize lib/logging
2023-03-06 20:13:25 +03:00
Ivan Savenko
c8afef3408
Merge pull request #1636 from rilian-la-te/remove-unused
...
vcmi: remove old war machine code
2023-03-06 00:10:55 +02:00
Ivan Savenko
df50a17d2a
Fix loading of non-ASCII text files
2023-03-05 21:50:38 +02:00
Konstantin
c84a9f32f6
vcmi: fix road and river loading
...
It actually catched by MapFormat.Terrain test crash.
So, this is a fix (functions does not trowing exceptons, it returns NULL
if something is wrong).
2023-03-05 22:41:38 +03:00
Ivan Savenko
7ef5163d9d
Merge pull request #1581 from IvanSavenko/map_render_rewrite
...
Adventure Map - rendering rewrite
2023-03-05 19:51:07 +02:00
Konstantin
a364e39b50
vcmi: remove old war machine code
2023-03-05 19:12:47 +03:00
Ivan Savenko
387a7b421a
Refactoring of new code, multiple functionality changes:
...
- Implemented separate Map View contexts for different map modes
- Puzzle map now works
- Enemy movement now works as in H3
- Removed no longer used code
- Implemented missing embark/disembark sounds
- Fixed view focusing on embarking/disembarking
- Fixed focusing on movement near edge of terra incognita
- Fixed sea movement sound
2023-03-05 18:02:58 +02:00
Ivan Savenko
45e2875342
Completely removed old TerrainRect class
2023-03-05 17:57:36 +02:00
Ivan Savenko
5905dd6111
Grail digging check is now in library
2023-03-05 17:48:02 +02:00
Ivan Savenko
11e4d84749
Implemented View Earth / View Air spells
2023-03-05 17:48:02 +02:00
Ivan Savenko
ca13e7dedf
Implemented terrain palette animatiions. Removed old code
2023-03-05 17:48:02 +02:00
Ivan Savenko
4501036a04
Basic version of hero movement on map. Removed old code.
2023-03-05 17:48:02 +02:00
Ivan Savenko
beb7ce5beb
Refactoring of MapView
2023-03-05 17:48:02 +02:00
Ivan Savenko
bb6e1f7ee1
Initial WIP of adventure map rendering rewrite
2023-03-05 17:47:12 +02:00
Ivan Savenko
27cf4d1cd5
Removed non-translatable string
2023-03-05 17:39:27 +02:00
Ivan Savenko
260f6d626c
Implemented translations for H3M maps
2023-03-05 17:39:27 +02:00
Ivan Savenko
5b767d8b0d
Keep new skills from mods active in h3m maps
2023-03-05 17:39:27 +02:00
Ivan Savenko
f653d22f99
Fixed encoding of strings in h3m maps
2023-03-05 17:39:27 +02:00
Ivan Savenko
9b428e8231
Fonts will now correctly detect encoding of fonts from mods
2023-03-05 17:39:27 +02:00
Ivan Savenko
4260726e4b
Provide encoding information to maps & campaigns loaders
2023-03-05 17:39:27 +02:00
Ivan Savenko
bd70b6fabd
Unicode conversion functions now require source encoding
2023-03-05 17:39:27 +02:00
Ivan Savenko
8b3309b47d
Fixed custom hero names text ID's
2023-03-05 17:39:27 +02:00
Ivan Savenko
190368e419
Fix string ID's road/river/terrains
2023-03-05 17:39:27 +02:00
Ivan Savenko
acdb8d6e06
renamed Unicode -> TextOperations, to use for all text processing
2023-03-05 17:39:23 +02:00
Ivan Savenko
65c020ef34
Moved Unicode namespace out of GeneralTextHandler file
2023-03-05 17:30:38 +02:00
Ivan Savenko
6643408cdd
Fixed localization validation
2023-03-05 17:30:38 +02:00
Ivan Savenko
320a44ca3c
Moved common language data into a new file
2023-03-05 17:30:38 +02:00
Ivan Savenko
eeafc48663
Added validation for mod translations
2023-03-05 17:30:38 +02:00
Ivan Savenko
f57a77c2fe
VCMI will now check whether translations are complete
2023-03-05 17:30:38 +02:00
Ivan Savenko
623cae7d47
All translatable strings now have language identifier
2023-03-05 17:30:38 +02:00
Ivan Savenko
84fa19dadf
Merge pull request #1547 from dydzio0614/game-start-unrandomization
...
Hardcoded features for HotA-like starting conditions
2023-03-05 17:29:49 +02:00
Ivan Savenko
476e60c753
Merge pull request #1615 from SoundSSGood/CArtifactsOfHero-refactoring
...
Optimization and cleanup CArtifactHolder
2023-03-05 17:28:36 +02:00
Ivan Savenko
07898f5cca
Merge pull request #1609 from krs0/feature/Battle_order_slight_refactorings
...
Battle order slight refactoring
2023-03-05 17:27:38 +02:00
Andrii Danylchenko
59d612fc2d
Merge pull request #1616 from kambala-decapitator/conan-android
...
move Android code to the main repo
2023-03-05 08:13:41 +02:00
SoundSSGood
a1dbbe2d86
redraw optimization
2023-03-03 10:17:31 +02:00
Andrey Filipenkov
0294a8b063
enable StupidAI and EmptyAI for static AI
2023-03-02 12:09:49 +03:00
Andrey Filipenkov
fd56f86a84
introduce VCMI_MOBILE macro
2023-03-02 12:09:49 +03:00
Andrey Filipenkov
313d479d42
fix using JNI from server in single process build
2023-03-02 12:09:48 +03:00
Andrey Filipenkov
c4e7e91850
fix single process build for Android
2023-03-02 12:09:48 +03:00
Andrey Filipenkov
71d51beab2
change static AI approach to use static libvcmi
...
- now links to static AI lib targets
- solves uncaught boost exception on closing server
2023-03-02 12:09:48 +03:00
Andrey Filipenkov
4c19d8794d
add option to compile AI code into libvcmi directly
...
- used on Android by default
- AI sources and libs are propagated to upper level with set(... PARENT_SCOPE)
2023-03-02 12:09:48 +03:00
Andrey Filipenkov
2ced633ad8
refactor VCMIDirs for Android
...
removes inheritance from VCMIDirsXDG to get rid of defining M_*_DIR variables
2023-03-02 12:09:47 +03:00
Andrey Filipenkov
5b1f3bf0db
use JNIEnv object from SDL instead of forwarding from Java for Client
2023-03-02 12:09:47 +03:00
Andrey Filipenkov
970bd6ed34
adjust project for Android (except AI)
2023-03-02 12:09:47 +03:00
krs
26bca26bd8
Enum is now in its own namespace, comments for enum values removed
...
Using Namespace Fix for linux compilation.
NO_OF_PHASES renamed to NUMBER_OF_PHASES, removed duplicate phase documentation
2023-03-01 21:21:20 +02:00
krs
7421fabf2c
BattlePhases enum moved to Unit.h
2023-03-01 21:21:20 +02:00
krs
0373febe6f
Refactoring 1st phase - Renaming's mainly
...
S'more small battle order refactoring.
2023-03-01 21:21:20 +02:00
Ivan Savenko
d55ac50e3c
Merge pull request #1622 from krs0/feature/CArchiveLoaderparam_extractArchives_ismaskedbytypo#1619
...
CArchiveLoader param "extractArchives" is masked by typo #1619
2023-03-01 21:15:35 +02:00
Konstantin
cb26bedd17
fix #1621
2023-03-01 19:22:06 +03:00
krs
a950fb379e
All CArchiveLoader constructor parameters now have different names from members
2023-02-28 23:21:44 +02:00
Ivan Savenko
8d3bfbe0bc
Merge pull request #1582 from rilian-la-te/modernize-lib-battle
...
vcmi: modernize lib/battle
2023-02-28 12:12:39 +02:00
Andrii Danylchenko
37baec1d24
Fix crash on replaced hero placeholder mouseover
2023-02-27 09:10:26 +02:00
Ivan Savenko
8c52cbcd00
Merge pull request #1429 from dydzio0614/creature-numeric-quantities
...
Implement numeric creature descriptions with config toggle on/off
2023-02-26 22:57:01 +02:00
Andrey Filipenkov
176dfca578
fix indentation
2023-02-24 13:42:26 +03:00
Andrey Filipenkov
e6d87d5f35
wrap FileStream's helper functions into anonymous namespace
2023-02-24 13:42:26 +03:00
Andrey Filipenkov
85d1909ac5
remove copy-pasted functions from ioapi.c
2023-02-24 13:42:26 +03:00
Andrey Filipenkov
b0c109d5f7
use target from variable
2023-02-22 14:00:52 +03:00
Andrey Filipenkov
59948a41a6
use std::call_once instead of bool flag
2023-02-22 14:00:50 +03:00
Andrii Danylchenko
e13a230848
merge conflict regression fix
2023-02-18 17:19:33 +02:00
Andrii Danylchenko
47b253e837
#1579 - check z coord as well
2023-02-17 18:34:57 +02:00
Konstantin
93c2bbf9ab
vcmi: modernize lib/battle
2023-02-16 23:37:19 +03:00
Dydzio
e48a4185ed
Use config values from new settings
2023-02-15 23:36:09 +01:00
Andrii Danylchenko
6314fc0506
Fix destructor order
2023-02-15 20:37:18 +02:00
Andrii Danylchenko
c6feafc367
Hack to fix campaigns
2023-02-15 20:37:18 +02:00
Ivan Savenko
f65c6ad275
fix regressions from modernization
2023-02-15 14:27:12 +02:00
Ivan Savenko
5d98471d12
Merge pull request #1567 from rilian-la-te/modernize-maps
...
Modernize maps
2023-02-14 23:42:03 +02:00
Konstantin
5f181e25af
vcmi: modernize lib/mapObjects
2023-02-14 14:39:56 +03:00
Konstantin
b16f66477c
vcmi: modernize lib/mapping
2023-02-14 14:22:13 +03:00
Ivan Savenko
64ddd75cdc
Merge pull request #1571 from IvanSavenko/advmap_elements_refactoring
...
Advmap elements refactoring
2023-02-14 12:53:23 +02:00
Ivan Savenko
fbbfa29030
Merge pull request #1561 from rilian-la-te/modernize-serializer-spells
...
VCMI: modernize lib/serializer and modernize lib/spells
2023-02-14 12:12:39 +02:00
Ivan Savenko
72fe1fcfa9
Fix minimap updating on hero loss
2023-02-14 11:32:19 +02:00
Konstantin
7bfb37df4d
vcmi: modernize lib/rmg
2023-02-14 02:50:39 +03:00
Andrii Danylchenko
9f55666931
rework netpacks to avoid double typeinfo
2023-02-13 20:26:39 +02:00
SoundSSGood
0f93b0991c
Regression fixed
2023-02-13 15:16:42 +02:00
SoundSSGood
8504102c53
Merge branch 'vcmi:develop' into contitutient-swap
2023-02-13 09:51:42 +02:00
Andrii Danylchenko
e6b21ed298
Merge pull request #1574 from SoundSSGood/contitutient-move
...
combined art move
2023-02-13 08:30:35 +02:00
Andrii Danylchenko
c41a0a37e7
Merge pull request #1562 from rilian-la-te/modernize-netpacks
...
vcmi: modernize lib/NetPacks.h and lib/NetPacksBase.h
2023-02-12 23:10:21 +02:00
SoundSSGood
2976739c97
some refactoring
2023-02-12 21:27:37 +02:00
Konstantin
bdd976cc1e
vcmi: modernize spell effects v2
2023-02-12 21:23:00 +03:00
Konstantin
97fc424e98
vcmi: modernize lib/spells (except adventure one, needs major rework)
2023-02-12 21:23:00 +03:00
Konstantin
8661496f6c
vcmi: modernize lib/serializer
2023-02-12 21:23:00 +03:00
SoundSSGood
34a0dbc0b6
misc slots. fixed combined arts moving
2023-02-12 20:13:26 +02:00
Konstantin
0627e1ecaa
vcmi: remove unused variables from lib/rmg
2023-02-12 19:11:24 +03:00
Konstantin
3cf303f1c7
vcmi/client: make ColorRGBA constexpr
...
1. Replace overflowing int3 to ColorRGBA, which is more semantically
correct
2. Make ColorRGBA constexpr, to make sure than hardcoded colors can
be initialized in compile time
2023-02-12 19:11:24 +03:00
Konstantin
038db5c71b
vcmi: make int3 as constexpr class
...
This allows us to calculate distances and check const vector validity
at compile time
2023-02-12 19:00:43 +03:00
Konstantin
b30d23d278
vcmi: make ConstTransitivePtr always init self.
2023-02-12 17:59:06 +03:00
SoundSSGood
7314df56ac
contitutient arts swap
2023-02-11 13:21:45 +02:00
DjWarmonger
94bc418e34
Update CRewardableConstructor.cpp
...
Fixed swapped identifiers in Limiter.
2023-02-11 08:28:29 +01:00
Dydzio
8604bde69e
Apply suggestions from code review
...
Commit code review changes
Co-authored-by: Ivan Savenko <saven.ivan@gmail.com>
2023-02-09 19:20:41 +01:00
Dydzio
7af737e9d4
Improve filling vector hardcoded feature data
2023-02-09 18:35:06 +01:00
Konstantin
286c1e522e
vcmi: modernize netpacks
2023-02-09 20:22:48 +03:00
Konstantin
e82cc56ddb
vcmi: modernize lib/spells/effects
2023-02-08 15:38:26 +03:00
Konstantin
cb3723b54c
vstd: pass separators and input by reference
...
It removes many cases of redundnant string copying
2023-02-05 18:07:56 +03:00
Dydzio
981c23cafa
Bump serialization - not sure if necessary
2023-02-05 01:01:11 +01:00
Dydzio
7095e9d8f9
Allow heroes to start with empty armies if configured properly
2023-02-05 00:36:51 +01:00
Dydzio
3f79a9806c
Allow flexible configuration - starter dwellings and max stacks count
2023-02-04 23:40:02 +01:00
Konstantin
7b8aebe4e3
vcmi: deprecate MAXED_SPELL
...
It is almost identical to SPECIAL_FIXED_VALUE_ENCHANT.
Replace its usage in JSON and inside deprecated converter
to SPECIAL_FIXED_VALUE_ENCHANT. Remove buggy string inside
getEffectLevel.
2023-02-04 16:23:03 +03:00
Ivan Savenko
58cfddccaa
Merge pull request #1546 from rilian-la-te/dead-code-removal
...
Remove SDL usage from VCMI library
2023-02-03 11:28:29 +02:00
Dydzio
28eed7047c
Hardcoded feature to allow default towns always have 2nd dwelling
2023-02-02 22:50:08 +01:00
Dydzio
4f4660e82d
Hardcoded feature to allow new heroes always have 3 stacks like in HotA
2023-02-02 22:28:14 +01:00
Konstantin
cffdabf48e
lib: replace SDL usage to Boost one
...
It is safer and header-only, and can be removed after C++23 is accepted.
There is no need for SDL in non-GUI.
2023-02-02 23:58:22 +03:00
Konstantin
70786f4963
lib: remove unused header
...
This an unused header with empty class. Just remove it.
2023-02-02 23:50:50 +03:00
Ivan Savenko
9678296875
Hero interaction is now battle action
2023-02-02 13:43:19 +02:00
Ivan Savenko
b1c67fbf47
Better formatting for enum
2023-02-02 13:25:55 +02:00
Ivan Savenko
f1ea88ae9a
Merge pull request #1505 from dydzio0614/cheats-improvements
...
Cheats improvements
2023-02-02 12:21:19 +02:00
Ivan Savenko
f4bbcd0ed4
Merge pull request #1539 from dydzio0614/fixScriptingCompilation
...
Fix scripting compilation
2023-02-02 12:21:11 +02:00
Ivan Savenko
34772ef830
Fixed includes
2023-02-01 21:45:06 +02:00
Dydzio
19925c2c25
VcmiLua builds properly now
2023-02-01 20:25:09 +01:00
Ivan Savenko
0ba74fea73
Merge pull request #1515 from IvanSavenko/time_based_animations
...
Time based animations
2023-02-01 12:25:54 +02:00
Ivan Savenko
885fad87f9
Merge pull request #1527 from IvanSavenko/sdl_abstraction_iteration
...
SDL abstraction layer iteration
2023-02-01 12:25:41 +02:00
Ivan Savenko
c3a2dee45a
Code cleanup
2023-01-31 15:00:46 +02:00
Ivan Savenko
c5508d33fc
Merge pull request #1514 from IvanSavenko/rewardable_fixes
...
Minor fixes to rewardable objects
2023-01-31 12:47:24 +02:00
Ivan Savenko
57df0a6995
Fix crash on hovering prison
2023-01-30 19:00:51 +02:00
Ivan Savenko
42df5626d9
Added Color class to replace SDL_Color
2023-01-30 00:12:43 +02:00
Andrey Filipenkov
07dc2e1c48
Merge pull request #1496 from kambala-decapitator/resurrect-message
...
show resurrect message in the battle log
2023-01-29 22:18:32 +03:00
Ivan Savenko
57ee9a9bf3
Merge vcmi/beta into vcmi/develop
2023-01-29 18:21:55 +02:00
Ivan Savenko
a853045509
Removed unused value from creature config
2023-01-28 13:56:51 +02:00
Ivan Savenko
d34efaeb81
All battle effects now use time-based timings
2023-01-28 13:19:35 +02:00
Ivan Savenko
a2cd17197e
Fix Campfire Gold reward amount. Now always one of 400/500/600
2023-01-28 13:12:03 +02:00
Ivan Savenko
d82822d37a
Fix reset of rewardable objects with reset period of 1 day
2023-01-28 13:12:03 +02:00
Ivan Savenko
4d1c338503
Merge pull request #1498 from rilian-la-te/conan-v2
...
Conan as MXE replacement
2023-01-27 23:14:37 +02:00
Ivan Savenko
e87adf334d
Fix loading of vcmi json maps
2023-01-26 23:32:56 +02:00
Ivan Savenko
8b2d336562
Fix initialization of visitDir in templates
2023-01-26 23:32:56 +02:00
Ivan Savenko
a3846f1b31
Fix incorrect identifiers format
2023-01-26 23:32:56 +02:00
Ivan Savenko
eebc6fd625
Map object use format mod:object (or mod:object.subobject)
2023-01-26 23:32:56 +02:00
Ivan Savenko
7b82387a49
Dwellings & Banks will register custom names for their objects
2023-01-26 23:32:56 +02:00
Ivan Savenko
bc27faea57
All objects will register single name per object type
2023-01-26 23:32:55 +02:00
Ivan Savenko
50e8a62178
Remove access to creature dwellings names via CGeneralTextHandler
2023-01-26 23:27:26 +02:00
Ivan Savenko
f71cbc5d9b
Fixed loading of object names
2023-01-26 23:27:26 +02:00
Ivan Savenko
b13637cdd5
Fix regressions in RMG & map editor
2023-01-26 23:27:26 +02:00
Ivan Savenko
6f324216db
Bugfixing
2023-01-26 23:27:24 +02:00
Ivan Savenko
6c472339ce
Refactoring of ObjectClassesHandler
2023-01-26 23:26:49 +02:00
Ivan Savenko
c5f72ccdc7
Names for object supertypes are passed through translator
2023-01-26 23:19:53 +02:00
Konstantin
f0cb8b63c7
lib/CGameInterface.cpp: add MinGW workaround
...
MinGW returns all dynamic library functions as FARPROC, which need
to be cast to actual signatures, and this casts emits
-Wcast-function-type.
So, silence it for GetProcAddress.
2023-01-26 23:49:00 +03:00
Konstantin
cf56f7ccce
vcmi: remove unused-but-set-variables
2023-01-26 23:49:00 +03:00
DjWarmonger
25ef065dbe
Merge pull request #1486 from IvanSavenko/configurable_rewardables
...
Well, it works for my brand new objects with arbitrary bonus, so likely will work with everything else.
2023-01-26 17:01:01 +01:00
Andrey Filipenkov
0bbf70f30a
show resurrect message in the battle log
2023-01-25 18:13:06 +03:00
Andrey Filipenkov
785d565f31
Merge pull request #1483 from kambala-decapitator/statue-of-legion-bonus
...
fix displaying growth bonus from Statue of Legion
2023-01-25 17:45:30 +03:00
Dydzio
3d9f04c6e0
Minor cheats code changes
2023-01-25 12:10:48 +01:00
Ivan Savenko
4a8d1d9b5e
Serialization version bump
2023-01-25 12:36:03 +02:00
Ivan Savenko
19cfb79c59
Removed H3 language detection - should be set by Launcher
2023-01-25 12:36:03 +02:00
Ivan Savenko
35775b90f8
Moved bonus names to translation
2023-01-25 12:36:02 +02:00
Ivan Savenko
39131eba3e
Added translation support for mods. VCMI translations are now in mod.
...
Moved existing (English) translation to vcmi mod
Added translations for:
- German
- Polish
- Ukrainian
2023-01-25 12:33:54 +02:00
Konstantin
f93c9277c6
lib/filesystem: rename CreateFile to createFile
...
In MinGW, there is a define which replaces all CreateFile to
CreateFileA or CreateFileW and breaks compilation. Fix it.
2023-01-25 12:13:34 +03:00
Andrii Danylchenko
94f483c1e7
Merge pull request #1481 from kambala-decapitator/owner-tooltip
...
display owner of ownable objects in tooltip
2023-01-25 10:38:13 +02:00
Andrii Danylchenko
4cfc93d2da
Somehow it works but JNI signatures were incorrect
2023-01-25 08:59:59 +02:00
Ivan Savenko
7a9e5e4e30
Cleanup & consistency changes
2023-01-25 00:38:50 +02:00
Ivan Savenko
af5ff0c9df
Remove no longer used code
2023-01-24 23:34:02 +02:00
Ivan Savenko
44bdd2cbf3
Implemented selectable messages for visited & empty state
2023-01-24 23:31:07 +02:00
Andrey Filipenkov
90cb0cdc9b
fix displaying growth bonus from Statue of Legion
2023-01-24 18:35:30 +03:00
Andrey Filipenkov
5b10903116
reorder growth bonuses display to match oh3
2023-01-24 18:35:07 +03:00
Ivan Savenko
ca6947b2cc
Fixed Tree of Knowledge component
2023-01-24 17:35:06 +02:00
Ivan Savenko
3ba8d708f8
Partially fixed bonuses descriptions (affected by separate old bug)
2023-01-24 17:34:48 +02:00
Ivan Savenko
c793527b44
Added "days since start of the game" limiter. Fixes Water Wheel
2023-01-24 16:54:14 +02:00
Ivan Savenko
ca521fb129
Removed incomplete functionality from rewardable object
2023-01-24 16:29:05 +02:00
Ivan Savenko
c9dcb921ab
Implemented "changeCreatures" option for Stables
2023-01-24 16:18:59 +02:00
Ivan Savenko
ecbcafefbc
It is now possible to configure what exactly will be reset in object
2023-01-24 13:54:03 +02:00
Ivan Savenko
0c70822928
Implemented logical expression (allOf/anyOf/noneOf) for limiters
2023-01-23 23:54:54 +02:00
Ivan Savenko
f8f6df02f3
Removed remaining hardcoded objects
2023-01-23 15:27:27 +02:00
Ivan Savenko
62e127fb59
Bonusing objects are now configured in json
2023-01-23 01:05:10 +02:00
Ivan Savenko
bfd6c40f25
Moved all once-per-hero visitable (sans Tree) to config
2023-01-22 22:58:53 +02:00
Ivan Savenko
a6bda58276
Moved CGOnceVisitable to config
2023-01-22 20:26:19 +02:00
Ivan Savenko
fcb455b7f4
Fixed remaining bugs with converted objects
2023-01-22 18:37:26 +02:00
Ivan Savenko
695a94c3c8
Fixed all major bugs with newly converted objects
2023-01-22 18:17:26 +02:00
Ivan Savenko
9f3f9cc563
Added some missing functionality for configurable object
2023-01-22 02:08:58 +02:00
Ivan Savenko
83bb70cd8a
All CGPickable objects are now fully configurable
2023-01-21 16:45:04 +02:00
Ivan Savenko
8064bc5465
Fix description of artifacts
2023-01-21 15:58:28 +02:00
Ivan Savenko
5fa69dcf2f
Fix description of skill-based bonuses
2023-01-21 15:58:12 +02:00
Ivan Savenko
9565cae3cb
Fix potential assertion failure on map load
2023-01-21 15:57:25 +02:00
Dydzio
685d63603d
Merge branch 'develop' into creature-numeric-quantities
2023-01-21 12:57:29 +01:00
Andrey Filipenkov
2a43b7cfbc
display owner of ownable objects in tooltip
...
also displays owner of towns (deviation from oh3)
2023-01-21 14:25:43 +03:00
Ivan Savenko
6e2d09d605
Cleanup
2023-01-20 16:11:43 +02:00
Ivan Savenko
46931a0ecf
Bugfixing
2023-01-20 16:11:43 +02:00
Ivan Savenko
ee7a573cb8
Refactoring of SDL API usage:
...
- Rect no longer inherits from SDL_Rect
- renamed vcmi functions that used SDL naming format
- moved all functions in SDL_Extensions file into CSDL_Ext namespace
- SDL_Rect is now used only by SDL_Extensions, all other code uses Rect
2023-01-20 16:11:43 +02:00
Ivan Savenko
9a30484183
Point and Rect now reside in library
2023-01-20 16:11:43 +02:00
Ivan Savenko
e0842d416c
Fix identifier format
2023-01-20 15:18:36 +02:00
Ivan Savenko
27442e2950
Remove unused code
2023-01-20 15:18:36 +02:00
Ivan Savenko
5a9ffb8e95
Serialization version bump
2023-01-20 15:18:36 +02:00
Ivan Savenko
47c1803c42
Finalization of refactoring:
...
- Entity interface now has getNameTranslated & getNameTextID methods
- Entity interface no longer has getName method
- removed (most) usages of normalizeIndentifier workaround method
- all moddable objects have identifier in form of mod:name
- all moddable object register strings in form of mod.type.name
2023-01-20 15:18:36 +02:00
Ivan Savenko
05a1d7c6e3
All text for factions/towns/building are passed through translator
2023-01-20 15:18:36 +02:00
Ivan Savenko
388ed88b5d
All artifact strings now pass through translator
2023-01-20 15:18:36 +02:00
Ivan Savenko
d2b837b116
All creature-related texts go through translator
2023-01-20 15:18:36 +02:00
Ivan Savenko
fa6f7513e8
All heroes-related strings are passed through translator
2023-01-20 15:18:36 +02:00
Ivan Savenko
e22f6283c2
Secondary skills strings are now passed through translator
2023-01-20 15:18:36 +02:00
Ivan Savenko
5da407e822
All spell texts are now passed through translator
2023-01-20 15:18:36 +02:00
Ivan Savenko
30d7bdc884
Moved tower damage computation to town instance
2023-01-20 15:18:10 +02:00
Ivan Savenko
b7c27e7d47
ios compilation fix
2023-01-20 15:18:10 +02:00
Ivan Savenko
789f4d6bc8
Formatting
2023-01-20 15:18:10 +02:00
Ivan Savenko
33b5bfbbd2
Fixed secondary skill specialties
2023-01-20 15:18:10 +02:00
Ivan Savenko
4015d3d8bd
Fixed creature specialties
2023-01-20 15:18:10 +02:00
Ivan Savenko
4a09dc0757
Fixed Adela's Bless specialty
2023-01-20 15:18:10 +02:00
Ivan Savenko
b86969909a
Fixes compilation due to changes in callback interface
2023-01-20 15:18:10 +02:00
Ivan Savenko
1418ce4678
Refactoring & fixes of damage calculation
2023-01-20 15:18:10 +02:00
Ivan Savenko
d0c292e2fd
Fix order of map indexes
2023-01-20 15:15:57 +02:00
Ivan Savenko
8cfde8fc5e
Fixed selection of dragon's breath attack against double-wide units
2023-01-20 15:15:44 +02:00
Ivan Savenko
b8c5a32b9b
Fix attack targeting selection for double-wide units
2023-01-20 15:15:44 +02:00
krs
fd90653e25
Bug in moving maps. .h3c vs .H3C
2023-01-20 15:14:52 +02:00
Dydzio
54d62a5eb9
Fix roads and rivers saving in map editor
2023-01-19 23:04:12 +04:00
Ivan Savenko
e53e515aa7
Fix msvc compile
2023-01-18 01:04:50 +02:00
Ivan Savenko
17fc9d8d8f
Merge with vcmi/develop
2023-01-18 01:04:34 +02:00
Ivan Savenko
c400416058
Merge pull request #1409 from IvanSavenko/translate_terrain
...
Refactoring of terrain handlers
2023-01-18 00:12:31 +02:00
Dydzio
0e72ee9217
No longer relevant TODO removed
2023-01-18 02:05:30 +04:00
Dydzio
72eb794397
Fix space to tab, update description
2023-01-18 02:05:30 +04:00
Dydzio
f64d6bc1bc
Add support for overwriting default range via additional info
2023-01-18 02:05:30 +04:00
Dydzio
01ce01d8f9
Add proper handling for 2-hex units + extract range calculation method
2023-01-18 02:05:30 +04:00
Dydzio
cf1674d0ca
Introduce new bonus for limiting range
2023-01-18 02:05:30 +04:00
Dydzio
c22ab5ec9e
Initial version of limiting shooters range feature
2023-01-18 02:05:30 +04:00
Nordsoft91
672bcb488b
Merge pull request #1381 from dydzio0614/client-commands-improvements
...
Client commands code improvements + ingame support
2023-01-18 02:04:38 +04:00
Ivan Savenko
05ac217b0f
Merge with vcmi/develop
2023-01-17 23:02:25 +02:00
Ivan Savenko
e436b4425f
Serialization version bump
2023-01-17 22:59:32 +02:00
Ivan Savenko
633b9ef3be
Native terrain is now required for faction, opt-out with value "none"
2023-01-17 22:59:14 +02:00
Ivan Savenko
707de75ac0
Cleared up formatting
2023-01-17 22:58:22 +02:00
Dydzio
e593b61201
Merge branch 'develop' into client-commands-improvements
2023-01-16 01:13:06 +01:00
Dydzio
da39eb789f
Fix indent
2023-01-16 00:37:18 +01:00
Ivan Savenko
96141f010b
Merge remote-tracking branch 'vcmi/develop' into translate_launcher
2023-01-15 23:55:49 +02:00
Ivan Savenko
0a858d9a7c
Upgrade msvc to include enet and qt translator ( #1436 )
...
- Updated MSVC prebuilt package
- Fixed build warnings
2023-01-15 23:55:24 +02:00
Ivan Savenko
246281e62a
Merged vcmi/beta with vcmi/develop
2023-01-15 17:46:42 +02:00
Ivan Savenko
bec894c348
Implemented automatic detection of H3 files language/encoding
2023-01-15 17:32:39 +02:00
Ivan Savenko
6ea7add4bb
Merge pull request #1394 from SoundSSGood/art-move-fix
...
Artifact movement refactoring
2023-01-15 17:29:36 +02:00
Andrey Filipenkov
2f14914120
fix Boost deprecation warnings
...
warnings introduced in v1.81
# Conflicts:
# mapeditor/resourceExtractor/ResourceConverter.cpp
2023-01-15 17:28:09 +02:00
Dydzio
804b164c75
Changed getQuantityRangeStringForId handling
2023-01-15 16:19:55 +01:00
Andrii Danylchenko
9f0eb055f9
Merge pull request #1426 from vcmi/android-upgrade-sdl
...
Update android JNI bindings
2023-01-15 10:36:32 +02:00
Dydzio
b5a1b178d9
Explicitly call reset on shared_ptr for potential readability boost
2023-01-15 01:18:35 +01:00
Ivan Savenko
a46ab835ce
Applied review suggestions
2023-01-14 23:01:33 +02:00
Dydzio
8248feebf7
Implement numeric creature descriptions with config toggle on/off
2023-01-14 15:55:08 +01:00
Ivan Savenko
ccc6ebee0d
Cleared up gate blocking, Force Field can now block gates
2023-01-13 15:44:42 +02:00
Ivan Savenko
526de47ca4
Removed 0.98 compatibility
2023-01-13 13:00:07 +02:00
Ivan Savenko
3be3c871fb
Destroyed walls will now remove wall penalty
2023-01-13 01:59:09 +02:00
Ivan Savenko
1d7f004658
Implemented reinforced walls in towns with Castle
2023-01-13 01:09:24 +02:00
Ivan Savenko
500cf7f15d
EWallPart & EWallState are now enum class
2023-01-13 00:35:58 +02:00
Ivan Savenko
dd3adb7e16
Arrow towers damage algorithm should now match H3
2023-01-12 23:52:03 +02:00
Dydzio
aac515f64e
Merge 'develop' branch
2023-01-11 16:24:53 +01:00
Ivan Savenko
192e856797
merge with vcmi/develop
2023-01-11 16:47:53 +02:00
Ivan Savenko
e48bd39b9c
Moved road & river handlers into a separate file
2023-01-11 15:17:24 +02:00
Ivan Savenko
5e72ef76cf
Fix quest texts accessing
2023-01-11 15:10:44 +02:00
Ivan Savenko
8b6f6f9b93
Fix msvc compile
2023-01-11 13:59:43 +02:00
Ivan Savenko
c6f089c6b1
Removed outdated comment
2023-01-11 13:59:33 +02:00
SoundSSGood
a0568823a9
swap contitutient
2023-01-11 13:17:33 +02:00
Ivan Savenko
1e37e66e6c
Replaced Terrain::BORDER and WRONG with NONE
2023-01-10 20:09:09 +02:00
Ivan Savenko
1b25043dab
Terrain identifiers will also have mod:name format
2023-01-10 20:08:37 +02:00
Ivan Savenko
1caec0a8cb
Removed default native terrains - breaks neutral faction
2023-01-10 20:08:07 +02:00
Ivan Savenko
8c2b1d74be
Removed unused code
2023-01-10 20:07:22 +02:00
Ivan Savenko
3fd9a14651
Fix #1401 - Restored accessing creature names via GeneralTextHandler
2023-01-10 12:26:20 +02:00
Ivan Savenko
c455986a55
Fix regressions in RMG & map editor
2023-01-10 01:05:28 +02:00
Ivan Savenko
4f3ea0d1d9
Renamed Terrain.h/cpp -> TerrainHandler.h/cpp
2023-01-10 00:01:35 +02:00
Ivan Savenko
f51b3bca57
use JsonKey or NameTranslated instead of ambiguos Name
2023-01-10 00:01:35 +02:00
Ivan Savenko
009705e794
Names for terrains now pass through translator
2023-01-10 00:01:35 +02:00
Ivan Savenko
7c7ae26e67
Map/Road/River identifiers are now private members
2023-01-10 00:01:35 +02:00
Ivan Savenko
f3985d205b
Added horseSoundPenalty for terrains (for movement outside of roads)
2023-01-10 00:01:35 +02:00
Ivan Savenko
64885bdf6b
Better names for terrain parameters. Support for new movement sounds.
2023-01-10 00:01:35 +02:00
Ivan Savenko
4e4dae854f
Final stabilization changes
2023-01-10 00:01:35 +02:00
Ivan Savenko
99745b5c3c
Fix rivers & roads loading
2023-01-10 00:01:35 +02:00
Ivan Savenko
2de3178158
Fixed game startup
2023-01-10 00:01:35 +02:00
Ivan Savenko
e1799379dd
Terrain/Road/River handler are now in compileable state
2023-01-10 00:01:35 +02:00
Ivan Savenko
1468f6aded
Converted terrainTypeHandler into proper handler class
2023-01-10 00:01:35 +02:00
Ivan Savenko
01811317f9
Remove assert which may not always be true
2023-01-09 23:22:59 +02:00
Ivan Savenko
1fece0ce18
Merge pull request #1229 from IvanSavenko/battle_improvements
...
Battle: Fixing bugs & Implementation of missing features
2023-01-09 22:07:13 +02:00
Ivan Savenko
bde988ca43
Merge pull request #1329 from IvanSavenko/translate_game
...
Translations support - base functionality for main game texts
2023-01-09 20:33:56 +02:00
Ivan Savenko
8f42c86962
Formatting: space -> tabs
2023-01-09 18:34:37 +02:00
Ivan Savenko
84aefc3362
Changed log file format: print timestamp instead of thread ID
2023-01-09 18:34:37 +02:00
Ivan Savenko
2f5ee44cbe
Fixes patrol position initialization on H3M load
2023-01-09 18:34:13 +02:00
Ivan Savenko
7e8516f927
Changed Sirens behavior to match H3 logic
2023-01-09 13:04:56 +02:00
SoundSSGood
4005b48360
Regressions fixed
2023-01-08 23:31:12 +02:00
SoundSSGood
6b7ce798d0
artifactTransitionPos created
2023-01-08 23:24:13 +02:00
Andrey Filipenkov
48c01157e6
fix typo
2023-01-08 01:33:26 +02:00
Andrey Filipenkov
db98575d10
fix unaligned memory access (UB) on Clang/GCC/MSVC
...
sample UBSAN report:
client/gui/CAnimation.cpp:329:24: runtime error: load of misaligned address 0x62d0004b094f for type 'const ui32' (aka 'const unsigned int'), which requires 4 byte alignment
2023-01-08 01:33:26 +02:00
Ivan Savenko
481f756b51
Fixes #1304 - correct battle log message on spellcast without kills
2023-01-07 19:52:57 +02:00
Andrii Danylchenko
9f9798d3a4
Update android JNI bindings
2023-01-07 09:26:01 +02:00
Dydzio
622e012fcf
Allow ingame console to use clientside commands and print output
2023-01-06 21:01:54 +01:00
Dydzio
a2ce9220ed
Fix tests + scripting compilation on gcc
2023-01-05 17:42:33 +02:00
SoundSSGood
d5cef0c069
end of battle art assembling fix
2023-01-05 17:37:14 +02:00
Dydzio
3e1e41ef59
Apply suggestions from code review
...
Co-authored-by: Nordsoft91 <nordsoft@yahoo.com>
2023-01-05 17:31:30 +02:00
Dydzio
a83c7eb00f
Add configurable damage and defense parameters
2023-01-05 17:31:30 +02:00
Ivan Savenko
6b2490903d
Fix casting of massive spells by creatures
2023-01-04 21:26:13 +02:00
Ivan Savenko
e1a244beb0
Fix crash on firewall cast attempt
2023-01-04 17:38:55 +02:00
Ivan Savenko
d3ecd43aba
Merge remote-tracking branch 'vcmi/develop' into battle_improvements
2023-01-04 16:20:53 +02:00
Ivan Savenko
c479504646
Formatting cleanup
2023-01-01 22:50:38 +02:00
Ivan Savenko
d237bee927
Removed unused code
2023-01-01 21:12:47 +02:00
Ivan Savenko
7c0d5666a0
Return string by copy to fix cases when string is constructed on stack
2023-01-01 20:55:43 +02:00
Ivan Savenko
9a620a9091
Refactoring of GeneralTextHandler to reduce boilerplate code in callers
2023-01-01 15:13:02 +02:00
Ivan Savenko
01d0cd4f7a
Changed configurable UI to match text refactoring:
...
- help.txt strings are now loaded as (hover, help) pairs
- renamed string pairs from translate.json to use (hover, help) form
- interface builder will always load label texts via unified ID
- interface builder way of loading buttons text has been changed:
- - field has been renamed "zelp" -> "help" for consistency
- - "help" field now only accepts string or object json type
2023-01-01 14:56:45 +02:00
Ivan Savenko
84493e1bff
Translate received string identifier before storing
2023-01-01 14:56:45 +02:00
Ivan Savenko
10541855d9
Don't load empty rumor strings
2023-01-01 14:56:45 +02:00
Ivan Savenko
a499390b9c
Restored text export command
2023-01-01 14:56:45 +02:00
Ivan Savenko
1979b3e97f
Fixes typo
2023-01-01 14:56:45 +02:00
Ivan Savenko
e9e2ebb1c9
Cleanup
2023-01-01 14:56:45 +02:00
Ivan Savenko
cb4f5edae9
All Heroes 3 texts are now passed through translator
2023-01-01 14:56:45 +02:00
Ivan Savenko
85d7b470d4
Access to quests texts is now processed via translator
2023-01-01 14:56:45 +02:00
Ivan Savenko
bdb8e0ee5c
Introduced string identifiers for H3 texts, still WIP
2023-01-01 14:56:44 +02:00
Dydzio
7e321b2405
Fix missing formatting
2022-12-30 16:14:04 +01:00
Dydzio
306348c301
Tweak condition to remove hardcoded terrain ID
2022-12-30 16:04:19 +01:00
Dydzio
2c09bfb22a
Fix code formatting
2022-12-30 15:51:13 +01:00
Dydzio
c40dcec7cd
Improve terrain check condition
2022-12-30 15:46:10 +01:00
Dydzio
1967416eb2
Remove no longer needed code
2022-12-30 15:26:27 +01:00
M
23de4a188b
Change cartographer tile reveal logic to match H3
2022-12-30 15:09:09 +01:00
Ivan Savenko
0c78e47dce
Fixed serialization due to changed lsit of bonuses
2022-12-30 11:55:40 +02:00
Ivan Savenko
5d80457eda
Merge with vcmi/develop branch
2022-12-30 00:52:23 +02:00
Ivan Savenko
b8b1e07621
Fix serialization
2022-12-30 00:36:10 +02:00
Ivan Savenko
486c9612b8
Fix regression from warnings_fix branch
2022-12-30 00:23:34 +02:00
Ivan Savenko
b89e8a9dfe
Fix serialization
2022-12-29 23:37:46 +02:00
Ivan Savenko
b275d9de72
merge beta branch into develop
2022-12-29 22:08:53 +02:00
Ivan Savenko
7a35bcc812
Merge pull request #1221 from IvanSavenko/warnings_fix
...
Fix remaining compiler warnings
2022-12-29 21:51:55 +02:00
Ivan Savenko
e19dc41295
Support Polish version of H3 data files
2022-12-29 21:50:04 +02:00
Andrey Filipenkov
b030a88ca5
fix gold check for School of War
2022-12-29 01:45:51 +04:00
Ivan Savenko
5f4a998435
editorPath -> mapEditorPath
2022-12-28 17:59:16 +02:00
Andrii Danylchenko
a954cc08fb
Made intermediate class to hide some implementation details from header.
2022-12-27 12:55:31 +02:00
Andrii Danylchenko
c271f9187f
Connection buffered read cpack.
2022-12-26 21:49:53 +02:00
Andrii Danylchenko
cb13064a62
Socket buffered write. Write full cpack at once
2022-12-26 20:17:53 +02:00
Ivan Savenko
78ed2f154b
Revert uninteded change
2022-12-26 14:48:13 +02:00
Ivan Savenko
bb65246aa3
Merge remote-tracking branch 'vcmi/develop' into battle_improvements
2022-12-26 01:15:44 +02:00
Ivan Savenko
e4e5278f60
Merge with vcmi/develop
2022-12-25 23:10:52 +02:00
Ivan Savenko
b38752bde1
Editor can be started from Launcher (disabled for ios)
2022-12-25 23:08:39 +02:00
Ivan Savenko
7e3cd7db51
Fix for missing Death Blow sound
2022-12-25 20:11:22 +02:00
Ivan Savenko
063b8732ff
Save compatibility with main branch
2022-12-25 18:07:08 +02:00
Ivan Savenko
a0ab760249
Removed debug code
2022-12-25 16:53:40 +02:00
Ivan Savenko
94597e7af6
Remove deprecated usage of sprintf
2022-12-25 14:04:12 +02:00
Ivan Savenko
405b2976d5
Renamed getUpgradeInfo -> fillUpgradeInfo
2022-12-25 14:03:43 +02:00
Nordsoft91
785787e454
Merge branch 'develop' into interface-builder
2022-12-24 21:56:29 +04:00
Ivan Savenko
325c29da0d
Merge remote-tracking branch 'vcmi/develop' into battle_improvements
2022-12-23 14:51:34 +02:00
Ivan Savenko
eb20a4b208
Merge remote-tracking branch 'vcmi/develop' into warnings_fix
2022-12-23 14:40:45 +02:00
Ivan Savenko
f073c676f9
Merge 1.1 release into develop
2022-12-23 14:17:18 +02:00
Ivan Savenko
9248e06ae0
Demon summon is now a spell. DEMON_SUMMONING bonus has been removed
2022-12-22 23:11:55 +02:00
Ivan Savenko
b2279484fc
Merge pull request #1227 from Shatur/opendingux
...
Port to OpenDingux handhelds
2022-12-22 16:56:55 +02:00
Ivan Savenko
bab5922951
Spells can now define color muxer effect (e.g. Bloodlust & Petrify)
2022-12-22 00:25:35 +02:00
Ivan Savenko
41b87088d5
Color muxer effects can now be (partially) configured by user.
...
TODO: move color muxer effects from spells into spell config
2022-12-21 23:29:56 +02:00
nordsoft
7e7071fc95
Merge remote-tracking branch 'upstream/develop' into interface-builder
2022-12-22 01:24:29 +04:00
nordsoft
34b81e8838
Revert VCMIDirs to fix the build
2022-12-21 23:08:53 +04:00
Ivan Savenko
26985600b2
Fixed several more cases of incorrect scope for identifiers resolving
2022-12-21 23:02:19 +04:00
Ivan Savenko
23cb47b457
Fixed several scenarios with incorrect scope for requesting identifiers
2022-12-21 23:02:19 +04:00
Ivan Savenko
b423b3fa6b
Fix dragon breath & fire shield
2022-12-21 18:04:54 +02:00
Ivan Savenko
5f8cfadc4d
Better formatting for not found terrains ID's
2022-12-20 01:55:59 +04:00
Ivan Savenko
3cf1e3b4d4
Restored neutral faction ID, changed warnings related to H3 ID's
2022-12-20 01:55:59 +04:00
Ivan Savenko
b13723305d
Better error reporting for usages of invalid terrain in mods
...
TODO: switch to proper mechanism via identifier requests
2022-12-20 01:55:59 +04:00
Ivan Savenko
a57eec23e6
Refactoring of setBattleCursor & fromWhichHexAttack methods
2022-12-19 01:12:26 +02:00
Ivan Savenko
53f6b7bd32
Fix Ice Ring target selection
2022-12-18 20:23:19 +02:00
Ivan Savenko
e9e549148d
Implemented teleportation animation effect
2022-12-18 18:26:43 +02:00
Ivan Savenko
a6622b5896
Fixed clone damage
2022-12-18 17:38:14 +02:00
Ivan Savenko
526a6e4fe7
Fix incorrect assertions
2022-12-18 14:33:59 +02:00
Andrii Danylchenko
cf97bf2cfd
Remove unused code
2022-12-18 13:11:02 +02:00
Andrii Danylchenko
1555c51313
fix assertion
2022-12-18 12:29:03 +02:00
Ivan Savenko
45aa841fb6
Stack reversing logic now matches H3
2022-12-18 11:42:02 +02:00
Ivan Savenko
52fc5b3c39
Exploded mines now send ACTIVATE flag to client to play effect
2022-12-17 19:37:00 +02:00
Ivan Savenko
deffba01b9
All battle effects are now fully client sided
2022-12-17 17:35:15 +02:00
nordsoft
b1f2c7aed4
Team alignments implemented
2022-12-17 08:19:16 +04:00
nordsoft
d93e844609
Use roads names instead of their filenames
2022-12-17 04:54:01 +04:00
nordsoft
f27a40dd34
Support roads and teams customization in engine
2022-12-17 03:52:40 +04:00
nordsoft
bcf95c32e9
Merge branch 'fix-cmake' into interface-builder
2022-12-17 03:09:41 +04:00
Ivan Savenko
733f21f8dc
Petrify will freeze stack animations
2022-12-16 18:34:35 +02:00
Ivan Savenko
291bb9b204
Expanded cursors enum to include all possible values
2022-12-16 11:22:58 +02:00
Andrii Danylchenko
8c07ddbae0
Merge pull request #1204 from IvanSavenko/single_process_app_upgrade
...
[1.2] Single process app support for platforms other than ios
2022-12-15 12:22:24 +02:00
nordsoft
2fe951f819
Merge remote-tracking branch 'upstream/develop' into interface-builder
...
# Conflicts:
# client/lobby/RandomMapTab.cpp
2022-12-15 04:47:11 +04:00
nordsoft
fc7f1dbc5a
Fix template selection
2022-12-14 05:23:21 +04:00
nordsoft
53b2f68560
Serialize template
2022-12-14 04:37:11 +04:00
Ivan Savenko
e791323502
Implemented placement sound for obstacles
2022-12-13 21:31:49 +02:00
Ivan Savenko
60a00b450e
Multiple fixes & improvements to animation ordering
2022-12-13 21:31:49 +02:00
Ivan Savenko
0020d76d1d
Introduced animation phases for beter ordering of visuals in battles
2022-12-13 21:31:49 +02:00
Ivan Savenko
c79634b6a7
Moved all animation ordering logic to callers
...
Previously, CBattleAnimation & inheritors were controlling animation
ordering - e.g. which animations should play after which.
Now, this is controlled by caller, e.g. BattleInterface & its
controllers.
H3 animations are fairly linear and can be split in stages which are
already somewhat implemented via waitForAnims
2022-12-13 21:31:49 +02:00
Ivan Savenko
b3deea24e0
Earthquake spell: do not target already destroyed sections
2022-12-13 21:31:49 +02:00
Ivan Savenko
155f776ae8
Merge pull request #1172 from IvanSavenko/battleint_refactor
...
[1.2] Refactoring of BattleInterface class
2022-12-13 21:31:18 +02:00
Hennadii Chernyshchyk
de33eb44f9
Port to OpenDingux handhelds
2022-12-13 03:55:54 +02:00
nordsoft
b3d60ec418
Add new map sizes
2022-12-12 04:46:42 +04:00
Ivan Savenko
1558c28c0a
Fix obstacle rendering
2022-12-12 00:05:00 +02:00
Ivan Savenko
ac839ad26a
Changes to rest of the code according to review:
...
- renamed status bar method clearMatching -> clearIfMatching
- renamed class ColorShifterAddMul -> ColorShifterMultiplyAndAdd
- fixed missing return from function
- fixed potential access to deleted object
2022-12-11 23:43:43 +02:00
Andrii Danylchenko
0016b77192
Merge pull request #1218 from IvanSavenko/pathfinder_fix
...
[1.1] Do not allow attacking from inaccessible tiles
2022-12-10 15:19:55 +02:00
Ivan Savenko
25bceda4ea
Added convertToVisitablePos/convertFromVisitablePos to CGHeroInstance
...
This method replaces old convertPosition, but with more clear names and
without hardcoded magic constants.
2022-12-09 14:42:47 +02:00
Ivan Savenko
db2a40600d
Fixed some of the warnings detected by CI run
2022-12-08 23:20:42 +02:00
Ivan Savenko
48ec21f648
Do not allow attacking from inaccessible tiles
2022-12-08 16:14:33 +02:00
krs
ed70c69a2b
extractToFolder fix with entry.offset is set to 0
2022-12-08 02:52:30 +04:00
krs
35db24a443
Reverted extractToFolder() for texts, to old stand alone version.
2022-12-08 02:52:30 +04:00
Ivan Savenko
facf77b3ae
vstd::unique -> std::unique
2022-12-07 23:36:20 +02:00
Ivan Savenko
d85ee019ec
Removed CGHeroInstance::convertPosition method
2022-12-07 22:51:32 +02:00
Ivan Savenko
49cbd5adc9
CGHeroInstance::convertPosition is no longer static method
2022-12-07 22:34:08 +02:00
Ivan Savenko
908e6892f3
Removed CGHeroInstance::getPosition pseudo-override
...
Now access to hero visible position is always done via visitablePos
2022-12-07 22:10:08 +02:00
Ivan Savenko
2855606a88
Enabled & fixed -Woverloaded-virtual warning from gcc/cland
...
- fixed almost all instances of overloaded-virtual warning
- cleared up inheritance & method overrides in code affected by warning
2022-12-07 21:50:45 +02:00
Ivan Savenko
65802d958b
Integrated valid fixes from PR #1143
2022-12-07 18:13:54 +02:00
Ivan Savenko
fb6b3c31e8
Renamed UNUSED -> MAYBE_UNUSED macro to match c++17 attribute name
2022-12-07 18:06:47 +02:00
Ivan Savenko
3219e322ae
Fixed all non-silenced gcc/clang warnings
2022-12-07 18:05:47 +02:00
Andrii Danylchenko
89f0cc66e8
Merge pull request #1213 from IvanSavenko/clone_fix
...
Fix crash on casting clone on modded creature
2022-12-07 17:34:52 +02:00
Ivan Savenko
2cbe6bcb47
Added common method to get names of hardcoded mod scopes
2022-12-07 15:18:19 +02:00
Andrii Danylchenko
4b19d37988
Merge pull request #1214 from IvanSavenko/enlightenment_fix
...
Library of Enlightenment fix
2022-12-07 09:14:06 +02:00
Ivan Savenko
4e1c8324fe
Removed another unused friend declaration
2022-12-06 21:11:41 +02:00
Ivan Savenko
e0c8bd5d70
Removed unused friend class reference
2022-12-06 19:38:55 +02:00
Ivan Savenko
17f9c3af23
Library of Enlightenment fix
...
Do not offer choice between multiple identical option if hero is qualified
to receive multiple of them due to diplomacy skill
2022-12-06 18:08:10 +02:00
Ivan Savenko
65f9a1ffd2
Fixes identifiers resolving for json serialization
2022-12-06 16:26:32 +02:00
nordsoft
5d1b5b6c9c
Throw an exception if empty zone is generated
2022-12-06 15:07:16 +04:00
Ivan Savenko
085abb9e32
Fix compilation on Windows
2022-12-06 12:46:10 +02:00
Ivan Savenko
09ac2421b9
Fix Windows single-app build
2022-12-06 01:53:19 +02:00
Ivan Savenko
fa23965d0b
Renamed for consistency BUILD_SINGLE_APP -> ENABLE_SINGLE_APP_BUILD
2022-12-06 00:00:56 +02:00
Ivan Savenko
5e37ad6836
Changes to single-app build
...
- client version of library is now always called vcmi, like in regular
builds (e.g. libvcmi.so)
- server version of library keeps its separate name
2022-12-05 22:57:43 +02:00
Ivan Savenko
538c6e39f9
Split VCMIDirs::developmentMode to handle data & binaries separately
2022-12-05 22:56:10 +02:00
Ivan Savenko
6463e906d5
vcmi can be compiled as single app on Linux
...
TODO: check compilation on Win/Mac using Github Actions
2022-12-05 21:36:02 +02:00
Andrii Danylchenko
34cd856f53
Merge pull request #1197 from IvanSavenko/hero_positioning_fix
...
Adjust positions of heroes in towns earlier
2022-12-05 14:47:44 +02:00
Ivan Savenko
46b8709712
Adjust positions of heroes in towns earlier
...
fixes crash due to accessing tile that is outside of map bonds
2022-12-05 13:02:55 +02:00
Andrii Danylchenko
40e55e2788
Merge pull request #1196 from IvanSavenko/hero_positioning_fix
...
Fixes incorrect positioning of heroes on spawn/release from prison
2022-12-05 10:35:24 +02:00
Ivan Savenko
2cc4f59699
Update map properly on hero position change
2022-12-04 22:03:25 +02:00
Ivan Savenko
b6b6063505
Fix positioning of heroes after release from prisons
2022-12-04 22:00:33 +02:00
Ivan Savenko
fa3a05a074
Removed hardcoded constants in hero placement code for more robust
...
solution
2022-12-04 21:23:47 +02:00
nordsoft
bbe51bfaf4
Fix hero experience deserialization
2022-12-04 16:58:46 +04:00
nordsoft
8d1024fcfc
Clear error message
2022-12-03 20:56:05 +04:00
nordsoft
2f2c980a0c
Fix crash on map destroying
2022-12-03 20:56:05 +04:00
Ivan Savenko
1248292503
Fixed access violation - do NOT return address to temporary created on
...
stack
2022-12-02 21:37:58 +02:00
Andrii Danylchenko
d9c4b28ccc
Merge pull request #1177 from IvanSavenko/fix_mod_identifiers
...
Fix mod identifiers registration & incorrect mod validation
2022-12-02 09:20:49 +02:00
Ivan Savenko
d8742dac3f
Show correct error message on attempting to cast Remove Obstacle on
...
fields with no removable obstacles
2022-12-02 00:27:48 +02:00
Ivan Savenko
495e0b3657
Merge remote-tracking branch 'vcmi/develop' into battleint_refactor
2022-12-01 23:58:01 +02:00
Ivan Savenko
5094fab4d9
Refactoring of spell animations, multiple fixes for spell visuals
2022-12-01 22:06:42 +02:00
Andrii Danylchenko
82179a9cdb
Merge pull request #1176 from IvanSavenko/tower_shooter_icons
...
Tower shooter icons fix
2022-12-01 12:30:24 +02:00
SoundSSGood
45a3064e5d
suggested changes
2022-11-30 18:28:33 +02:00
Ivan Savenko
7c410ab5ce
Fix potential crash due to iterator invalidation
2022-11-30 18:07:21 +02:00
Ivan Savenko
5cd405bce8
Fixed meta field handling in JsonUtils::inherit function, removed
...
workarounds
2022-11-30 17:38:53 +02:00
Ivan Savenko
79c96e94fa
Cleared up comments
2022-11-30 17:37:36 +02:00
nordsoft
b7cab0e01d
Merge remote-tracking branch 'upstream/develop' into battle-dialog
2022-11-30 01:03:57 +04:00
Ivan Savenko
36ae26bc37
Fixed several scenarios which could lead to json with incorrectly set
...
mod origin info, leading to non-resolving identifiers
2022-11-29 22:34:32 +02:00
SoundSSGood
3bf0cfe4fa
Merge branch 'vcmi:develop' into refactoring-art
2022-11-29 22:34:08 +02:00
Ivan Savenko
abe11aaf54
Introduced "map" scope for accessing identifier on map loading.
...
Currently it allows access to all mods, should be restricted to mods
that map depends on
2022-11-29 22:33:08 +02:00
SoundSSGood
96d8e952c4
attempt to fix the build
2022-11-29 21:45:37 +02:00
Ivan Savenko
861a6849f9
Added possibility to define per-town tower icon for battle queue in siege
2022-11-29 14:47:51 +02:00
SoundSSGood
8a6052fd54
CArtHandler refactoring
2022-11-29 02:34:04 +02:00
SoundSSGood
909dcb82fa
use ArtifactID
2022-11-29 00:32:18 +02:00
Ivan Savenko
3e58d1e3c5
Merge remote-tracking branch 'refs/remotes/vcmi/develop' into battleint_refactor
2022-11-28 16:10:13 +02:00
krs
ea2fe78776
(char*)&data[0] changed to (char*)data.data()
2022-11-27 19:35:11 +02:00
krs
9b3cab1181
IVCMIDirs::userExtractedPath() created
2022-11-27 19:35:11 +02:00
krs
6130776fe4
removed one too many implementation of extractToFolder.
...
changed parameter 2 from CFileInputStream to CInputStream
2022-11-27 19:35:11 +02:00
krs
75b4b64b6f
Final checks according to review
2022-11-27 19:35:11 +02:00
krs
31b7a81cd2
Data types in CArchiveLoader::extractToFolder() made more simple.
2022-11-27 19:35:10 +02:00
krs
d516a5f529
More changes following review.
2022-11-27 19:35:10 +02:00
krs
f0b66b6192
Animation.cpp fixes after review
2022-11-27 19:35:10 +02:00