Aka_s_Vayne.Logic.Mechanics.GetFirstNonWallPos C# (CSharp) Method

GetFirstNonWallPos() public static method

public static GetFirstNonWallPos ( Vector2 startPos, Vector2 endPos ) : Vector2
startPos Vector2
endPos Vector2
return Vector2
        public static Vector2 GetFirstNonWallPos(Vector2 startPos, Vector2 endPos)
        {
            int distance = 0;
            for (int i = 0; i < Manager.MenuManager.CondemnPushDistance; i += 20)
            {
                var cell = startPos.Extend(endPos, endPos.Distance(startPos) + i);
                if (NavMesh.GetCollisionFlags(cell).HasFlag(CollisionFlags.Wall) ||
                    NavMesh.GetCollisionFlags(cell).HasFlag(CollisionFlags.Building))
                {
                    distance = i - 20;
                }
            }
            return startPos.Extend(endPos, distance + endPos.Distance(startPos));
        }