1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-10 09:50:17 +02:00
Commit Graph

384 Commits

Author SHA1 Message Date
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