ArseniyShestakov
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
ArseniyShestakov
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
ArseniyShestakov
ee4305cd6d
CPathfinder: move destTopVisObjID where it's belongs to
2015-10-10 19:02:21 +03:00
ArseniyShestakov
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
ArseniyShestakov
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
AlexVinS
2677d4a677
Fixed action cancel on active stack remove
2015-10-08 08:15:29 +03:00
AlexVinS
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
AlexVinS
f99bf099ca
Made player interface tolerant to active stack removal.
2015-10-06 03:46:35 +03:00
AlexVinS
4e60b4cf53
Fixed 0002280
2015-10-06 01:26:50 +03:00
AlexVinS
f1d9e15783
[Tweak] Magic values--
2015-10-06 00:33:46 +03:00
AlexVinS
6cf220b882
Partial fix for 2272, there are more active stack sacrifice problems.
2015-10-05 20:33:05 +03:00
AlexVinS
fa06e05487
Merge branch 'develop' into SpellsRefactoring7
2015-10-05 00:45:57 +03:00
DjWarmonger
abe02247b5
Fixed bank randomization.
2015-10-02 17:28:33 +02:00
DjWarmonger
2733927527
Version bump.
2015-10-01 17:22:07 +02:00
AlexVinS
b07d272c2a
Added new BattleSpellCastParameters support to SACRIFICE spell.
2015-10-01 02:36:00 +03:00
AlexVinS
939a9180e2
Added new BattleSpellCastParameters support to TELEPORT spell.
2015-09-30 22:38:50 +03:00
AlexVinS
57e5b768e8
Allow multiple destinations in BattleSpellCastParameters
2015-09-30 00:31:50 +03:00
AlexVinS
70d9be8447
Use ISpellCaster in battle callback
2015-09-29 17:26:52 +03:00
AlexVinS
75c2566410
"const" tweak
2015-09-29 17:26:51 +03:00
AlexVinS
36e154d9b9
Use ISpellCaster in getAffectedStacks
2015-09-29 17:26:50 +03:00
AlexVinS
947f6089d5
Use ISpellCaster in isImmuneByStack
2015-09-29 17:26:49 +03:00
AlexVinS
a4d4851d80
Fix typo: casted->cast
2015-09-29 17:26:48 +03:00
AlexVinS
d9cbe487c7
remove useless function CSpell::getTargetInfo
2015-09-29 17:26:47 +03:00
AlexVinS
72587a8299
Removed hardcoded check for ANIMATE_DEAD absolute imminity - there is json configuration for that
2015-09-29 17:26:46 +03:00
AlexVinS
5f41ec912f
fix sphereOfPermanence
2015-09-29 17:26:45 +03:00
AlexVinS
3d7435c520
Introduced absolute specific spell immunity.
2015-09-29 17:26:44 +03:00
AlexVinS
253b850ac3
Partial fix for 1791
2015-09-29 17:26:43 +03:00
AlexVinS
a44c606277
Use callback methods
2015-09-29 17:26:42 +03:00
AlexVinS
660203b436
Tweak BattleSpellCastParameters
2015-09-29 17:26:41 +03:00
AlexVinS
2b434111bf
More hero|creature casting unification
2015-09-29 17:26:40 +03:00
AlexVinS
e454649886
Use BattleSpellCastParameters for spell parameters override
2015-09-29 17:26:39 +03:00
AlexVinS
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
AlexVinS
6010bbe7ba
More correct usage of battleGetFightingHero
...
* this should fix "FIXME: battleGetFightingHero wrong argument!"
2015-09-29 17:26:38 +03:00
AlexVinS
e552e37cf7
Factored out CDefaultSpellMechanics::battleCast
...
(-) still huge
2015-09-29 17:26:36 +03:00
AlexVinS
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
AlexVinS
67bd698019
Added some debug logging
2015-09-29 17:26:34 +03:00
AlexVinS
873979a300
The only usage of secHero cast parameter is mana channeling - better to get it OTF
2015-09-29 17:26:33 +03:00
AlexVinS
46f99db8d7
Hide some spell mechnaics details
2015-09-29 17:26:32 +03:00
AlexVinS
2c3a607497
Tweak StacksHealedOrResurrected
...
* flags should be bool
2015-09-29 17:26:31 +03:00
AlexVinS
a1e06aa217
Unify LIFE_DRAIN and Tent healing with magic healing
2015-09-29 17:26:30 +03:00
AlexVinS
9ed9075afc
Introduce calculateHealedHP again, now in better place.
2015-09-29 17:26:29 +03:00
AlexVinS
0929e009db
Remove suspicios code in display damage calculation
2015-09-29 17:26:28 +03:00
AlexVinS
16f0714474
More usage of OOP in HealingSpellMechanics::applyBattleEffects
2015-09-29 17:26:28 +03:00
AlexVinS
0fecb40039
Extract HealingSpellMechanics
...
* healing effects are too specific to be allowed for any spell
* mixing heal with direct damage does not make sence
* mixing heal with timed effect can be easy allowed if needed
2015-09-29 17:26:27 +03:00
AlexVinS
c050fde3f9
Get rid of DefaultSpellMechanics::calculateHealedHP
2015-09-29 17:26:26 +03:00
AlexVinS
a35b8a46d3
Comment out wrong code
2015-09-29 17:26:25 +03:00
AlexVinS
f66c29ea3b
fix comments
2015-09-29 17:26:24 +03:00
AlexVinS
05e52993fd
Simplified healed HP calculation
2015-09-29 17:26:23 +03:00
AlexVinS
eb1753851e
Fix comment
2015-09-29 17:25:04 +03:00
DjWarmonger
f81b46088a
Fixed #2218
2015-09-29 11:01:59 +02:00
AlexVinS
108d4c39b5
Fix build
2015-09-24 11:55:23 +03:00
DjWarmonger
6b45f323ea
Fixed logic regression from previous commit.
2015-09-23 21:38:16 +02:00
DjWarmonger
971f6d1c1f
Removed WoG dependency for random artifacts. WoG version in repository updated.
2015-09-23 21:14:41 +02:00
DjWarmonger
e2165a33a0
- Updated MSVS project
...
- Artifacts added via mods now work correctly without WoG
2015-09-23 19:34:12 +02:00
DjWarmonger
def56051fc
Merge branch 'develop' of https://github.com/vcmi/vcmi into develop
2015-09-23 19:03:48 +02:00
ArseniyShestakov
76cd002f07
Remove unused variable found by valgrind
2015-09-23 11:09:15 +03:00
DjWarmonger
57637dd71a
Added some checks & logs for empty def names, but it only delays the crash.
2015-09-20 13:02:13 +02:00
DjWarmonger
e14faea181
Merge branch 'develop' of https://github.com/vcmi/vcmi into mutexRelax
2015-09-20 09:46:52 +02:00
AlexVinS
9e0fd70208
Move isCastableBy logic back to CGHeroInstance - it is Hero-specific
...
* When and if canCastThisSpell will also be implmented for creatures common part may be moved to CSpell class.
2015-09-16 04:39:44 +03:00
AlexVinS
dc8b05fbd8
Give banned spells only by SPELL bonus
2015-09-16 04:16:46 +03:00
AlexVinS
f2605e059c
Fix 2042
2015-09-16 02:20:57 +03:00
AlexVinS
395070b584
Fix 1974
2015-09-15 08:51:05 +03:00
AlexVinS
017b4c308c
Enable crashhandler for mingw. It works for mingw 4.0.
2015-09-15 07:27:18 +03:00
AlexVinS
080244f30e
MAXED_SPELL bonus should only affect spell effects
...
* fixes 2146
2015-09-15 06:00:24 +03:00
AlexVinS
27f2dfc576
Quick fix for SACRIFICE immunity check
2015-09-15 04:31:43 +03:00
AlexVinS
bd70f672c3
fix 1814
2015-09-15 03:08:45 +03:00
AlexVinS
466ddb37b3
fix 1556
2015-09-14 18:38:41 +03:00
AlexVinS
3ed3f1fa13
Use json configuration for special spell effect duration
2015-09-14 13:22:23 +03:00
AlexVinS
3c053e5dd5
Quick fix for 2245 & 2238
2015-09-14 12:35:58 +03:00
AlexVinS
329c1d6b94
Calculate magic mirror effect at same time as magic resistance.
2015-09-14 11:52:56 +03:00
AlexVinS
caf8ae62cc
Allow custom effect animation on any stack during spell cast.
2015-09-14 06:21:49 +03:00
AlexVinS
0f0e67dbe3
Do not include resisted stacks in affected
2015-09-14 05:45:05 +03:00
AlexVinS
843a2a39bd
Use general dispell algorithm for CURE
2015-09-13 01:06:07 +03:00
AlexVinS
32337102ac
Fix a typo
2015-09-13 00:54:39 +03:00
AlexVinS
3029b1a432
Fix initialization of CSpell::AnimationItem
2015-09-12 23:52:04 +03:00
AlexVinS
f310be5d5f
Fix pasring csv cells with multiple quoted parts
2015-09-12 23:03:10 +03:00
AlexVinS
7776d7bbf7
rename BattleSpellCastParameters::caster
2015-09-12 21:09:54 +03:00
AlexVinS
98ea8bf314
Introduce dummy spell animation/ animation pause configuration
...
* save format changed with backward compatibility, UNTESTED
2015-09-12 21:09:52 +03:00
AlexVinS
832d69ec11
Hide battle log algorithm in spell classes.
...
* not finished, to be moved to json of splitted between mechanics classes
2015-09-12 21:09:51 +03:00
AlexVinS
786acad70b
project update
2015-09-12 21:09:49 +03:00
AlexVinS
fb5903d610
Initial experiments on hero & creature casting unification
2015-09-12 21:09:44 +03:00
AlexVinS
8f2da66a18
fix mantiss 1967 + some refactoring
...
* remove TModDescr and realted APIs - they were only used in one place
2015-09-04 22:29:20 +03:00
AlexVinS
e82dfb5a85
fixed mantiss 0002254
2015-09-04 18:08:25 +03:00
DjWarmonger
1c14dbf7b2
Cache SectorMaps to evaluate multiple goals -> huge performance boost
2015-08-31 08:25:33 +02:00
DjWarmonger
a3ce1521e5
Cache visible tiles within SectorMap for quicker access.
2015-08-31 07:39:03 +02:00
DjWarmonger
904a66764c
Optimization to getPlayerTeam functions, not very successful :/
2015-08-30 21:42:19 +02:00
DjWarmonger
70801309bd
Optimization for CGameInfoCallback:getPlayer function. It also seems to be called more often than needed.
2015-08-30 20:51:22 +02:00
DjWarmonger
cdad9f88b7
Relaxed Mutex of Logger. Attempt to optimize format function.
2015-08-30 19:26:19 +02:00
AlexVinS
40d3bb40c3
Partial fix for mantiss #2237
2015-08-22 16:22:10 +03:00
AlexVinS
03a295f1a0
Added debug mingw64 build, minimum Windows version set to windows 7, SDL suffixes removed from Build Tagerts
2015-08-20 03:28:04 +03:00
AlexVinS
f24f744f4b
Fix a few warnings
2015-08-19 23:02:37 +03:00
Sandy Carter
bdee647525
CastleInterface: Exclude previous building upgrade in reqs
...
Hide CityHall from Capitol prerequisites in Capitol build window
2015-08-19 12:05:43 -04:00
DjWarmonger
237d3f2624
Refactoring: random spells
2015-08-12 16:40:08 +02:00
DjWarmonger
3863756009
Version bump.
2015-08-01 18:37:14 +02:00
DjWarmonger
50b7b8e47b
Merge branch 'develop' of https://github.com/vcmi/vcmi into develop
2015-07-18 20:15:17 +02:00
DjWarmonger
e9654ef487
Fixed issue when player starting towns were wiped.
2015-07-18 20:14:45 +02:00
AlexVinS
a8c45df732
Merge branch 'SDL1Wipe' into develop
2015-06-22 14:24:00 +03:00
AlexVinS
53b85d16be
Cleanup C::B projects
2015-06-21 01:59:33 +03:00
AlexVinS
56a1805339
Merge branch 'issue/2185' into develop
2015-06-20 19:16:41 +03:00
DjWarmonger
f9781ffb47
Creature abilities won't spawn in random Pandora Boxes.
2015-06-10 14:27:53 +02:00
DjWarmonger
9e7b459882
Partial solution to #2206
...
TODO: add serialized field that contains custom guard config
2015-06-05 11:28:14 +02:00
DjWarmonger
3f1bc7e21c
One more case for Subterranean Gates
2015-06-04 09:42:39 +02:00
DjWarmonger
927dfa5565
Added correct connections for Subterranean Gates
2015-06-04 09:02:56 +02:00
DjWarmonger
63d6cf168f
- Solved problems with sealed-off objects for once and all.
...
- Refactoring
2015-06-03 21:57:22 +02:00
DjWarmonger
923437bf76
Corrected offset check for required objects.
2015-06-03 19:38:53 +02:00
DjWarmonger
55c1a7eade
Clear unused tiles to make more space for roads.
2015-06-03 15:16:11 +02:00
DjWarmonger
e21b2d9cbd
Attempt to use A* algorithm for required objects.
2015-06-02 20:29:37 +02:00
DjWarmonger
a68b58d969
- Use straight paths for some connections
...
- More fixes for template schema
2015-06-02 16:40:32 +02:00
DjWarmonger
8b1641d498
Generate main towns for zones with no player present.
2015-06-02 09:30:56 +02:00
DjWarmonger
1389ae0ea3
Fix Travis build
2015-06-02 07:01:38 +02:00
AlexVinS
2cb6cb7baa
Remove useless durationType selector
...
* duration is a mask, equality comparison is not enough
2015-06-02 07:12:02 +03:00
AlexVinS
b1837d0311
Fix removing STACK_GETS_TURN bonuses
...
* this should fix some crashes with FRENZY spell
2015-06-02 07:12:01 +03:00
AlexVinS
45a3ad94ae
fix autoremoving UNTIL_ATTACK & UNITL_BEING_ATTACKED bonuses
...
* this should fix crashes with paralyze, stonegaze & blind
2015-06-02 07:12:01 +03:00
AlexVinS
a2901cb8f0
Fix RemoveBonus::applyGs
...
* use CBonusSystemNode::removeBonus instead of direct modification of _cashe_
2015-06-02 07:12:00 +03:00
AlexVinS
3a50afe1a3
invalidate bonus cashe on effect actualization
2015-06-02 07:11:59 +03:00
DjWarmonger
c6f714db9c
Fixed generation of CPU teams.
2015-06-01 21:57:43 +02:00
DjWarmonger
34a59a2788
- Fixed issues with number of players selection
...
- Added new template for testing multiple players
2015-05-27 18:58:14 +02:00
DjWarmonger
6890ae9f02
- Fixed improper use of playersCount. Now RMG can generate maps up to 8 players, with CPU players only as well.
...
- Fixes for template scheme
2015-05-27 11:30:46 +02:00
DjWarmonger
2e70d8a084
- VCMI will now read templates from mods
...
- Added partial schema for RMG template
2015-05-26 18:19:41 +02:00
DjWarmonger
4e25d74e74
CRmgTemplateStorage now inherits from IHandlerBase
2015-05-26 15:12:24 +02:00
O01eg
8785e1f53c
Fix compilation with CMake.
2015-05-26 02:02:45 +03:00
DjWarmonger
e08a1f32bd
Some more fixes, updated changelog.
2015-05-25 20:04:24 +02:00
DjWarmonger
c6291412d7
Fixed one case of missing roads.
2015-05-25 19:44:03 +02:00
DjWarmonger
a0ed8e0d6d
An attempt to straighten roads.
2015-05-25 19:25:48 +02:00
DjWarmonger
353f6dc32e
Roads are generated between all nodes.
2015-05-25 19:11:44 +02:00
DjWarmonger
3ec91c550e
Correct road nodes iteration
2015-05-25 19:00:00 +02:00
DjWarmonger
fe6fa895c3
More or less working RMG roads.
2015-05-25 18:06:17 +02:00
DjWarmonger
2c88ddf5ed
Something works it seems
2015-05-25 17:47:32 +02:00
DjWarmonger
bfd4ff8954
Refactoring
2015-05-25 17:04:17 +02:00
DjWarmonger
6d502ef1a1
Implemented A* algorithm to draw shortest roads - but not correct roads yet.
2015-05-25 16:37:57 +02:00
Rohit Nirmal
aa00fdbd0e
Fix building with Boost 1.58.
2015-05-06 19:16:51 -05:00
DjWarmonger
b8a6455b39
Post-release version bump.
2015-05-01 21:56:17 +02:00
AlexVinS
b347fe5457
fix mantiss 0002147
2015-04-13 16:48:46 +03:00
AlexVinS
11b3426bea
Fix 0001331
2015-04-13 06:12:23 +03:00
AlexVinS
6448bc6a50
[gcc] fix build
2015-04-12 08:25:53 +03:00
DjWarmonger
cb394754c3
Merge branch 'develop' of https://github.com/vcmi/vcmi into develop
2015-04-11 17:13:24 +02:00
AlexVinS
0134266fa1
Extract general dispell logic
2015-04-11 16:27:14 +03:00
AlexVinS
b8b9abcc08
Fix 0002169
2015-04-11 15:53:32 +03:00
AlexVinS
736cc14814
Quick fix for mantiss 0001875
...
* hardcoded permanent effect for animateDead
2015-04-11 15:02:42 +03:00
DjWarmonger
86e2dabdc9
Merge branch 'develop' of https://github.com/vcmi/vcmi into develop
2015-04-11 13:46:32 +02:00
DjWarmonger
a0840100df
Different fractalization algorithm that enforces cycle generation.
2015-04-11 13:46:17 +02:00
DjWarmonger
69c58c6c25
Experiment: fractalize RMG zones before placing important objects. The downside is that it won't be possible to draw road as straight line anymore.
2015-04-11 12:47:41 +02:00
AlexVinS
41f1d3f21f
Quick fix for major spell configuration bug
...
* clean fix requires save format change
2015-04-11 13:14:26 +03:00
AlexVinS
2d8288d95a
Fix mantiss 0002167
...
* also refactored summon mechanics
2015-04-11 12:09:48 +03:00
AlexVinS
e5b9f76717
Merge branch 'dispellFixes' into develop
2015-04-11 11:02:56 +03:00
AlexVinS
cc8c1aea36
Fix DISPELL effect
2015-04-11 10:19:35 +03:00
AlexVinS
46e7a0f829
Remove no longer needed (and incomplete) explicit target existence check
2015-04-11 10:19:34 +03:00
AlexVinS
6356247108
Add dispell effect to ANTI_MAGIC
...
* fixes 0002156
2015-04-11 10:19:33 +03:00
AlexVinS
e4220fef82
Formatting
2015-04-11 10:19:33 +03:00
AlexVinS
9d0b29b973
expert DISPELL also removes spell-created obstacles
2015-04-11 10:19:32 +03:00