1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-20 20:23:03 +02:00
Commit Graph

177 Commits

Author SHA1 Message Date
Arseniy Shestakov
9fd1cff090 Refactoring: always use std prefix for shared_ptr, unique_ptr and make_shared
Long time ago it's was used without prefix to make future switch from boost to std version easier.
I discusses this with Ivan and decide to drop these using from Global.h now.

This change wouldn't break anything because there was already code with prefix for each of three cases.
2015-12-29 05:43:33 +03:00
ArseniyShestakov
8fb5dacba2 CBonusSystemNode: get rid of non-const getBonusList 2015-12-11 15:02:36 +03:00
ArseniyShestakov
f99ffbd074 Bonus system: use duration helpers in selecters 2015-11-20 13:24:48 +03:00
ArseniyShestakov
6d395bcba7 Bonus system: add turnsRemain support for ONE_WEEK duration 2015-11-20 12:11:35 +03:00
ArseniyShestakov
96897acc46 CWillLastDays: add condition for permanent durations
Accidentally missed them in pull request
2015-11-09 19:05:22 +03:00
ArseniyShestakov
ee1c5e452f Bonus system: add CWillLastDays selector 2015-11-09 15:01:58 +03:00
ArseniyShestakov
5bfbd8526b Bonus system: fix N_DAYS bonus duration 2015-11-09 14:18:36 +03:00
DjWarmonger
17071c6ec8 Merge pull request #125 from ArseniyShestakov/newMovementSystem
Okay, time to merge this.
2015-10-31 13:56:22 +01:00
ArseniyShestakov
68bd37aa45 Store penalty in value of FLYING_MOVEMENT and WATER_WALKING 2015-10-26 18:30:11 +03:00
ArseniyShestakov
6ebe2abc1a Fix penalties for FLYING_MOVEMENT and WATER_WALKING 2015-10-23 20:50:52 +03:00
ArseniyShestakov
46c7e8e36d Add list ending comment as suggested by @alexvins
This way we can add new bonuses without changing last line in list and avoid possible issues of extra concatenating.
2015-10-15 12:20:53 +03:00
ArseniyShestakov
25da9f249e Move NO_TERRAIN_PENALTY to the end of list to avoid save breakage 2015-10-15 11:44:59 +03:00
ArseniyShestakov
52a52dcfd9 Implement NO_TERRAIN_PENALTY bonus
Penalty of specified terrain type is ignored if hero have this bonus
2015-10-15 01:09:02 +03:00
Alexander Shishkin
fca4deaad2 Merge pull request #122 from vmarkovtsev/feature/warnings
Fix warnings produced by recent Clang build
2015-10-14 07:28:47 +03:00
Vadim Markovtsev
e4b1ef1405 Add "override" to virtual overriden methods 2015-10-13 21:05:36 +03:00
AlexVinS
a4d4851d80 Fix typo: casted->cast 2015-09-29 17:26:48 +03:00
AlexVinS
eb1753851e Fix comment 2015-09-29 17:25:04 +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
2cb6cb7baa Remove useless durationType selector
* duration is a mask, equality comparison is not enough
2015-06-02 07:12:02 +03:00
AlexVinS
5b29e800f7 Cleanup: use only CBonusSystemNode::treeHasChanged() when changing treeChanged 2015-04-11 08:13:28 +03:00
AlexVinS
666d7a4f45 Start implementing VISIONS and DISGUISE 2015-02-26 08:39:53 +03:00
DjWarmonger
8683c8c0eb - Added and improved some propagators, including Crystal Dragons ability (#1232)
- Minor refactoring in AI
2014-03-29 21:39:19 +00:00
DjWarmonger
6ee823298a - Various improvements for exploration
* Heroes will try to use SectorMap if there are no accessible tiles
* Remove some loopholes and pitfalls when all the ways are blocked
* Fixed AI not conquering some (reserved) objects
Still missing: SectorMap does not use Subterranean Gates :(

- Improvements for army exchange
* Fixed exchange condition
* Bidirectional exchange is possible
2014-02-17 07:36:03 +00:00
Ivan Savenko
3560bbb7f3 two patches/pull requests from janisozaur
- replace our custom bmap with std::map::at()
- compile fixes for editor
2013-11-12 10:45:42 +00:00
DjWarmonger
4ec9faa789 Fixed #1367. Removed confusing code for speed calculation. 2013-07-22 17:06:32 +00:00
DjWarmonger
4fd9bcfedc Fixed #1345 2013-07-22 10:39:11 +00:00
Ivan Savenko
096d6ebf9c refactoring of CBattleInterface::show() and all related code
fixes most of blit order-related bugs in battles (#1200, #1238, #226)

known issues, will fix soon:
- there are still some minor blitting issues during movement
- destruction of walls in siege is out of sync with catapult projectile movement
2013-07-19 16:35:16 +00:00
Michał W. Urbańczyk
68603245c4 Or should not be the same way as And. 2013-07-03 20:18:41 +00:00
Michał W. Urbańczyk
4576719abe Visual Studio 2013 Preview compile fixes:
* 0 is not convertible to std::function, nullptr should be used
* std::ref(rand) is not convertible to function<int()>, used lambdas (why we dont just pass "rand" ? )
* CFunctionList needs to be constructible from nullptr
* move constructor for CMapInfo (Visual cannot generate them :( )
* #ifdefed some stuff that is not needed anymore since cmath is updated with C99 stuff
* using std::make_unique instead of our vstd implementation

CSelector: 
* introduced a class in place of typedef
* Having an overloaded && || operators over sth that is convertible to bool… Wasn't a good idea after all. Purged the operators, replaced  with And/Or methods (chaining-style).
* constructor that is present only when constructing from class or function (SFINAE). std::function has an implicit converting constructor from T causing ambiguities (even if the overload would cause compile error in the body)
2013-07-02 12:08:30 +00:00
Ivan Savenko
f82122d9be second part of c++11 update. gcc 4.5 and VS 2010 are no longer supported
- BOOST_FOREACH -> for
- replaced several boost classes with std (e.g. unordered)
- removed gcc-4.5 workarounds
- ran clang c++11 migration tool to detect some cases:
- - pointer initialized with "0" to nullptr
- - replace for with iterators with range-based for
- - use auto in some situations (type name specified twice, avoid long iterators type names)
2013-06-29 13:05:48 +00:00
Ivan Savenko
2b45e13c5c c++03 -> c++11 switch:
- use std versions of function, bind and ref
- OVERRIDE -> override
- NULL -> nullptr
- use std versions of random distributions

NOTE: this may be last revision that supports gcc-4.5
2013-06-26 11:18:27 +00:00
Michał W. Urbańczyk
6a88604937 * fixed crash related to cammander's SPELL_AFTER_ATTACK spell id not initialized properly (text id was resolved on copy of bonus)
* fixed duels, added no-GUI mode for automatic AI testing
* minor things
2013-06-17 15:45:55 +00:00
mateuszb
dbec99ffc7 * PlayerColor and TeamID refactoring 2013-03-03 17:06:03 +00:00
Ivan Savenko
b78c4c19ea - compile fix 2013-02-26 15:07:21 +00:00
DjWarmonger
928d1d2121 - Some work on bonus system, effect range can be ignored. TODO: usage of bonus with any subtype.
- Fixed #1156
2013-02-26 09:36:21 +00:00
alexvins
2cb86d84fa [refactor]
+ crexp parser: parse mind immunity
2013-02-25 12:18:45 +00:00
mateuszb
560315bc48 * SlotID refactoring 2013-02-16 14:03:47 +00:00
mateuszb
86dc9386d6 * refactoring, including a generic solution for IDs 2013-02-10 23:24:57 +00:00
mateuszb
f1c78e3260 * creature ID refactoring
* double week creatures are configurable now
2013-02-07 17:34:50 +00:00
mateuszb
3958364884 * a bit more work on campaigns; hero crossover still buggy 2013-02-06 10:16:44 +00:00
DjWarmonger
1ef205e5f1 Various tweaks / enchancements to bonus mechanics
- Added CREATURE_SPELL_POWER for commanders
- Added spell modifiers to various spells: Hypnotize (Astral), Firewall (Luna), Landmine 
- Fixed ENEMY_DEFENCE_REDUCTION, GENERAL_ATTACK_REDUCTION
- Extended usefulness of ONLY_DISTANCE_FIGHT, ONLY_MELEE_FIGHT ranges
2013-02-06 08:02:46 +00:00
mateuszb
ba3075317f * proper bool serialization
* refactoring towards more enums/typedefs
2013-02-02 19:28:39 +00:00
mateuszb
c4e03ef0de * enum serialization/deserialization (si32 as basetype ought to be enough for anybody)
* some fields in classes refactored to use appropriate enums (not yet finished)
2013-02-01 22:04:25 +00:00
DjWarmonger
fff7909958 - Fix for hero specialties (creature type limiters)
- Improved handling of new heroes / arts, check forum for fresh mod packages :)
2013-01-20 16:31:18 +00:00
Michał W. Urbańczyk
0e826915ed Fixed #1176. 2013-01-20 12:06:18 +00:00
DjWarmonger
79062eb15c - Parsing hero specialty is working (though complicated)
- Some obvious fixed for limiters, more work needed
2013-01-19 17:38:37 +00:00
DjWarmonger
97db289d3c Parsing for CREATURE_TYPE_LIMITER 2013-01-18 11:49:15 +00:00
DjWarmonger
ce15eb37c2 - Fixed serialization of limiters
- Hero can now can have several separate specialty nodes
- Fixed typo (speciality->specialty)
- Fixed several crashes related to commanders
- Improvements to specialty handling, bugfixes and temporary solutions for upcoming hero specialties in mods
2013-01-17 18:15:00 +00:00
DjWarmonger
d7c9377843 - Parsing propagators and limiters
- Experimental support for chaining limiters
- Added missing abilities, propagators and limiters to artifacts
- Sketch of Calculator for bonuses, ignore it for now
2013-01-16 13:02:01 +00:00
Ivan Savenko
ffe8b99369 - reorganized hero classes
- artifact iconIndex should work
- new file with hardcoded string constants: lib/StringConstants.h

Note: some minor bugs, will fix soon:
- slow to open hero window
- hero adventure map images serialization is broken\incorrect
2012-12-14 15:32:53 +00:00