Index: core3/branches/unstable/MMOCoreORB/src/server/zone/managers/collision/CollisionManager.cpp =================================================================== diff -u -N -r5553 -r5878 --- core3/branches/unstable/MMOCoreORB/src/server/zone/managers/collision/CollisionManager.cpp (.../CollisionManager.cpp) (revision 5553) +++ core3/branches/unstable/MMOCoreORB/src/server/zone/managers/collision/CollisionManager.cpp (.../CollisionManager.cpp) (revision 5878) @@ -17,6 +17,7 @@ #include "server/zone/templates/appearance/MeshAppearanceTemplate.h" #include "server/zone/managers/terrain/TerrainManager.h" #include "server/zone/managers/planet/PlanetManager.h" +#include "server/zone/managers/collision/PathFinderManager.h" #include "server/zone/objects/ship/ShipObject.h" #include "server/zone/objects/area/ActiveArea.h" @@ -372,6 +373,15 @@ if (object2->getZone() != zone) return false; + if (object1->isAiAgent() || object2->isAiAgent()) { + Vector* path = PathFinderManager::instance()->findPath(object1, object2); + + if (path == NULL) + return false; + else + delete path; + } + ManagedReference rootParent1 = object1->getRootParent(); ManagedReference rootParent2 = object2->getRootParent(); @@ -400,8 +410,6 @@ CloseObjectsVector* vec = (CloseObjectsVector*) object1->getCloseObjects(); vec->safeCopyTo(*closeObjects); } - - if (object1->isCreatureObject()) heightOrigin = getRayOriginPoint(cast(object1)); @@ -485,7 +493,6 @@ } return true; - }