瀏覽代碼

Merge pull request #5931 from Opuszek/fix_sanctuary

fixes sanctuary behavior
Ivan Savenko 3 月之前
父節點
當前提交
34f74fcec9
共有 1 個文件被更改,包括 7 次插入5 次删除
  1. 7 5
      lib/pathfinder/PathfinderUtil.h

+ 7 - 5
lib/pathfinder/PathfinderUtil.h

@@ -33,12 +33,14 @@ namespace PathfinderUtil
 		case ELayer::SAIL:
 		case ELayer::SAIL:
 			if(tinfo.visitable())
 			if(tinfo.visitable())
 			{
 			{
-				auto frontVisitable = gameInfo.getObjInstance(tinfo.visitableObjects.front());
-				auto backVisitable = gameInfo.getObjInstance(tinfo.visitableObjects.front());
-
-				if(frontVisitable->ID == Obj::SANCTUARY && backVisitable->ID == Obj::HERO && backVisitable->getOwner() != player) //non-owned hero stands on Sanctuary
+				if (tinfo.visitableObjects.size() > 1)
 				{
 				{
-					return EPathAccessibility::BLOCKED;
+					auto frontVisitable = gameInfo.getObjInstance(tinfo.visitableObjects.front());
+					auto backVisitable = gameInfo.getObjInstance(tinfo.visitableObjects.back());
+					if(frontVisitable->ID == Obj::SANCTUARY && backVisitable->ID == Obj::HERO && backVisitable->getOwner() != player)
+					{
+						return EPathAccessibility::BLOCKED;
+					}
 				}
 				}
 				else
 				else
 				{
 				{