import pygame class Object: def __init__(self, role, square_size, screen_size, left_square, top_square): self.role = role self.image = pygame.transform.scale(pygame.image.load( 'images/{0}.png'.format(role)), (square_size, square_size)) self.square_size = square_size self.screen_size = screen_size left = left_square * square_size top = top_square * square_size self.rect = pygame.Rect(left, top, square_size, square_size) def up(self): if self.rect.top > 0: self.rect.top -= self.square_size def down(self): if self.rect.bottom < self.screen_size[1]: self.rect.top += self.square_size def left(self): if self.rect.left > 0: self.rect.left -= self.square_size def right(self): if self.rect.right < self.screen_size[0]: self.rect.left += self.square_size def blit(self, screen): screen.blit(self.image, self.rect) def collision(self, obj): x = self.rect.left == obj.rect.left y = self.rect.top == obj.rect.top return x and y