Пример проекта - Лабиринт
Класс Player
Свойства класса:
x
, y
- положение
width
, height
- размеры
color
- цвет
speed
- скорость перемещения
Методы класса:
.update()
- отрисовка
.control()
- управление
class Player:
def __init__(self, x, y, width, height, color, speed):
self.x = x
self.y = y
self.width = width
self.height = height
self.color = color
self.speed = speed
self.player_surface = pygame.Surface((self.width, self.height))
self.player_surface.fill(self.color)
def update(self):
screen.blit(self.player_surface, (self.x, self.y))
def control(self):
keys = pygame.key.get_pressed()
if keys[pygame.K_RIGHT]:
self.x += self.speed
if keys[pygame.K_LEFT]:
self.x -= self.speed
if keys[pygame.K_UP]:
self.y -= self.speed
if keys[pygame.K_DOWN]:
self.y += self.speed
Экземпляр класса создаётся до цикла, внутри цикла вызываются методы .update()
и .control()
:
...
p1 = Player(100, 100, 50, 50, (255, 0, 0), 5)
...
while 1:
...
screen.fill((255, 255, 255))
p1.update()
p1.control()
pygame.display.update()
clock.tick(60)