2
0
forked from s444420/AL-2020
AL-2020/board.py
2020-06-09 20:46:21 +02:00

58 lines
1.7 KiB
Python

import pygame
from settings import Settings
from field import Field
from shelf import Shelf
settings = Settings()
shelfs_o = []
def create_board(screen):
board = []
shelfs = [
(50, 50), (150, 50), (450, 50), (550, 50), (850, 50), (950, 50),
(250, 250), (350, 250), (650, 250), (750, 250),
(50, 450), (150, 450), (450, 450), (550, 450), (850, 450), (950, 450),
(250, 650), (350, 650), (650, 650), (750, 650),
]
for y in range(settings.y_fields):
row = []
for x in range(settings.x_fields):
field = Field(screen, x, y, 50 + x * 100, 50 + y * 100, False, False, 1)
for shelf in shelfs:
if field.center_x == shelf[0] and field.center_y == shelf[1]:
field.is_shelf = True
field.image = pygame.image.load('img/shelf.png')
shelfs_o.append(Shelf(x, y))
row.append(field)
board.append(row)
for row in board:
for field in row:
field.add_neighbors(board)
for row in board:
for field in row:
if field.x > 0 and board[field.y][field.x - 1].is_shelf:
field.cost_of_travel += 1
if field.x < 9 and board[field.y][field.x + 1].is_shelf:
field.cost_of_travel += 1
if field.y > 0 and board[field.y - 1][field.x].is_shelf:
field.cost_of_travel += 1
if field.y < 9 and board[field.y + 1][field.x].is_shelf:
field.cost_of_travel += 1
return board
def draw_board(board):
for row in board:
for field in row:
field.blitme()
def get_shelfs():
return shelfs_o