@@ -33,14 +33,14 @@ def build_nodes(width, height, matrix=None, inverse=False):
3333
3434
3535class Grid (object ):
36- def __init__ (self , width = 0 , height = 0 , matrix = None , inverse = False , passable_left_right_border = False , passable_up_down_border = False ):
36+ def __init__ (self , width = 0 , height = 0 , matrix = None , inverse = False ):
3737 """
3838 a grid represents the map (as 2d-list of nodes).
3939 """
4040 self .width = width
4141 self .height = height
42- self .passable_left_right_border = passable_left_right_border
43- self .passable_up_down_border = passable_up_down_border
42+ self .passable_left_right_border = False
43+ self .passable_up_down_border = False
4444 if isinstance (matrix , (tuple , list )) or (
4545 USE_NUMPY and isinstance (matrix , np .ndarray ) and
4646 matrix .size > 0 ):
@@ -50,7 +50,13 @@ def __init__(self, width=0, height=0, matrix=None, inverse=False, passable_left_
5050 self .nodes = build_nodes (self .width , self .height , matrix , inverse )
5151 else :
5252 self .nodes = [[]]
53-
53+
54+ def set_passable_left_right_border (self ):
55+ self .passable_left_right_border = True
56+
57+ def set_passable_up_down_border (self ):
58+ self .passable_up_down_border = True
59+
5460 def node (self , x , y ):
5561 """
5662 get node at position
@@ -95,7 +101,7 @@ def neighbors(self, node, diagonal_movement=DiagonalMovement.never):
95101 neighbors .append (self .nodes [y - 1 ][x ])
96102 s0 = True
97103 # →
98- if x == self .width and self .passable_left_right_border :
104+ if x == self .width - 1 and self .passable_left_right_border :
99105 if self .walkable (0 , y ):
100106 neighbors .append (self .nodes [y ][0 ])
101107 s1 = True
@@ -104,7 +110,7 @@ def neighbors(self, node, diagonal_movement=DiagonalMovement.never):
104110 neighbors .append (self .nodes [y ][x + 1 ])
105111 s1 = True
106112 # ↓
107- if y == self .height and self .passable_up_down_border :
113+ if y == self .height - 1 and self .passable_up_down_border :
108114 if self .walkable (x , 0 ):
109115 neighbors .append (self .nodes [0 ][x ])
110116 s2 = True
0 commit comments