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

663 Commits

Author SHA1 Message Date
ArseniyShestakov
c7ca88f84b Merge pull request #157 from vmarkovtsev/issue/2383
Issue/2383 fix invalid AI path detection
2016-01-23 22:02:10 +03:00
Vadim Markovtsev
6eefce23fe Check against nullptr in VisitHero::fulfillsMe() 2016-01-19 21:15:07 +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
Vadim Markovtsev
0661aa0e6e Remove undefined behavior in requestActionASAP 2015-12-13 11:04:42 +03:00
ArseniyShestakov
ab92123da3 CPathfinder: improve support for visits and battles in teleports
Related movement code for client and AI is plumbed as well. Though at moment code still not finished because it's not teleport hero to the exit tile if he won battle.
2015-12-11 09:42:30 +03:00
ArseniyShestakov
975e049a3e SectorMap: disable knownSubterraneanGates support to avoid loops 2015-12-10 17:35:46 +03:00
ArseniyShestakov
5aadc1ed6f CasualtiesAfterBattle: dont remove catapult artifact. Fix 2346 issue 2015-12-10 13:31:03 +03:00
ArseniyShestakov
9e6f836b25 VCAI::pickBestArtifacts: don't try to move catapult between heroes 2015-12-09 18:49:22 +03:00
ArseniyShestakov
1c0d4e3f6f Fix filenames in file headers 2015-12-08 09:53:14 +03:00
ArseniyShestakov
07807fb044 Client: slience visibility error on shipyard in non-coastal town 2015-12-08 07:33:13 +03:00
ArseniyShestakov
cf4cb5c948 VCAI: silence callback on visibility check 2015-12-08 04:18:31 +03:00
ArseniyShestakov
03e9dd3bab Add hero gold cost to GameConstants 2015-12-07 00:13:58 +03:00
AlexVinS
0fab319c73 Merge remote-tracking branch 'remotes/origin/develop' into issue/2306
s reverts commit fa8a282696.

Conflicts:
	AI/VCAI/VCAI.cpp

Conflicts:
	AI/VCAI/VCAI.cpp
	client/windows/CAdvmapInterface.cpp
	lib/CPathfinder.cpp
	lib/CPathfinder.h
2015-12-05 12:56:12 +03:00
ArseniyShestakov
7708810148 VCAI: don't serialize destinationTeleportPos to avoid crash
This won't affect AI functionality except if game saved while AI moving through teleporters.
Serialization for some reason don't work properly and cause save loading to fail.
2015-12-05 08:08:02 +03:00
ArseniyShestakov
0a5e9c0fbe Merge pull request #144 from vcmi/fix/teleportMultiExitPoints
Support for exit selection between multiple teleport exit points
2015-12-05 03:12:17 +03:00
ArseniyShestakov
791d1e7ab4 VCAI: finish fixing of teleport probing for whirlpools 2015-12-04 05:30:43 +03:00
Ivan Savenko
faa7cbff18 Fixed gcc/clang warnings 2015-12-04 01:17:43 +02:00
ArseniyShestakov
3800bd45b7 Movement: initialize destinationTeleportPos with invalid int3 position 2015-12-04 01:54:25 +03:00
Ivan Savenko
c2f4991e99 Replaced barrier with mutex due to data races:
Destruction of barrier while one of the threads is still in barrier.wait() is illegal. This may happen if caller thread reaches wait() after helper thread and immediately return's from the function destroying barrier which is still in use by helper thread
2015-12-04 00:12:49 +02:00
Ivan Savenko
2e56b547ee replaced references to SectorMap with shared_ptr to avoid data races in AI code 2015-12-04 00:10:51 +02:00
Ivan Savenko
73b4188fab Fixed access to unitialized memory causing StupidAI to act stupid 2015-12-03 21:28:01 +02:00
ArseniyShestakov
ee08749743 VCAI: more work on teleport exit probing 2015-12-03 21:18:40 +03:00
ArseniyShestakov
2f9ca778b2 VCAI: add channel probing support for teleporters with multiple exits 2015-12-03 17:20:03 +03:00
Ivan Savenko
7189a12df2 removed few more includes from headers 2015-12-02 22:10:46 +02:00
Ivan Savenko
7b5a7f43ad Removed includes of CGameState from headers 2015-12-02 21:39:53 +02:00
Ivan Savenko
c3ce4b25df Removed all #include's of CMap.h from headers.
To all - please, avoid #include's in headers as much as possible
This kills incremental build compile times
2015-12-02 21:05:10 +02:00
ArseniyShestakov
eb9f29e368 VCAI: restoring teleport probing feature for updated mechanics 2015-12-02 19:26:24 +03:00
ArseniyShestakov
b5100bee94 Teleport: rework code to support exit point selection for whirlpools 2015-12-02 17:56:26 +03:00
ArseniyShestakov
f55bfe41d6 Digging: implement digging status on right click. Fix issue 401
This is also fix possibility to dig on some non-blockable objects like event.
2015-11-29 12:34:23 +03:00
ArseniyShestakov
f6de3f94ca Teleports: use TTeleportExitsList typedef for exits list
There is several ideas that teleportation code have to be shared between object/spells and this way we can avoid changing showTeleportDialog declaration every time.
2015-11-28 02:41:30 +03:00
ArseniyShestakov
2ef9d7c3ec Rename getCost back to getMovementCost
Initially wanter to name main class differently and back then getCost make sense.
Then renamed class to CPathfinderHelper, but forgot to rename function back.
2015-11-10 02:30:05 +03:00
ArseniyShestakov
b2e1ee5363 CGameState: move two pathfinding-related functions to CPathfinderHelper
Both getMovementCost and getNeighbours have nothing to do with gamestate.
2015-11-10 02:15:27 +03:00
ArseniyShestakov
5106738160 Merge branch 'develop' into feature/pathfinderLayers 2015-11-09 19:20:13 +03:00
ArseniyShestakov
866a0a1fc0 VCAI: little improvement for 2a59cb6191 2015-11-08 23:02:59 +03:00
ArseniyShestakov
ac12a0735e Plumbing on client and server to make flying actually work 2015-11-05 10:02:13 +03:00
ArseniyShestakov
4b64bec711 EPathfindingLayer: copy other code from ETerrainType for debugging 2015-11-02 13:25:01 +03:00
ArseniyShestakov
2b6e1498d2 Pathfinding: change argument order for getPath and AUTO layer as default
This still need investigation, but likely most of external code shouldn't be aware of layers in order to work properly because only LAND and SAIL can be targeted and single tile can't have both of these layers.
2015-11-02 11:14:32 +03:00
AlexVinS
d46364c4c3 Merge branch 'develop' into issue/2306
Need to reapply changes to pathfiner

Conflicts:
	AI/VCAI/VCAI.cpp
	lib/CGameState.cpp
	lib/CGameStateFwd.h
2015-11-01 01:49:57 +03:00
Vadim Markovtsev
fa8a282696 Fix pthread_mutex_lock abort() in requestActionASAP impl 2015-10-31 18:04:06 +03:00
DjWarmonger
1e36f3cecd Cache SectorMap where possible and update when necessary. 2015-10-26 16:38:17 +01:00
AlexVinS
c9e03405f2 fix a warning 2015-10-25 23:17:33 +03:00
AlexVinS
e8e484bbca Merge branch 'mutexRelax_fix' into develop 2015-10-25 22:35:19 +03:00
DjWarmonger
2a59cb6191 Fixed #2308 - AI didn't attack enemy heroes at all. 2015-10-25 11:55:50 +01:00
DjWarmonger
768b1ca289 More consitent code. 2015-10-25 11:16:43 +01:00
DjWarmonger
87f838f286 AI should poke inaccessible Quest Guards less often. 2015-10-25 08:39:03 +01:00