1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-26 22:57:00 +02:00
Commit Graph

5500 Commits

Author SHA1 Message Date
Vadim Markovtsev
e8db456beb Reset obelisks upon game end
Otherwise, the static variables are preserved and lead to wrong values in next new game.
2016-01-20 13:02:52 +03:00
Vadim Markovtsev
1a2cd36df8 Initialize obelisks count to 0
Otherwise every time player starts with a random number.
2016-01-20 12:43:07 +03:00
Vadim Markovtsev
bb3a31f3ff Mark obelisk visited for all players in the team 2016-01-20 11:14:03 +03:00
Vadim Markovtsev
10f888a483 Fix obelisks puzzle revealing
Teams and players were messed up in lib; hardcoded constants were refactored.
2016-01-20 10:44:13 +03:00
Alexander Shishkin
e4b73180bd Merge pull request #159 from vmarkovtsev/issue/2390
Check against nullptr in VisitHero::fulfillsMe()
2016-01-19 22:49:54 +03:00
Vadim Markovtsev
6eefce23fe Check against nullptr in VisitHero::fulfillsMe() 2016-01-19 21:15:07 +03:00
Alexander Shishkin
02c3c226e6 Merge pull request #155 from vmarkovtsev/feature/fix_unknown_objects
Fix crash on unknown map objects
2016-01-19 20:39:23 +03:00
DjWarmonger
e187dd7b78 Merge pull request #158 from vmarkovtsev/issue/2389
Merging, very good solution.
2016-01-19 09:22:31 +01:00
Vadim Markovtsev
74111b7689 Return missing building name instead of crashing in CComponent::getSubtitleInternal 2016-01-19 10:35:10 +03:00
Vadim Markovtsev
92e011429f Fix crash on unknown map objects
If getHandlerFor() fails to find the handler, it returns a nullptr
shared pointer, which is later dereferenced unconditionally.

How to reproduce:
Download map "Happy time Dragons!!!" from http://heroesportal.net/maps.php?type=H3AB-XL&sort=r

=>

Failed to find object of type 5:144
SIGSEGV
2016-01-18 21:16:55 +03:00
Alexander Shishkin
8be660aae8 Merge pull request #153 from vmarkovtsev/develop
Revert 5cd4e852d4 "Use portable cast in…
2016-01-18 17:00:39 +03:00
Alexander Shishkin
698df110d8 Merge pull request #154 from vmarkovtsev/feature/macosx_right_click
Enable right mouse button click emulation on MacOSX
2016-01-18 16:44:07 +03:00
Vadim Markovtsev
7c7bb39904 Enable right mouse button click emulation on MacOSX 2016-01-18 16:07:17 +03:00
Vadim Markovtsev
4a05402c2f Revert 5cd4e852d4 "Use portable cast in CTeleportDialogQuery also"
Actually, this leads to crash on MacOSX, I specially left that intact.
2016-01-18 10:45:09 +03:00
Arseniy Shestakov
575a68d78b CRewardableObject: fix onVisited message duplication for Idol of Fortune 2016-01-17 15:16:35 +03:00
Arseniy Shestakov
cacc811ed8 CAdvMapInt: keep old path if non-accessible tile clicked. Fix issue 2380 2016-01-17 07:48:21 +03:00
Arseniy Shestakov
18b2f866c9 CGPickable: add missing break for flotsam. Fix issue 1956 2016-01-16 09:45:30 +03:00
Arseniy Shestakov
725cce368f CGameState::initStartingBonus: fix amounts for wood and ore bonus
In original game when wood and ore bonus is choosen you always get same amount of both resources.
2016-01-15 20:36:16 +03:00
Arseniy Shestakov
530fe04c75 CAdvMapInt::updateMoveHero: proper indeterminate check. Fix issue 2074 2016-01-15 19:30:43 +03:00
Arseniy Shestakov
b84d7bd288 CGCreature: add reward granting. Fix issue 2372 2016-01-15 04:29:46 +03:00
DjWarmonger
ac730a591c Fixed large treasure piles sometimes being uncovered. 2016-01-13 20:03:25 +01:00
DjWarmonger
8c5f93dd8f Little refactoring for object placement. 2016-01-13 19:17:12 +01:00
Arseniy Shestakov
a39e61373c Deactivate CAdvMapInt while quick combat is going. Fix issue 2354
If quick combat calculation take a while it's possible to give hero movement command before battle is finished. This will lead to client freeze or crash. To avoid this we must lock adventure interface until battle calculation is finished.
2016-01-10 18:00:24 +03:00
Arseniy Shestakov
46e3d849af Avoid crashes caused by mouse events. Fix issue 1955
Mouse handling code need refactoring, but for now we at least shouldn't crash.
2016-01-09 15:32:42 +03:00
DjWarmonger
676f078b2e RMG will now multiply Monolith defs to ensure there are at least 100 pairs avaiable for connections. 2016-01-09 09:03:40 +01:00
DjWarmonger
dd1fc47c93 Workaround for Seer Hut offset. They seem to work fine now. 2016-01-08 21:51:55 +01:00
DjWarmonger
d840fb40eb Fixed crashes with RMG Seer Huts. Now they are functional. 2016-01-08 21:14:57 +01:00
Arseniy Shestakov
383f754ed1 Starting gold bonuses must be always multiples of 100 2016-01-07 20:51:37 +03:00
DjWarmonger
cdd50b1603 Version bump. 2016-01-01 20:06:38 +01:00
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
Arseniy Shestakov
29a7934a99 Refactoring: avoid using namespace when it's not absolutely needed 2015-12-29 02:14:08 +03:00
Arseniy Shestakov
6985e96f0d CGameHandler::newTurn: use next day TurnInfo to set correct hero MP
This hotfix actually fix issue 2083, but in future we need to rework new turn code anyway. See issue 2356.
2015-12-25 11:09:06 +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
Arseniy Shestakov
8eb4f14ff0 MoraleLuckBox: handle BLOCK_LUCK bonus. Fix issue 2130 2015-12-24 22:35:32 +03:00
Arseniy Shestakov
6f5c52a229 Refactoring: use cleaner CCreatureSet::stacksCount everywhere 2015-12-24 21:30:57 +03:00
Arseniy Shestakov
62bab27e7e CGArtifact: show yes/no dialog for guarded artifacts. Fix issue 2095
Also fix hover text for CGMine
2015-12-24 21:05:02 +03:00
Arseniy Shestakov
75ca020890 CCeatureSet: add getArmyDescription for hover and InfoWindow texts 2015-12-24 21:03:51 +03:00
DjWarmonger
a1f5a0a85c Removed unused code, which is not needed with new Pathfinder. 2015-12-24 11:28:14 +01:00
Arseniy Shestakov
9b2cc33f09 Added my contact email address 2015-12-24 01:37:16 +03:00
DjWarmonger
be50d699fb Compile fixes for MSVS 2015-12-23 15:23:56 +01:00
ArseniyShestakov
e3f2bb2c99 MXE support: avoid conflicts with some macros from headers 2015-12-22 01:59:51 +03:00
ArseniyShestakov
4124aacac8 CMake: add dbghelp to SYSTEM_LIBS for MiniDumpWriteDump. Fix issue 2312 2015-12-22 00:08:49 +03:00
ArseniyShestakov
48be566050 Dimension Door: fix movement points cost for expert level 2015-12-21 18:46:52 +03:00
ArseniyShestakov
87eaa78ffd Restore testing option changes overriten by merge 2015-12-19 12:12:35 +03:00
Ivan Savenko
a051a08a46 Merge remote-tracking branch 'origin/issue/2306' into develop 2015-12-18 22:21:11 +02:00
ArseniyShestakov
b6176649ec CGMonolith: avoid crash when all exits are blocked by friendly heroes 2015-12-18 01:08:19 +03:00
ArseniyShestakov
9490a5d66d CPathfinder: deny transit to land blockvis objs from water layer
When hero is in water walking layer he can only exit to accessible or visitable land tiles, but not objects that have blocking visit and leave hero standing on water.
This is different than default flying behaviour because hero in air layer can only transit into accessible land layer without any blocking or visitable objects on them.
2015-12-16 20:14:36 +03:00
ArseniyShestakov
bf9ac7318a CPathfinder: change cost calculation sequence for embark / disembark
With old embark cost calculation pathfinder may end up thinking that hero can embark/disembark while have less movement points than base movement cost is. Now hero would be only able to embark / disembark if we have enough movement points to step on that tile. This rule is also valid for situation when hero have Admiral's Hat as in H3 even if hero don't have embark penalty he still use move points for embark and disembark.

Problem was found as it's was causing infitite loop in AI. Server of course rejected attempt to embark with less than 100 movement points while pathfinder tell AI that it's can still embark with 93 movement points.
2015-12-15 20:08:52 +03:00
ArseniyShestakov
2724a67a27 CPathfinder: add border gate support and use passableFor 2015-12-14 14:33:50 +03:00
ArseniyShestakov
9f565b81e9 CBankInfo: fix huge memory leak that appear in long run 2015-12-14 11:29:24 +03:00