nordsoft
de159df481
Rename boats
2023-04-20 21:20:51 +04:00
nordsoft
0a28262c15
Merge remote-tracking branch 'upstream/develop' into boats
...
# Conflicts:
# AI/VCAI/Pathfinding/AINodeStorage.cpp
2023-04-19 02:22:19 +04:00
nordsoft
59a1a19d4a
Summon boat for real boats only
2023-04-18 22:21:26 +04:00
nordsoft
ed798b06da
Prepare transport enum
2023-04-18 13:04:49 +04:00
Konstantin
7a5775a9f9
vcmi: use std::optional
2023-04-17 00:43:13 +03:00
Ivan Savenko
e3ed728193
Merge pull request #1932 from rilian-la-te/proper-teleport
...
VCMI: teleport redesign
2023-04-16 22:52:01 +03:00
Ivan Savenko
3738171b21
Refactoring of H3M loader to make HotA format support easier
...
- extracted low-level reader from MapFormatH3M class
- added separate structure to define version-specific values
- cleared up some H3M format edge cases
- replaced witch hut skill vector with set
- converted several fields to enum type
2023-04-15 17:20:38 +03:00
Ivan Savenko
44b83b2e11
Merge master -> develop
2023-04-14 16:51:35 +03:00
Ivan Savenko
9d31830c74
Fix check for Demon Summon targets
2023-04-13 21:17:35 +03:00
Ivan Savenko
1fab2e2e34
Do not allow rising of corpses below alive stack
2023-04-13 19:08:08 +03:00
Konstantin P
f11fa8f0c8
Teleport: can trigger obstacles now
2023-04-13 11:24:19 +03:00
Konstantin P
384ee99834
vcmi: configurable teleport v2
...
1. Redesign wall and teleport penalty using shortest path
This will avoid OH3 exploits with teleport inside walls
2. Teleport is now configurable
2023-04-13 11:24:19 +03:00
nordsoft
5419de3468
Fix getCasterUnitId
2023-04-13 02:18:12 +04:00
Ivan Savenko
dfa2e2a349
Merge beta into develop
2023-04-11 19:37:35 +03:00
Ivan Savenko
ff66592fad
Merge pull request #1882 from rilian-la-te/native-terrain-refactor
...
Native terrain refactor
2023-04-11 02:14:37 +03:00
nordsoft
9371f013e9
Rename outer caster
2023-04-10 20:56:50 +04:00
Konstantin
fedf7d377c
vcmi: remove TFaction
...
This is a huge change and will break save compatibility
2023-04-10 19:28:16 +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
56b0e900d8
Add outer caster class
2023-04-10 05:39:25 +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
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
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
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
766fb066c6
Fix debug build
2023-04-03 15:15:51 +03:00
Konstantin
d8a237ba46
vcmi: add getTrigger method to obstacles
...
Fixes advanced remove obstacle spell
2023-03-31 01:01:26 +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
eff41f66ed
vcmi: now obstacles can have disappearing anim
...
It is a reverse version of appearingAnimation.
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
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
Ivan Savenko
b2f5042942
Merge pull request #1783 from vcmi/beta
...
Merge beta -> develop
2023-03-27 21:21:25 +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
Konstantin
e40b9c849d
vcmi: no open-code NO_APPROPRIATE_TARGET
2023-03-22 12:04:28 +03:00
Konstantin
0ffc440b53
vcmi: fix target condition regression
2023-03-21 19:19:34 +03:00
Konstantin
60b510617c
vcmi: fix target condition regression
2023-03-21 17:56:15 +03:00