9954dfb33a
CPathfinder: move flying into options and add walk on sea
2015-10-12 19:03:08 +03:00
41c4323818
CGHeroInstance: add canFly and update canWalkOnSea
...
canWalkOnSea shouldn't check for FLYING_MOVEMENT because it's two separate mechanics that apply different limitations.
2015-10-12 18:52:23 +03:00
0faedde6b9
CPathfinder: store pathfinding options in set instead of variables
...
There is plenty of variables now and in future I'm going to add more more once pathfinder become usable for all kind of things.
2015-10-12 10:29:39 +03:00
886042dc11
CPathfinder: clean calculatePaths of code unsused for pathfinding
...
Map graph initialization should be there as well because it's needed for path checking.
This change wouldn't affect anything since currently CPathfinder object created from scratch every time.
2015-10-12 08:31:35 +03:00
213d8c2258
CPathfinder: turn checkDestinationTile into function
...
This code was only kept as lamba to access guard related variables that is now gone.
2015-10-12 08:22:31 +03:00
1beacf2260
CPathfinder: move guard checks into functions
2015-10-12 08:13:10 +03:00
cd7c5acbc4
CPathfinder: move embark special case code down
...
It's not affect cost calculations any way so let it's be in same order as it's used in condition under it.
2015-10-12 07:26:13 +03:00
c6f9cd1e52
CPathfinder: move passability checks into renamed goodForLandSeaTransition
...
There no need in dedicated function for embark / disembark and other conditions belong there perfectly.
This function is going to check what movements are plain impossible so we don't have to bother check their cost.
2015-10-12 07:10:33 +03:00
ee4305cd6d
CPathfinder: move destTopVisObjID where it's belongs to
2015-10-10 19:02:21 +03:00
13c2b5e2d8
CPathfinder: separate teleporter exits and neighbour tile code
...
This way code that handle real neighbour tiles is more readable and teleport exits don't have to go via all checks they ignore anyway.
2015-10-10 17:17:41 +03:00
f15065fdc5
CPathfinder: separate neighbours code into getNeighbours
...
This is first step to make this code usable outside of calculatePaths.
2015-10-10 16:09:40 +03:00
2677d4a677
Fixed action cancel on active stack remove
2015-10-08 08:15:29 +03:00
02c15085be
Remove (aready disabled in prev. commit) active stack change in sacrifice mechanics
...
* stack removing is evil, but changing active stack by spells is more evil ...
2015-10-06 03:59:05 +03:00
f99bf099ca
Made player interface tolerant to active stack removal.
2015-10-06 03:46:35 +03:00
d042b08682
Fix the SACRIFICE fix regression
...
(crach if stack die on counter attack)
2015-10-06 02:04:25 +03:00
4e60b4cf53
Fixed 0002280
2015-10-06 01:26:50 +03:00
f1d9e15783
[Tweak] Magic values--
2015-10-06 00:33:46 +03:00
a112c2f7c8
Made Disrupting Ray effect permanent.
2015-10-06 00:26:04 +03:00
d1ec538d72
Fix server crash releated to active stack remove.
2015-10-05 21:09:00 +03:00
6cf220b882
Partial fix for 2272, there are more active stack sacrifice problems.
2015-10-05 20:33:05 +03:00
fa06e05487
Merge branch 'develop' into SpellsRefactoring7
2015-10-05 00:45:57 +03:00
abe02247b5
Fixed bank randomization.
2015-10-02 17:28:33 +02:00
2733927527
Version bump.
2015-10-01 17:22:07 +02:00
d6f6e9dc9e
0.98d release
2015-10-01 11:06:38 +02:00
b07d272c2a
Added new BattleSpellCastParameters support to SACRIFICE spell.
2015-10-01 02:36:00 +03:00
939a9180e2
Added new BattleSpellCastParameters support to TELEPORT spell.
2015-09-30 22:38:50 +03:00
57e5b768e8
Allow multiple destinations in BattleSpellCastParameters
2015-09-30 00:31:50 +03:00
a06e34cf61
Cleanup
2015-09-29 19:14:24 +03:00
1e2e40b9c0
Tweak bonus descriptions, fixes mantiss 2261
2015-09-29 18:11:43 +03:00
70d9be8447
Use ISpellCaster in battle callback
2015-09-29 17:26:52 +03:00
75c2566410
"const" tweak
2015-09-29 17:26:51 +03:00
36e154d9b9
Use ISpellCaster in getAffectedStacks
2015-09-29 17:26:50 +03:00
947f6089d5
Use ISpellCaster in isImmuneByStack
2015-09-29 17:26:49 +03:00
a4d4851d80
Fix typo: casted->cast
2015-09-29 17:26:48 +03:00
d9cbe487c7
remove useless function CSpell::getTargetInfo
2015-09-29 17:26:47 +03:00
72587a8299
Removed hardcoded check for ANIMATE_DEAD absolute imminity - there is json configuration for that
2015-09-29 17:26:46 +03:00
5f41ec912f
fix sphereOfPermanence
2015-09-29 17:26:45 +03:00
3d7435c520
Introduced absolute specific spell immunity.
2015-09-29 17:26:44 +03:00
253b850ac3
Partial fix for 1791
2015-09-29 17:26:43 +03:00
a44c606277
Use callback methods
2015-09-29 17:26:42 +03:00
660203b436
Tweak BattleSpellCastParameters
2015-09-29 17:26:41 +03:00
2b434111bf
More hero|creature casting unification
2015-09-29 17:26:40 +03:00
e454649886
Use BattleSpellCastParameters for spell parameters override
2015-09-29 17:26:39 +03:00
10318a3da3
Intoduce PASSIVE_CASTING mode for opening battle spells
...
* now at least one "caster" object is present
2015-09-29 17:26:39 +03:00
6010bbe7ba
More correct usage of battleGetFightingHero
...
* this should fix "FIXME: battleGetFightingHero wrong argument!"
2015-09-29 17:26:38 +03:00
92990c887c
Fix creatures can always cast on self
2015-09-29 17:26:37 +03:00
e552e37cf7
Factored out CDefaultSpellMechanics::battleCast
...
(-) still huge
2015-09-29 17:26:36 +03:00
baba3a46e1
Centralize creature spell bonuses handling
...
* unified heal and damage calculation
* apply SPELL_DAMAGE_REDUCTION, MORE_DAMAGE_FROM_SPELL for Fairy dragon
2015-09-29 17:26:35 +03:00
67bd698019
Added some debug logging
2015-09-29 17:26:34 +03:00
873979a300
The only usage of secHero cast parameter is mana channeling - better to get it OTF
2015-09-29 17:26:33 +03:00