This commit is contained in:
Veronika Polevara 2023-03-21 20:43:10 +01:00
commit 7809879c7c
4 changed files with 39 additions and 10 deletions

View File

@ -1,20 +1,24 @@
import sys import sys
import pygame import pygame
class Colors():
class Colors:
BLACK = 0, 0, 0 BLACK = 0, 0, 0
WHITE = 255, 255, 255 WHITE = 255, 255, 255
RED = 255, 0, 0 RED = 255, 0, 0
GREEN = 0, 255, 0 GREEN = 0, 255, 0
DEFAULT_COLOR = Colors.WHITE DEFAULT_COLOR = Colors.WHITE
def default_color(func): def default_color(func):
def wrap(*args, **kwargs): def wrap(*args, **kwargs):
if 'color' not in kwargs: if "color" not in kwargs:
kwargs['color'] = DEFAULT_COLOR kwargs["color"] = DEFAULT_COLOR
result = func(*args, **kwargs) result = func(*args, **kwargs)
return result return result
return wrap return wrap
class GridDraw(): class GridDraw():
@ -56,7 +60,7 @@ class GridDraw():
pygame.time.delay(delay) pygame.time.delay(delay)
@default_color @default_color
def line(self, x_1, y_1, x_2, y_2, color = None): def line(self, x_1, y_1, x_2, y_2, color=None):
pygame.draw.line(self.screen, color, (x_1, y_1), (x_2, y_2)) pygame.draw.line(self.screen, color, (x_1, y_1), (x_2, y_2))
@default_color @default_color

25
Interface/movement.py Normal file
View File

@ -0,0 +1,25 @@
import pygame
import sys
def robot_movement(grid_width, grid_height, tile_width, tile_height, x, y):
for event in pygame.event.get():
if event.type == pygame.QUIT:
sys.exit()
if event.type == pygame.KEYDOWN:
# go left
if event.key == pygame.K_LEFT and x > (tile_width / 2):
x -= tile_width
# go right
if event.key == pygame.K_RIGHT and x < (grid_width - (tile_width / 2)):
x += tile_width
# go up
if event.key == pygame.K_UP and y > (tile_height / 2):
y -= tile_height
# go down
if event.key == pygame.K_DOWN and y < (grid_height - (tile_height / 2)):
y += tile_height
return (x, y)

View File

@ -8,6 +8,9 @@ GRID_SIZE_Y = 10
# dummy function # dummy function
def initial_draw(): def initial_draw():
# window name
pygame.display.set_caption("AI Vacuum Cleaner")
grid = GridDraw(800, 800, GRID_SIZE_X, GRID_SIZE_Y) grid = GridDraw(800, 800, GRID_SIZE_X, GRID_SIZE_Y)
x = 2 x = 2
@ -22,7 +25,6 @@ def initial_draw():
while True: while True:
grid.start_draw() grid.start_draw()
# grid.draw_vacuum(x, y)
grid.fill_grid_with_sprite('TILE') grid.fill_grid_with_sprite('TILE')
grid.board() grid.board()
@ -46,5 +48,3 @@ def initial_draw():
y = (y + 1 + GRID_SIZE_Y) % GRID_SIZE_Y y = (y + 1 + GRID_SIZE_Y) % GRID_SIZE_Y
grid.end_draw(delay=10) grid.end_draw(delay=10)