import pygame as pg import numpy as np import random from UI.grid import Grid, Node from UI.Apath import APath class Window(): def __init__(self, grid: Grid): pg.init() # pylint: disable=no-member # setup window pg.display.set_caption('Inteligentna śmieciarka') self.grid = grid # assign to variables for brevity cols = self.grid.cols rows = self.grid.rows width = Node.r_width height = Node.r_height margin = Node.r_margin screen_width = cols * (width + margin) + 2 * margin screen_height = rows * (height + margin) + 2 * margin self.screen = pg.display.set_mode([screen_width, screen_height]) self.end = False self.clock = pg.time.Clock() grid.change_field(0, 0, 1) grid.change_field(19, 19, 2) #random obsticle for x in range(100): grid.change_field(random.randint(1,18),random.randint(1,18),3) #path path = [(i, i) for i in range(1, 20, 1)] self.grid.draw_map(self.screen) #copy table array = [[self.grid.table[col][row] for row in range(cols)] for col in range(rows)] path = APath(array,(0,0),(19,19)) print(path,"\n\n") for index, t in enumerate(path): x,y =t if index != 0: self.grid.change_field(path[index-1][0],path[index-1][1],4) self.grid.change_field(x, y, 1) self.grid.draw_node(self.screen, path[index-1][0],path[index-1][1]) self.grid.draw_node(self.screen, x, y) pg.time.delay(500) pg.quit() # pylint: disable=no-member