Update actors/pacman.py

This commit is contained in:
2025-04-19 10:06:26 +02:00
parent 230a29d6ef
commit d61722c048

View File

@@ -15,6 +15,9 @@ class ActorPacman:
self.animate_speed = 2
self.mouth_closing = False
def update(self):
self.animate()
def animate(self):
if self.mouth_closing:
self.mouth_angle_deg -= self.animate_speed
@@ -26,18 +29,18 @@ class ActorPacman:
if self.mouth_angle_deg >= self.max_mouth_deg:
self.mouth_angle_deg = self.max_mouth_deg
self.mouth_closing = True
match self.direction:
case PlayerDirection.DirectionRight:
self.x += self.speed
case PlayerDirection.DirectionLeft:
self.x -= self.speed
case PlayerDirection.DirectionUp:
self.y -= self.speed
case PlayerDirection.DirectionDown:
self.y += self.speed
match self.direction:
case PlayerDirection.DirectionRight:
self.x += self.speed
case PlayerDirection.DirectionLeft:
self.x -= self.speed
case PlayerDirection.DirectionUp:
self.y -= self.speed
case PlayerDirection.DirectionDown:
self.y += self.speed
self.x = max(self.radius, min(self.x, 400 - self.radius))
self.y = max(self.radius, min(self.y, 400 - self.radius))
self.x = max(self.radius, min(self.x, 400 - self.radius))
self.y = max(self.radius, min(self.y, 400 - self.radius))
def draw(self):
mouth_angle = math.radians(self.mouth_angle_deg)
@@ -54,8 +57,5 @@ class ActorPacman:
angle += math.radians(1)
pygame.draw.polygon(self.screen, Colors.Yellow.value, points)
def move_right(self):
pass
def set_direction(self, dir: PlayerDirection):
self.direction = dir