1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-11-28 08:48:48 +02:00
Commit Graph

3028 Commits

Author SHA1 Message Date
AlexVinS
a59f0c23ce Dedug tweaks 2016-02-13 17:16:00 +03:00
AlexVinS
5a92e0de2b Small redesign 2016-02-13 16:28:07 +03:00
AlexVinS
22b93106c8 Experimental drafts of Json serializer 2016-02-13 15:04:32 +03:00
AlexVinS
a307d3ca40 tweaks 2016-02-10 13:24:03 +03:00
AlexVinS
fb17914ae5 Debug tweaks 2016-02-10 08:59:24 +03:00
AlexVinS
3c78f960cd Complete json map format integration 2016-02-10 07:28:00 +03:00
Arseniy Shestakov
422d5cabdf CBattleInterface: first pass on client drawbridge visualization 2016-02-10 07:10:32 +03:00
AlexVinS
0c21efb202 Start integration of map format into engine 2016-02-09 20:20:03 +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
DjWarmonger
4de0f0f973 Compile fixes for MSVS. 2016-02-09 11:08:20 +01:00
Arseniy Shestakov
a07761b608 Battles: readable identifiers enum for drawbridge and gate hexes
Dont like to locate them in BattleHex, but it's best place I can see so far.
2016-02-09 12:25:13 +03:00
AlexVinS
6db94ab74c Explicit army serialization - too much CArmedInstance descendants 2016-02-09 10:11:59 +03:00
AlexVinS
53dc49e92a CGShipyard, CGShrine serialization 2016-02-09 09:17:20 +03:00
AlexVinS
401ba48257 CGScholar serialization 2016-02-09 09:02:34 +03:00
AlexVinS
a00dbd3dd1 Merge remote-tracking branch 'remotes/origin/develop' into feature/VCMIMapFormat1
Conflicts:
	lib/CMakeLists.txt
	lib/VCMI_lib.cbp
	lib/filesystem/CFileInputStream.cpp
	lib/filesystem/CZipLoader.cpp
	lib/rmg/CRmgTemplateZone.cpp
	vcmi.workspace
2016-02-08 10:17:25 +03:00
ArseniyShestakov
890ae43f55 Merge pull request #180 from Zyx-2000/FileInfo
Refactored CFileInfo & ResourceID
2016-02-08 04:55:39 +03:00
Arseniy Shestakov
a13aec4fd7 Aplly some fix for merge and explicitly specify type for std::max 2016-02-08 04:09:02 +03:00
DjWarmonger
441c94d56c Remove log for Seer Huts. 2016-02-06 15:11:56 +01:00
DjWarmonger
6f5706352d Possible fix for #2371 2016-02-06 12:36:56 +01:00
AlexVinS
081a20d047 Fix a crash. 2016-02-05 09:40:20 +03:00
AlexVinS
a3f0d1a94e More post-merge fixes 2016-02-05 09:28:36 +03:00
DjWarmonger
b98a83f743 Added string identifiers for terrain types. 2016-02-04 17:57:51 +01:00
AlexVinS
483276b128 Merge fixes 2016-02-04 12:28:12 +03:00
AlexVinS
6e205a58b4 Merge remote-tracking branch 'remotes/origin/develop' into feature/VCMIMapFormat1
Conflicts:
	lib/VCMI_lib.cbp
	lib/filesystem/CZipLoader.cpp
	lib/filesystem/CZipLoader.h
	lib/mapObjects/CGTownInstance.cpp
2016-02-04 10:27:51 +03:00
AlexVinS
97f19b5176 CGResource serialization 2016-02-04 09:22:14 +03:00
AlexVinS
d8d574ed84 CGSignBottle serialization 2016-02-04 08:50:46 +03:00
AlexVinS
a6c719ee11 CGCreature serialization. Added rewardResources. 2016-02-04 08:44:46 +03:00
DjWarmonger
e7b639898e Final compilation fix suggested by AVS. 2016-02-03 14:26:25 +01:00
AlexVinS
1bc41b3ba3 Merge commit '3c844002626f48007a888d4dd8b0b45ec867fc9a' into feature/VCMIMapFormat1
Conflicts:
	lib/mapObjects/CGHeroInstance.cpp
2016-02-03 05:04:44 +03:00
AlexVinS
b176734418 CGCreature serialization 2016-02-03 04:18:03 +03:00
DjWarmonger
0c82419fb0 Final compile fix, unfortunatelly game fails to launch now due to missing fill_fopen64_filefunc in minizip.dll :( 2016-02-02 19:16:12 +01:00
DjWarmonger
51183228f2 Merge branch 'develop' of https://github.com/vcmi/vcmi into develop 2016-02-02 18:48:42 +01:00
DjWarmonger
7cf2d79584 Final compile fix. 2016-02-02 18:48:20 +01:00
Alexander Shishkin
20fd7cf916 Merge pull request #190 from vmarkovtsev/feature/fix_uf_warning
Fix unused function warning in release mode
2016-02-02 15:23:37 +03:00
DjWarmonger
97117491ae Merge pull request #191 from vmarkovtsev/feature/psychic_elementals
I think we could implement general bonus that reduces damage depending on arbitrary immunity (or other bonus), but it's beyond the scope of this PR.
2016-02-02 13:02:13 +01:00
DjWarmonger
afd5b8807d Compile fix #2 2016-02-02 12:46:58 +01:00
Vadim Markovtsev
eb10433535 Implement psychic elementals vs mind immune units 2016-02-02 14:30:37 +03:00
DjWarmonger
6865f70ab8 Compile fix #1 2016-02-02 12:19:33 +01:00
DjWarmonger
c78d2469c5 Merge branch 'develop' of https://github.com/vcmi/vcmi into develop 2016-02-02 12:03:16 +01:00
Vadim Markovtsev
bdd87be10d Try to fix http://bugs.vcmi.eu/view.php?id=2362 2016-02-02 11:46:33 +03:00
Vadim Markovtsev
8d7629bdab Fix unused function warning in release mode 2016-02-02 11:12:28 +03:00
Vadim Markovtsev
88bc21952b Make stables message appear if hero has cavaliers but visited stables before 2016-02-01 09:41:15 +03:00
Vadim Markovtsev
c30a6f2ff3 Fix 1989 cavaliers -> champions in stables 2016-01-31 21:09:11 +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
e18b21b78e Fix 2264 learning stone & Learning skill 2016-01-31 10:12:01 +03:00
Vadim Markovtsev
eb4331baf6 Fix 1916 water wheel reward 2016-01-30 19:11:22 +03:00
Vadim Markovtsev
918fbd8530 Refactor hero's mana regain 2016-01-30 13:51:07 +03:00
Vadim Markovtsev
22fc4fd3e9 Fix 2406 reset potentially available heroes 2016-01-30 10:02:33 +03:00
AlexVinS
16e0d18880 Added special slots for war machines and arrow towers 2016-01-30 00:53:53 +03:00
Arseniy Shestakov
57328bdc83 Battles: implement basic drawbridge mechanics
Movement to blocking hex 94 not yet properly handled as stack movement code need to be rewritten first.
Also gate destruction not immidiately affect drawbridge state.
2016-01-29 22:43:35 +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
DjWarmonger
ca4e13b2dc Merge branch 'develop' of https://github.com/vcmi/vcmi into develop 2016-01-29 18:21:56 +01:00
DjWarmonger
9ce6f874f0 Local fixes. 2016-01-29 18:21:19 +01:00
ArseniyShestakov
a534fe1cfe Merge pull request #152 from vcmi/feature/moatHexesConfig
Configurable moat hexes positions
2016-01-29 20:07:22 +03:00
Arseniy Shestakov
75f278b913 moatHexes: use initializer list and update comment 2016-01-29 19:25:25 +03:00
Zyx-2000
7fbd5479e2 alignment & makefile fix 2016-01-29 16:08:44 +01:00
Zyx-2000
2b88de8e24 added new files 2016-01-29 15:39:44 +01:00
Zyx-2000
29faa9ce06 ...and project updated 2016-01-29 15:33:07 +01:00
Zyx-2000
523bc22a30 removed old files 2016-01-29 15:32:37 +01:00
Zyx-2000
8aefdb0b7b small project file fix 2016-01-29 15:30:22 +01:00
Zyx-2000
3a1a8e3d47 further refactoring-related changes 2016-01-29 15:16:14 +01:00
ArseniyShestakov
94fa25d56d Merge pull request #179 from vmarkovtsev/issue/2405
Fix 2405 quest timeout mechanics
2016-01-29 12:19:31 +03:00
Vadim Markovtsev
30d64e3e3c Fix 2405 quest timeout mechanics 2016-01-29 09:28:37 +03:00
AlexVinS
0011507e42 wipe constexpr on @DjWarmonger request 2016-01-29 00:34:54 +03:00
Arseniy Shestakov
8c39ecf538 moatHexes: add saves and mods compatability 2016-01-28 01:35:01 +03:00
Arseniy Shestakov
48aedaef47 Merge branch 'develop' into feature/moatHexesConfig 2016-01-28 01:15:08 +03:00
Arseniy Shestakov
b7fbbfdebe CQuest: add missing completedOption initialization for CGQuestGuard 2016-01-27 23:24:17 +03:00
DjWarmonger
fdfe7b6b06 Merge branch 'develop' of https://github.com/vcmi/vcmi into develop 2016-01-27 21:08:18 +01:00
DjWarmonger
327e95407e - Compile fixes part 1
- Project settings for MSVS
2016-01-27 21:08:08 +01:00
Zyx-2000
c3e8c8bc1c Merge branch 'develop' into FileInfo 2016-01-27 19:21:43 +01:00
ArseniyShestakov
4e8486da7b Merge pull request #160 from vmarkovtsev/issue/2388
Fix 2388 obelisks puzzle revealing
2016-01-27 20:49:03 +03:00
Vadim Markovtsev
0ac833cca4 Fix 2377 "Seer Empty Text" 2016-01-27 19:52:45 +03:00
AlexVinS
048e22dbe6 Fix build. 2016-01-27 19:32:59 +03:00
AlexVinS
d7c0c3759a Merge branch 'Zyx-develop' into develop
Conflicts:
	lib/filesystem/AdapterLoaders.h
2016-01-27 18:53:41 +03:00
ArseniyShestakov
3c84400262 Merge pull request #175 from vmarkovtsev/feature/switch_retreat_no_troops
Feature/switch retreat no troops
2016-01-27 18:49:29 +03:00
Alexander Shishkin
1472ed970d Merge pull request #176 from vmarkovtsev/issue/2160
Fix 2160 dismissing a VIP hero.
2016-01-27 18:28:57 +03:00
Vadim Markovtsev
9f3313524e Fix 2160 dismissing a VIP hero 2016-01-27 17:10:19 +03:00
Vadim Markovtsev
36eaa399e7 Add hardcodedFeature to switch winner's retreating with no troops 2016-01-27 16:42:17 +03:00
AlexVinS
bffdc2813d revert some project changes 2016-01-27 15:21:29 +03:00
DjWarmonger
94ecc3f520 Compilation fix. MVS 2013 doesn't support constexpr and it's not needed either. 2016-01-27 10:13:33 +01:00
DjWarmonger
fc62cabb68 Merge pull request #174 from vmarkovtsev/issue/981
Fix CGHeroInstance::isInitialized implementation
2016-01-27 09:43:53 +01:00
Vadim Markovtsev
f6679bba50 Fix CGHeroInstance::isInitialized implementation 2016-01-27 09:44:23 +03:00
Zyx-2000
92dd194c97 logger now supports unicode file paths 2016-01-26 22:42:15 +01:00
DjWarmonger
f626c0f9ed Merge pull request #173 from vmarkovtsev/issue/981
Fix 981 reset hero on hiring after retreat/surrender
2016-01-26 21:24:22 +01:00
Vadim Markovtsev
7772b6de74 Fix 981 reset hero on hiring after retreat/surrender 2016-01-26 22:48:31 +03:00
Zyx-2000
70e3c81b9f Replaced CFileInfo with more correct and efficient alternative 2016-01-26 14:51:38 +01:00
Vadim Markovtsev
40cb48d65e Replace std::remove_if with vstd::erase_if 2016-01-26 10:19:58 +03:00
ArseniyShestakov
6a7b1a1737 Merge pull request #161 from vmarkovtsev/issue/2076
Fix 2076 Grail removal
2016-01-26 09:01:43 +03:00
Arseniy Shestakov
97a8874ed7 CGCreature: fix crash on draw
Also according to H3 behaviour if there artifact monster guarded it's will be lost on draw.
2016-01-26 08:41:09 +03:00
Vadim Markovtsev
22eb71de03 Remove this-> occurrences in new code 2016-01-25 14:14:32 +03:00
Vadim Markovtsev
a74fbff34f Fix 2076 Grail removal 2016-01-25 12:38:11 +03:00
Vadim Markovtsev
afa95312ba Fix 2139 captured spell scroll descriptions 2016-01-25 08:49:26 +03:00
AlexVinS
0ec07b38ac fix build 2016-01-24 16:58:24 +03:00
AlexVinS
89d986fc6a Merge remote-tracking branch 'remotes/origin/develop' into feature/VCMIMapFormat1
Conflicts:
	lib/CArtHandler.h
	lib/mapObjects/MiscObjects.cpp
2016-01-24 15:39:41 +03:00
AlexVinS
408f346541 Drafts for hero serialization 2016-01-24 15:35:08 +03:00
AlexVinS
3eb9de0c0b Grail options serialization 2016-01-24 02:26:32 +03:00
ArseniyShestakov
b19e082f37 Merge pull request #166 from vmarkovtsev/issue/1723
Fix 1723 quest crash on combined arts
2016-01-23 23:23:07 +03:00
AlexVinS
f9d0b20234 CGMine, CGArtifact, CGGarrison serialization 2016-01-23 19:53:02 +03:00
AlexVinS
b0c4ea5947 Fix. 2016-01-23 17:43:20 +03:00
Vadim Markovtsev
a266154b26 Fix 2014 cursor must disappear during movement and Magi's Eye 2016-01-23 00:35:41 +03:00
Vadim Markovtsev
11bce2908d Fix 1723 quest crash on combined arts 2016-01-22 12:56:25 +03:00
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
Zyx-2000
c385c8757b TAB instead of spaces 2016-01-19 20:53:29 +01:00
Zyx-2000
2a55d5f85e added copyright info 2016-01-19 14:26:18 +01:00
Zyx-2000
64365fa294 additional polishing 2016-01-19 11:56:03 +01:00
Zyx-2000
170e4283ae Small improvements to FileStream 2016-01-18 21:30:06 +01: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
Zyx-2000
a50a702073 switched to -std=gnu++11 2016-01-18 17:49:07 +01:00
Arseniy Shestakov
575a68d78b CRewardableObject: fix onVisited message duplication for Idol of Fortune 2016-01-17 15:16:35 +03:00
Zyx-2000
cf61837ced replaced std::string with boost::filesystem::path in several places 2016-01-16 16:36:16 +01: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
AlexVinS
a638d0cd51 Creature set serialization 2016-01-15 20:24:17 +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
Zyx-2000
933b7c1f5e some modernization of CFileInputStream implementation code 2016-01-12 23:40:24 +01:00
Zyx-2000
f9b255c896 Cleaner code & MSVC compatibility 2016-01-12 22:40:05 +01:00
Zyx-2000
1f4bc0f2e4 Merge branch 'develop' of https://github.com/vcmi/vcmi into develop 2016-01-11 22:38:47 +01:00
Zyx-2000
99cf8069d7 FileStream files 2016-01-09 21:24:20 +01:00
Zyx-2000
203b2dccc3 hopefully fixed things 2016-01-09 21:23:55 +01: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
Arseniy Shestakov
c93f8fea48 moatHexes: implement reading moat hexes from configuration files
This also fix Fortess moat that previously used wrong hexes
2016-01-06 12:53:40 +03:00
DjWarmonger
cdd50b1603 Version bump. 2016-01-01 20:06:38 +01:00
AlexVinS
37d0dad70a Merge branch 'develop' into feature/VCMIMapFormat1
Conflicts:
	lib/CArtHandler.cpp
2016-01-01 20:28:52 +03: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
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
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
be50d699fb Compile fixes for MSVS 2015-12-23 15:23:56 +01:00
ArseniyShestakov
48be566050 Dimension Door: fix movement points cost for expert level 2015-12-21 18:46:52 +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
ArseniyShestakov
59199ccdbd Bonus system: add treeHasChanged call where bonus objects changed 2015-12-11 16:13:18 +03:00
ArseniyShestakov
1730a31471 HeroBonus: get rid of code that used getBonusList 2015-12-11 16:01:51 +03:00
ArseniyShestakov
8fb5dacba2 CBonusSystemNode: get rid of non-const getBonusList 2015-12-11 15:02:36 +03:00