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

335 Commits

Author SHA1 Message Date
Arseniy Shestakov
f1e5797834 Code style: move or add licensing information on top of every file 2017-07-14 01:26:03 +03:00
AlexVinS
bc626c2446 Fixed race condition 2017-07-12 18:26:20 +03:00
AlexVinS
3d1a84875e Queries refactoring
* Moved SUMMON_BOAT special case to mechanics
* Partially moved Town portal logic to mechanics class
* Added generic query reply to CCallback
* Redesigned Queries so that base API do not depends on CGameHandler
* Got rid of CGameHandler::castSpellRequest
* Removed CGameHandler::castSpell
* Added new Query type for town portal dialog (not used yet)
2017-07-03 21:43:04 +03:00
AlexVinS
86f9df5f68 Made gamestate lock static 2017-06-14 07:59:41 +03:00
DJWarmonger
9623f7caf3 - Restored MSVS project files
- Fixed VCAI bu pointed out by Tow
2017-06-11 08:01:41 +02:00
Dydzio
3326bfc067 Naming fix 2017-02-18 21:10:59 +01:00
dydzio
a4f375d9c0 Make AI able tobuy extra buildings. Fix bug #2640 2017-02-18 18:40:44 +01:00
Michał Kalinowski
4d39f652bf Making more detailed options when choosing AI in launcher: http://
bugs.vcmi.eu/view.php?id=2369
2017-01-17 12:34:28 +01:00
DjWarmonger
6848a52ce1 Fixed heroes not unreserving Teleports, which makes them wander around it endlessly and blocking path.
TODO: properly handle all Teleports as "visited" objects
2016-12-19 21:46:01 +01:00
DjWarmonger
01730ec98a A little TODO 2016-12-12 22:52:18 +01:00
DjWarmonger
27ff9efd4b Fixed #1713 2016-12-12 21:38:12 +01:00
AlexVinS
4288bb88ae Fixed CID 1197622.
* Coverity says that this line actually unreachable
2016-12-05 03:02:52 +03:00
DjWarmonger
72a36b92d6 Fixed regression. 2016-11-29 18:11:52 +01:00
DjWarmonger
67d5cee05e Fixed CID 1366402 2016-11-29 17:19:41 +01:00
DjWarmonger
81e7164ef2 Fixed CID 1366401 2016-11-29 17:12:10 +01:00
DjWarmonger
ffc511054e Do not visit Eye of The Magi. 2016-11-28 21:45:41 +01:00
DjWarmonger
9b5af484b7 Fixed AI getting stuck at blockVisit objects (Tavern, Borderguards/gates etc). 2016-11-28 19:29:11 +01:00
DjWarmonger
76c4ef32c2 Re-evaluate goal after hero move to make AI more consistent. 2016-11-27 18:10:20 +01:00
AlexVinS
86e33a4c45 [Refactoring] Unified SetResources NetPack API. 2016-11-26 15:14:43 +03:00
Ivan Savenko
5b76c3f4eb Rebase of codebase changes for refactored serializer
Some of newer fixes not yet merged there and save compatibility a bit off.
2016-10-27 18:12:20 +03:00
Vadim Markovtsev
4bcc43d3d0 Fix Mantis #2234
CPlayerInterface instances were removed from CClient::playerint with
clear() and finish() was not called on each. Added multiple insurance.
2016-10-22 16:22:00 +02:00
Arseniy Shestakov
02a45007e7 VCAI::showGarrisonDialog: don't try to pick army from locked garrison 2016-09-19 03:30:55 +03:00
Arseniy Shestakov
84137dcaa5 Add DLL_LINKAGE to getStr and fix player id logging in VCAI 2016-09-16 05:45:00 +03:00
Arseniy Shestakov
30042cac3d VCAI::performTypicalActions: always check that hero is still available
It's weird why this only appear now so if you have ideas check issue 2479.
2016-09-16 04:52:17 +03:00
Arseniy Shestakov
ca0fe8fdc4 VCAI: do not attempt artefact and army exchange with ally hero
While visits of ally heroes supposedly occur accidentally It's still nice to handle it's gracefully.
No reason to prevent visits completely as they useful if hero have skill like Scholar.
2016-09-14 13:34:22 +03:00
Arseniy Shestakov
7ec9601acd VCAI: safety checks to avoid crashes with boat objects
Probably we should rewrite boat-related code to make AI boat handling easier.
2016-09-14 03:44:35 +03:00
Arseniy Shestakov
6dcb9a6068 VCAI: don't remove flagged objects from visitableObjs
This make my new shipyard-related changes work properly and might improve owned dwelling usage.
In case there still some code that might cause useless visits it's better just rewrite it insted of removing objects from visitableObjs.
2016-09-13 23:39:32 +03:00
Arseniy Shestakov
8e94b1c4d2 VCAI::objectRemoved: handle hero boat removal. Fix issue 2350
Avoid situation when AI attempt to visit boat after it's killed hero who used it.
2016-09-04 15:44:42 +03:00
Alexander Shishkin
5e5ce0bb09 Merge pull request #203 from vcmi/logFormat
boost::format support for CLogger
2016-08-29 17:32:44 +04:00
Arseniy Shestakov
452e28d183 Remove some useless includes found by cppclean
This of course was tested and shouldn't break anything
2016-08-26 04:42:16 +03:00
Arseniy Shestakov
39fe9472b6 CGameHandler::moveArtifact: check lock status by slot instead of id
This one fix issue 2455. We still need to do something with ArtifactID::ART_LOCK or ids for artifact from mods since they might conflict with each other.
2016-08-18 06:35:29 +03:00
Arseniy Shestakov
91c298bdaa VCAI::tileHidden: added clearPathsInfo
Sector map likely updated anyway after AI turn starts, but cleaning of heroesUnableToExplore when tile hidden feels reasonable.
2016-08-18 03:51:00 +03:00
Arseniy Shestakov
c931fa5081 SectorMap::exploreNewSector: only store visible visitable objects
Fix crash that I initially missed. AI unable to access information about hidden objects like events via callbacks so we shouldn't store them here too.
2016-08-18 03:33:23 +03:00
AlexVinS
f06e9c8538 VCAI convert logging 2016-08-15 08:30:06 +03:00
AlexVinS
22884d9150 AI logging convert 1 2016-08-13 17:44:37 +03:00
Arseniy Shestakov
7bdcd209e6 VCAI::wander: only use nearby objects from SectorMap when possible
Now AI only check full object list if there is no suitable objects found in current sector and sectors around it.
This optimization drastically increase wandering performance on maps with tons of objects when AI see most of it.
2016-08-12 09:08:53 +03:00
Arseniy Shestakov
aabf4808da SectorMap: remember all visitable objects in sector for wandering 2016-08-12 09:02:14 +03:00
Arseniy Shestakov
b83dea2008 VCAI::wander: map object selection refactoring
Avoid doing extra steps that's not needed. Related to issue 2454.
2016-08-11 16:53:05 +03:00
Arseniy Shestakov
8533ee3256 VCAI::validateVisitableObjs: drop unused code that
For whatever reason it's not removed at compile time and still wasting CPU.
2016-08-11 14:54:58 +03:00
Arseniy Shestakov
6433d7dd40 VCAI::getFlaggedObjects: don't use thread specific ptr within VCAI 2016-08-11 12:19:08 +03:00
Arseniy Shestakov
25fd4d85e2 VCAI::getFlaggedObjects: use visitableObjs for better performance
This change is drastically improve performance on maps with water. One part that caused issue 2454.
2016-08-11 03:58:24 +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
Arseniy Shestakov
5778082842 VCAI: dont visit border guard if tent not visited. Fix issue 1590
CQuest::checkQuest cant be used for border guard since CGKeys not yet work using quests.
Currently border guard have MISSION_NONE quest that always return true and make AI stuck.
2016-02-25 08:40:28 +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
2bfc8ec8cb Fix AI hero infinite move on the same tile 2016-01-19 13:14:05 +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
6f5c52a229 Refactoring: use cleaner CCreatureSet::stacksCount everywhere 2015-12-24 21:30:57 +03:00
DjWarmonger
a1f5a0a85c Removed unused code, which is not needed with new Pathfinder. 2015-12-24 11:28:14 +01:00
Ivan Savenko
a051a08a46 Merge remote-tracking branch 'origin/issue/2306' into develop 2015-12-18 22:21:11 +02:00