drobna poprawa A*
This commit is contained in:
parent
421b42d578
commit
efa0e7ddfc
5
tiles.py
5
tiles.py
@ -308,7 +308,7 @@ def astar(map, start, end):
|
|||||||
current_tile = open_list[0]
|
current_tile = open_list[0]
|
||||||
current_index = 0
|
current_index = 0
|
||||||
for index, item in enumerate(open_list):
|
for index, item in enumerate(open_list):
|
||||||
if item.f < current_tile.f:
|
if item.f <= current_tile.f:
|
||||||
current_tile = item
|
current_tile = item
|
||||||
current_index = index
|
current_index = index
|
||||||
|
|
||||||
@ -336,7 +336,7 @@ def astar(map, start, end):
|
|||||||
if child == closed_child:
|
if child == closed_child:
|
||||||
skip = True
|
skip = True
|
||||||
if skip is False:
|
if skip is False:
|
||||||
child.g = map[child.position[0]][child.position[1]]
|
child.g = current_tile.g + map[child.position[0]][child.position[1]]
|
||||||
child.h = np.absolute(child.position[0] - end_tile.position[0]) + np.absolute(child.position[1] - end_tile.position[1])
|
child.h = np.absolute(child.position[0] - end_tile.position[0]) + np.absolute(child.position[1] - end_tile.position[1])
|
||||||
child.f = child.g + child.h
|
child.f = child.g + child.h
|
||||||
for open_node in open_list:
|
for open_node in open_list:
|
||||||
@ -344,6 +344,7 @@ def astar(map, start, end):
|
|||||||
continue
|
continue
|
||||||
open_list.append(child)
|
open_list.append(child)
|
||||||
|
|
||||||
|
|
||||||
map = Map()
|
map = Map()
|
||||||
waiter = Waiter([32, 32])
|
waiter = Waiter([32, 32])
|
||||||
tables = []
|
tables = []
|
||||||
|
Loading…
Reference in New Issue
Block a user