import pygame import settings class Instance: def __init__(self): size = settings.Field.size self.rect = pygame.Rect(0, 0, size(), size()) self.action = '' def current_field_pos(self): return { 'x': self.x(), 'y': self.y() } def x(self): return int(self.rect.x / settings.Field.size()) def y(self): return int(self.rect.y / settings.Field.size()) def move(self): key_pressed = pygame.key.get_pressed() height = settings.Pygame.height() width = settings.Pygame.width() tile_size = settings.Field.size() if key_pressed[pygame.K_LEFT] and self.rect.x > 0: self.rect.x -= tile_size return False elif key_pressed[pygame.K_RIGHT] and self.rect.x < width - tile_size: self.rect.x += tile_size return False elif key_pressed[pygame.K_UP] and self.rect.y > 0: self.rect.y -= tile_size return False elif key_pressed[pygame.K_DOWN] and self.rect.y < height - tile_size: self.rect.y += tile_size return False elif key_pressed[pygame.K_SPACE]: return False return True