AlexVinS
86e33a4c45
[Refactoring] Unified SetResources NetPack API.
2016-11-26 15:14:43 +03:00
AlexVinS
dc39fb2d14
Removed useless CPack::type field.
...
* it was an ancient network protocol artifact
2016-11-18 17:45:59 +03:00
AlexVinS
ebb88f4133
There no point for struct MetaString and struct Component to have CPack as base
2016-11-18 16:58:22 +03:00
AlexVinS
931656f24a
possible fix for http://bugs.vcmi.eu/view.php?id=2612
2016-11-18 14:27:20 +03:00
Vadim Markovtsev
9f967b4d7a
Fix formatting
2016-10-29 17:00:12 +02:00
Vadim Markovtsev
c696746017
Fix some compilation warnings
2016-10-28 08:07:05 +02:00
Vadim Markovtsev
76ac9991ed
Format code
2016-10-12 17:22:35 +02:00
Piotr Wójcik
bb890098df
Fix regression for week-visitable objects
2016-10-09 18:51:41 +03:00
Vadim Markovtsev
eac5aab396
Survive client<->server ABI mismatch
2016-10-02 22:45:00 +02:00
AlexVinS
f124db9f61
Get rid of Bonus::sourceSpell()
...
* now bonus API looks more or less clean
2016-10-01 14:47:21 +03:00
AlexVinS
c2a6c268c0
Cleanup terrain overlay bonuses, fixed CURSED_GROUND
2016-10-01 14:10:09 +03:00
AlexVinS
887794e88b
Remove UNTIL_BEING_ATTACKED bonuses after any received damage.
...
* fixes http://bugs.vcmi.eu/view.php?id=2528
2016-09-30 02:09:02 +03:00
Vadim Markovtsev
2c1dddde33
Fix memory problems with BonusList
...
Bonus * -> std::shared_ptr<Bonus>
This cures the following problems:
1) Memory corruption at exit. Some Bonus-es were deleted twice (mods?).
2) Memory leaks. Some Bonuses were not deleted.
3) Reduce the number of "Orphaned child" messages.
Valgrind reports 0 leaked memory now and no invalid reads/writes.
2016-09-29 15:08:00 +02:00
AlexVinS
d79e336e4b
Reworked SetStackEffect::applyGs
...
* fixed applying different duration effects from spells (f.e. Blind)
* reduced code duplication
2016-09-29 15:23:28 +03:00
AlexVinS
7874dffa7d
fixed http://bugs.vcmi.eu/view.php?id=2282
2016-09-24 10:06:24 +03:00
ArseniyShestakov
6c63041d1a
Merge pull request #198 from vcmi/SpellsRefactoring8
...
No reason to not merge this now.
2016-09-24 05:29:55 +03:00
AlexVinS
44753866ec
Fixed Clone links cleanup.
2016-09-23 12:20:41 +03:00
Piotr Wójcik
97d358b70f
Marking visited for team
...
Also no longer gives reward every player
2016-09-20 22:05:44 +02:00
AlexVinS
505e53c17d
Merge remote-tracking branch 'remotes/origin/develop' into SpellsRefactoring8
...
# Conflicts:
# client/battle/CBattleInterface.cpp
# lib/spells/BattleSpellMechanics.cpp
2016-09-12 10:13:40 +03:00
AlexVinS
33d1895d21
Merge branch 'develop' into SpellsRefactoring8
2016-09-11 18:34:18 +03:00
Arseniy Shestakov
c8faca8f39
Refactoring: only use RNGs explicitly to avoid bug prone code in future
...
Now server-side code should always use CRandomGenerator::getDefault which is serialized in GH.
CGameState::getRandomGenerator should be only used from GS code and CPackForClient-based applyGs.
2016-09-11 00:10:46 +03:00
Arseniy Shestakov
53502e84e3
Add PrepareHeroLevelUp netpack to keep secondary skills RNG in sync
2016-09-09 23:16:43 +03:00
Arseniy Shestakov
d06d07a39b
Add ChangeFormation netpack to avoid MP desyncs
...
Previous code was working fine for single client, but would cause desync in multiplayer. Fix issue 2460.
2016-09-08 19:29:15 +03:00
AlexVinS
1e7e7a7006
Fixed http://bugs.vcmi.eu/view.php?id=2419
2016-08-30 12:20:17 +03:00
Arseniy Shestakov
5a387cdaf1
Town: update appearance in applyGs to avoid desyncs. Fix issue 2464
...
Netpacks NewStructures and RazeStructures
2016-08-24 05:15:04 +03:00
Arseniy Shestakov
abad3cfb17
PlayerState::daysWithoutCastle: change in netpacks only. Fix issue 2462
...
Moving code from CGameHandler to NetPacksLib without changes.
2016-08-23 08:02:04 +03:00
Arseniy Shestakov
10dbbead2d
Fix indentation of logging code and around it
...
That wouldn't be as big issue if problem affected few files, but it everywhere in codebase.
Fixed it everywhere since in most files that is the only code with wrong indentation.
2016-03-12 04:46:21 +03:00
ArseniyShestakov
7886e8986e
Merge pull request #197 from vcmi/issue/2304_2418
...
Issues/2304/2418/2293
2016-03-01 15:20:59 +03:00
AlexVinS
4bf9036c7b
Ensure that ghost stacks are created only by BattleStacksRemoved packet.
...
This will allow client to receive notification.
2016-03-01 05:24:35 +03:00
AlexVinS
47b619a543
Centralize GHOST state handling
2016-02-28 01:35:23 +03:00
AlexVinS
9036d39241
Do not remove battle stacks, make them ghosts instead.
...
* exclude ghost stacks from (hopefully all) get* results for now
2016-02-28 01:08:56 +03:00
AlexVinS
5d5ad99436
Rename DEAD_CLONE -> GHOST, as this will be possible for any stack
2016-02-28 00:13:34 +03:00
AlexVinS
d2a5e64542
Remove clone of killed or removed creature. Treat summoned creature as clone when killed.
2016-02-27 18:39:37 +03:00
AlexVinS
dc5ad7d7b3
Make string instance names persistent
2016-02-22 19:26:42 +03:00
ArseniyShestakov
c550484613
Merge pull request #181 from vcmi/feature/drawbridgeMechanics
...
Feature/drawbridge mechanics
2016-02-14 16:32:24 +03:00
Arseniy Shestakov
c5cfc8467f
Battles: change naming from drawbridge to gate for everything
...
This way code is shorter and cleaner while in future we may support towns with gate only.
2016-02-13 17:40:31 +03:00
Arseniy Shestakov
11dc428b1e
Battles: move hexes enum to GameConstants and fix wall position
...
Before we had hex 62 marked as destructible wall while actually it's must be 78.
2016-02-09 17:38:59 +03:00
ArseniyShestakov
7f68124b97
Merge pull request #136 from vcmi/issue/1372-2
...
issue/1372
2016-01-31 20:28:54 +03:00
Vadim Markovtsev
3926920103
Rename radious -> radius
...
There is no such English word, "radious"
Some files get new lines in the end - BSD sed bug + best practices
2016-01-31 18:01:58 +03:00
Vadim Markovtsev
22fc4fd3e9
Fix 2406 reset potentially available heroes
2016-01-30 10:02:33 +03:00
Arseniy Shestakov
1e008b9756
SiegeInfo: add foundation for drawbridge mechanics support
...
EDrawbridgeState enum represent current state of drawbridge.
BattleDrawbridgeStateChanged netpack to pass bridge state changes to client.
2016-01-29 22:35:11 +03:00
AlexVinS
ba017c443d
Start from diff of pull request #124 from vcmi/issue/1372
2016-01-29 21:05:17 +03:00
Vadim Markovtsev
7772b6de74
Fix 981 reset hero on hiring after retreat/surrender
2016-01-26 22:48:31 +03:00
Vadim Markovtsev
a74fbff34f
Fix 2076 Grail removal
2016-01-25 12:38:11 +03:00
Vadim Markovtsev
11bce2908d
Fix 1723 quest crash on combined arts
2016-01-22 12:56:25 +03:00
Arseniy Shestakov
66e6f15e67
NewTurn::applyGs: update bonuses in beginning. Fix issue 2083
...
Before bonuses was removed after hero get movement points and mana so affected hero one day more than intended.
2015-12-25 01:48:53 +03:00
ArseniyShestakov
2be6818e33
FoWChange::applyGs: correct copy-paste error. Fix issue 2345
2015-12-09 10:02:33 +03:00
ArseniyShestakov
c83f15e413
Merge branch 'develop' into feature/tavernRumors
...
Conflicts:
lib/CGameState.h
2015-12-05 01:01:26 +03:00
Ivan Savenko
7b5a7f43ad
Removed includes of CGameState from headers
2015-12-02 21:39:53 +02:00
ArseniyShestakov
98582d628c
Rumors: move code into CGameState and add backward compatability
2015-12-01 00:44:58 +03:00
DjWarmonger
45d183289d
Merge pull request #142 from edeksumo/Fix-Defence-Ani
...
Fix crash
2015-11-24 21:37:32 +01:00
edeksumo
aab5a05036
Fix crash during auto battle
2015-11-24 20:55:11 +01:00
ArseniyShestakov
6d395bcba7
Bonus system: add turnsRemain support for ONE_WEEK duration
2015-11-20 12:11:35 +03:00
DjWarmonger
5fadb239f2
Merge pull request #134 from edeksumo/Fix-Defence-Ani
...
Let's try this.
2015-11-11 09:43:51 +01:00
ArseniyShestakov
5bfbd8526b
Bonus system: fix N_DAYS bonus duration
2015-11-09 14:18:36 +03:00
edeksumo
ba1062ed3c
Formating2
...
Change ani to anim
2015-11-07 23:30:01 +01:00
AlexVinS
e645b46aed
Revert "Merge pull request #124 from vcmi/issue/1372"
...
This reverts commit da01af319b
, reversing
changes made to 8b6b4e2e0b
.
2015-11-07 11:35:02 +03:00
edeksumo
dd525da153
Formatting
2015-11-04 23:37:53 +01:00
edeksumo
75a76c0bf0
FixDefenceAni
2015-11-04 00:19:40 +01:00
AlexVinS
f6b9015324
Use constant for summoned creature slot
2015-11-03 02:18:34 +03:00
DjWarmonger
716c324695
Don't give a turn to player who is about to lose (days without town).
2015-10-24 16:21:30 +02:00
DjWarmonger
abe88ea890
- Refactoring legacy code
...
- Some checks for #2311
2015-10-24 15:09:46 +02:00
AlexVinS
eeb100d6a4
More comments about dispell special cases.
2015-10-13 07:11:49 +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
bd70f672c3
fix 1814
2015-09-15 03:08:45 +03:00
AlexVinS
466ddb37b3
fix 1556
2015-09-14 18:38:41 +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
AlexVinS
6cf82ceab5
Possible fix for #923
2015-04-11 07:18:40 +03:00
AlexVinS
1fd4a6daae
Fix merge of SpellsRefactoring5
2015-03-10 23:23:28 +03:00
DjWarmonger
f32849a73e
Attempt to compile refactored spells in MSVS.
2015-03-09 19:24:45 +01:00
AlexVinS
685deddac1
Start spell-relatet files reorganisation
...
* moved existing files to separate directory
-> todo: split mechanics
2015-02-26 08:39:48 +03:00
AlexVinS
c7c235c0ca
Rename afterCast to applyBattle
...
* afterXXX will be used in future event-driven mechanics
2015-02-26 08:39:47 +03:00
DjWarmonger
84b2510aa4
Merge pull request #62 from vcmi/SpellsRefactoring4
...
OK
2014-12-26 08:46:29 +01:00
ArseniyShestakov
937ef0227b
Use ArtifactID instead of int when possible
2014-12-24 18:49:12 +03:00
AlexVinS
e8aeb0bf8e
Merge branch 'develop' into SpellsRefactoring4
2014-11-28 22:44:33 +03:00
AlexVinS
e583f4e44d
Fix #1928
...
* disallow geneie to cast teleport
2014-11-28 20:39:23 +03:00
AlexVinS
657385e32c
We need to know caster stack ID for proper projectile animation
2014-11-27 20:47:37 +03:00
AlexVinS
b31ed0e4ea
Use SetMana packet in battle
2014-11-26 13:30:55 +03:00
AlexVinS
fe1233310f
Centralize dispell mechanics
2014-11-25 23:59:21 +03:00
AlexVinS
f2bf3d7f7b
Added a way to obtain ID of newly added Stack
2014-11-25 12:26:32 +03:00
DjWarmonger
c832eab172
Fixed #1909
2014-10-01 11:38:03 +02:00
Ivan Savenko
78709e223b
Breaking things - trying to remove server-side knowledge of selected objects
2014-09-19 00:18:49 +03:00
Ivan Savenko
d1dd7eef48
Proper fix for #1712 - Building requirement tests are now fixed
...
- added minimize() method in logical expressions that will remove excessive elements
- replaced forEach() with morph() that allows replacing types in variant
2014-08-07 19:53:07 +03:00
Ivan Savenko
aaf314baf4
Source ID from bonusing objects is not object index but object type. Fixes at least partially #1822
2014-07-07 08:29:07 +03:00
DjWarmonger
bda71bed83
Uploading misc tweaks.
2014-07-01 07:07:40 +02:00
AlexVinS
c28b5f6633
fix mingw build
2014-06-26 20:41:27 +04:00
Ivan Savenko
32240da34e
Reduced number of #include's in headers. May break compilation on Win
...
since some net packs now need DLL_LINKAGE
2014-06-25 17:11:07 +03:00
Ivan Savenko
a0689fa377
Refactoring of hoverText from objects:
...
- removed hoverText field
- split getHoverText() method into 3:
- - getObjectName() for generic name
- - getHoverText(Player) for player-specific text
- - getHoverText(Hero) for hero-specific strings
2014-06-24 20:39:47 +03:00
Ivan Savenko
ad632d1e8a
Moved FoW management from CGObjectInstance to callback
2014-06-24 20:39:47 +03:00
AlexVinS
c7dc4c05b8
fix mingw build
...
(?) does this brake *nix build?
2014-06-24 18:17:25 +04:00
Ivan Savenko
13bc4cb24f
Added -fvisibility=hidden parameter for gcc.
...
Should help a bit with endless missing DLL_LINKAGE attributes and
(according to gcc docs) help a bit with library loading times.
2014-06-24 00:05:53 +03:00
DjWarmonger
3ac306f501
Merge pull request #19 from vcmi/feature/mapObjects
...
Feature/map objects
2014-06-22 14:49:42 +02:00
DjWarmonger
e54c816c92
Treasure piles can now cover several tiles.
2014-06-05 17:19:11 +02:00
Ivan Savenko
0afdfa529c
Moved all object-related files to lib/mapObjects directory.
...
Renamed some classes to more readable names
2014-06-05 14:19:47 +03:00
Ivan Savenko
32b6568b65
Merged changes from upstream and fixed compilation caused by API changes
2014-06-03 22:45:18 +03:00
Ivan Savenko
7f276185bd
Moving files:
...
- new config for objects (config/objects/generic.json)
- renamed lib/CDefObjectHandler to lib/CObjectClassesHandler
2014-05-24 02:07:54 +03:00
Ivan Savenko
6bd6be0835
Object class handler is now a proper "handler"
...
- Some changes in interfaces
- Fixed some missing fields in serialization
- Moved object names to new handler
2014-05-24 01:56:51 +03:00
AlexVinS
8a3b997fa5
fix a few comments. No code changes.
2014-05-21 13:02:20 +04:00
Ivan Savenko
b5160acbac
Finalization of object type handler interface
...
- updated code to use new interface
- removed old DefObjHandler (todo - rename file)
Summary:
- most code but loading is now in place
- type names may deserve improvements (some of them are too similar)
- still barely compiles and not tested
2014-05-16 23:50:02 +03:00
beegee1
1d57b75bc5
- random number generation refactoring
...
- fixed mantis #1743
2014-04-10 19:22:32 +02:00
Ivan Savenko
dab9fd7148
Heroes will be properly marked as visited on visiting
2014-04-07 20:32:15 +03:00
Ivan Savenko
43ba3d30ea
Breaking things - first commit towards configurable object(s).
...
- New files: lib/CObjectWithReward.h/cpp
- Classes that will be replaced by configurable object are now in this
fil
Status: far from functional, currently at "it compiles" point, some
essential pieces are still missing.
2014-04-06 23:14:26 +03:00
DjWarmonger
30b79588db
- Moved gameState::guardingCreaturePosition() to CMap so it doesn't need to be recalculated many times for every player.
...
- Some optimizations with local cb pinter in VCAI.
2014-04-01 11:53:28 +00:00
Ivan Savenko
9c0df68cb8
Fixing spelling mistakes. Patch from josch, fixes #1759
2014-03-23 12:59:03 +00:00
Ivan Savenko
760ae7d44a
Changes related to Debian packaging, based on josch patch
...
- AUTHORS file is now in UTF-8
- tags for desktop files
- fixed some typos
- better reaction on --help and --version commands
- vcmibuilder should work with both avconf and ffmpeg
2014-03-20 18:17:40 +00:00
alexvins
4203d69525
Part 2 of new spell configuration
...
1) spell handler refactored to support modding in general way
2) imunnity icons moved to WoG as they depends on wog`s graphics
3) introduced new class template for handlers (todo: use this in other handlers)
4) save format changed
5) introduced "absolute immunity" - unaffected by "the Orb" etc. (todo: use it in config)
6) new format documented on wiki, added json schema.
* more split of registertypes - fixes 32 mingw build
2014-03-07 13:21:09 +00:00
alexvins
d01b84b460
[mechanics] fix copy-paste errors in magic skill arrays
...
[c::b] few tweaks to configuration
2014-02-15 09:40:33 +00:00
Ivan Savenko
7f07a30d7d
More fixes for map-specific crashes, fixes #1427 and #733
...
- if special victory condition is present AND there is only one player
normal victory condition will be disabled
- added new triggered condition, constant value
- if target of CONTROL/DESTROY condition is removed from map, triggered
condition will be replaced with constant
- fixed randomization of armies with random stacks
2014-02-09 12:10:02 +00:00
Michał W. Urbańczyk
343dd1a7d1
Properly removing stuff from hero, fixes #1646 .
2014-02-08 23:07:33 +00:00
alexvins
16d6292be9
[refactor] extract often used classes from lib\NetPacks.h to separate header - less dependecies on whole packets class tree
...
[mingw build] fix linking issues with netpacks.
Mingw build is finally fixed!
[c::b] update projects
[config] fix and cleanup spell_info.json
2014-01-16 20:24:06 +00:00
Ivan Savenko
1f325bafb3
fixes #1619 and #1647
...
- removed some no longer needed code from map handler
- blocked "back" button on campaign map screen if some of scenarios are
already completed
2014-01-05 13:45:44 +00:00
Ivan Savenko
2c4c964a45
Large rewrite of adventure map objects:
...
- replaced CDefObjInfo with ObjectTemplate class
- ObjectTempate is a direct member of objects instead of pointer with
shared ownership across CMap, handler and game objects
- simplified handling of objects that can change appearance (e.g. towns)
- all object queries regarding object appearance/blockmaps use h3m pos
instead of relative positions
- removed need of modhandler::reload
- cleanup of some old code
2014-01-02 23:48:38 +00:00
Ivan Savenko
0c5be52a42
Win/loss conditions based on logical expressions, yet another large
...
changeset:
- victory/defeat will be detected using triggered events
- vcmi will convert h3 conditions into set of triggered events
- it is possible to either change number of days without towns or even
remove this loss condition completely
- possibility of custom win/loss text and icons in pregame (no longer
connected to win/loss conditions)
Still missing:
- No interface to pass custom events/victory conditions into the game
- AI would benefit from improvemets (handle all victory conditions,
select best one to fulfill)
- You have X days till defeat message still hardcoded to 7 days
2013-12-29 11:27:38 +00:00
beegee1
69eee05ccc
- Partially fixed mantis #1065 (Gate with hex 95 can't be attacked)
...
- Fixed 'catapult tried to attack non-catapultable hex!' problem, now catapult attacks attackable wall parts only
- Fixed problem that the server performed applying damage on a wall part twice
- Added methods for checking what wall parts are attackable and if a wall part is potentially attackable
- Added functionality to trace net packages
- Added functionality to trace std::vectors
- Added tracing for CatapultAttack(CPack)
- Updated various toString methods to use {} instead of []
- Refactoring
2013-12-08 17:54:13 +00:00
beegee1
2d095cf20a
- Fixed days without castle counter
...
- Fixed 'you have only 0 days...' message
- Checks victory/loss conditions every player turn instead of every day
- Fixed mantis #1463
2013-12-06 19:44:11 +00:00
beegee1
3e4407593f
- Refactoring for checking victory/loss conditions (use enum class instead of magic numbers)
...
- Improved showing player lost message for one special case
2013-11-17 17:57:04 +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
Ivan Savenko
55577d0ac4
- fixed missing DLL_LINKAGE
...
- use precalculated checksum for zip files
- UNUSED macro to silence some warnings
2013-11-09 13:49:36 +00:00
Michał W. Urbańczyk
fde8c71c5e
Fixed setting -1 as hero direction that was causing crashes, like #1488 .
2013-10-13 20:05:34 +00:00
Michał W. Urbańczyk
0abbe71b25
Merged fixes from the branch.
2013-09-28 00:58:33 +00:00
Michał W. Urbańczyk
0e5a59e2a5
Changes related to #1444 — fixing affected savegames, assert to detect when things go wrong.
2013-09-27 15:20:42 +00:00
Ivan Savenko
208df34fc2
bigfixing & new file: launcher/jsonutils.cpp
...
- launcher uses json parser from vcmi lib instead of one from Qt #1469
- fixed abilities overrides for some creatures #1476
- fixed hero portraits in seer huts #1402
- ttf fonts will render text in utf-8 mode. Not really useful at this point
- new settings entry, available in launcher: encoding. Unused for now.
2013-09-21 18:29:26 +00:00
DjWarmonger
39f9069ed9
Implemented deterministic secondary skills, #1166 .
2013-09-09 15:23:59 +00:00
Michał W. Urbańczyk
ab042aa685
Boat will be removed when hero is defeated on water.
...
Should fix #1303 , #1419 , #1425 .
2013-09-08 21:50:49 +00:00
DjWarmonger
99352a7220
Fixed crashes when clone dies #1357 , #1441 .
2013-09-08 17:43:10 +00:00
Ivan Savenko
5654fef901
- ZipArchive namespace for operations with zip archives, located in CZipLoader.h/cpp.
...
- new fields in mod format, for use with mod manager (check config/shemas/mod.json for details)
- removed some 0.92 compatibility from mods loading
- several compile fixes
2013-08-19 11:50:53 +00:00
Michał W. Urbańczyk
3b42cff3ec
#1409 should not crash anymore.
...
Fixed crash on serializing empty path. [How did it got there...?]
operator<< for boost::optional.
2013-08-18 15:46:28 +00:00
Ivan Savenko
c81a31c74a
- catapult attacks should be identical to H3
...
- catapult may miss and attack another part of wall instead (this is how it works in H3)
- minor fixes
2013-08-06 11:20:28 +00:00
DjWarmonger
5f310aa20f
Fixed all issues with Resurrection: #123 , #1358
2013-07-27 19:01:31 +00:00
DjWarmonger
66d6aebe32
Fixed all the issues with Quests, #828 and #1223 .
...
Upgrade cost will never be negative.
2013-07-23 15:03:01 +00:00
Michał W. Urbańczyk
d8a27d8f3c
Refactored player-specific data into single struct BattleState.
2013-07-21 22:01:29 +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
c85829a00c
* creature window prints morale/luck for actual stack in battle (CStack), not stack as seen in hero screen (CStackInstance), fixes #1264
...
* creature abilities bonus properties are updated when the creature id is assigned
* removed decrease morale ability from config file (it was duplicating the one from ZCRTRAIT.TXT
2013-05-19 19:53:03 +00:00
Michał W. Urbańczyk
be7c2bd07f
CGHeroInstance* can be serialized over network even when hero has been defeated. Strongly typed hero type ID introduced.
...
Should fix #1260 .
2013-05-18 22:30:48 +00:00
Michał W. Urbańczyk
d30571aa4d
AI won't access enemy heroes' objects that went under FoW. Fixes #1235 .
2013-04-21 12:11:13 +00:00
Michał W. Urbańczyk
e8354908c3
Big change: Introduced new mechanism to handle queries. It should not cause any visible changes ATM apart from fixing several long-standing bugs realted to handling post-visit/battle/levelup callback, including infamous creature bank issues: #955 , #1053 , #1063 , #1191 . Needs testing.
...
Minor changes:
* default log level set to trace
* LOG_TRACE raii guardian lifetime will last till the end of block
* compile fixes
* minor refactorings
2013-04-20 11:34:01 +00:00
beegee1
c7c2686379
- Integrated the logging API into the client and the lib - Remove some more comments and switched to /// style - Fixed recursive locks - Added Global.h to CMakeLists(now visible in qt-creator) - Removed usage of shared_mutex - Added unique_ptr to CLogger targets
2013-04-09 14:31:36 +00:00
beegee1
ee51c5beb5
- Renamed /lib subfolders to lowercase
2013-04-07 10:48:07 +00:00
Ivan Savenko
c4c592b773
- bugfixing: #1243 , #1227 , #1241 , #1236 , #1233
2013-03-14 20:44:00 +00:00
DjWarmonger
ca8182f80f
Fixed #1133 .
2013-03-05 07:34:52 +00:00
mateuszb
dbec99ffc7
* PlayerColor and TeamID refactoring
2013-03-03 17:06:03 +00:00
Ivan Savenko
b5fcefe455
- moved all system-specific handling of filesystem to VCMIDirs.cpp (new file)
...
- fixed #1128 , artifact constituents are now stored as pointers
2013-03-02 18:41:25 +00:00
Michał W. Urbańczyk
d45a554fec
Significant changes to saving system. Now both client and server store their lib part.
...
Desync detection upon loading. Fixed many desyncs. (more remain)
Monsters won't have creature count 0 even if that is set as creature properties.
2013-02-18 22:37:22 +00:00
mateuszb
560315bc48
* SlotID refactoring
2013-02-16 14:03:47 +00:00