private void AddAllWalkableNeighbours(PathNode p)
        {
            if (!m_logicGrid.Grid[p.x, p.y].IsWalkable)
            {
                return;
            }

            p.AddNeighbour(GetNodeIfWalkable(p.x - 1, p.y));
            p.AddNeighbour(GetNodeIfWalkable(p.x - 1, p.y - 1));
            p.AddNeighbour(GetNodeIfWalkable(p.x - 1, p.y + 1));

            p.AddNeighbour(GetNodeIfWalkable(p.x + 1, p.y));
            p.AddNeighbour(GetNodeIfWalkable(p.x + 1, p.y - 1));
            p.AddNeighbour(GetNodeIfWalkable(p.x + 1, p.y + 1));

            p.AddNeighbour(GetNodeIfWalkable(p.x, p.y - 1));
            p.AddNeighbour(GetNodeIfWalkable(p.x, p.y + 1));

            foreach (PathNode n in p.GetNeighbourList())
            {
                n.AddNeighbour(p);
            }
        }