aboutsummaryrefslogtreecommitdiff
path: root/src/Player.py
diff options
context:
space:
mode:
authorOmar Magdy <99906646+omagdy7@users.noreply.github.com>2023-04-15 22:15:19 +0200
committerGitHub <noreply@github.com>2023-04-15 22:15:19 +0200
commit8d57b25ba902d9cce0b7abd59a04c1bcf3085611 (patch)
tree1d095a257c2216e2fb070e182a3f8adafaf25d0a /src/Player.py
parent4076674216ea9e3989adbf8d87df5a474ee81701 (diff)
parent09ccc0d57bf47854d52fcabdc51db83a8ef8fa62 (diff)
downloadMacpan-8d57b25ba902d9cce0b7abd59a04c1bcf3085611.tar.xz
Macpan-8d57b25ba902d9cce0b7abd59a04c1bcf3085611.zip
Merge pull request #2 from omagdy7/Map
Added a map using grid and setup collision between the map and pacman
Diffstat (limited to 'src/Player.py')
-rw-r--r--src/Player.py34
1 files changed, 20 insertions, 14 deletions
diff --git a/src/Player.py b/src/Player.py
index e0128d9..76dfe19 100644
--- a/src/Player.py
+++ b/src/Player.py
@@ -1,7 +1,6 @@
from typing import List
from Direction import DIRECTION
import pygame
-import settings as Settings
def get_sprites(sprite_sheet) -> List:
@@ -15,12 +14,15 @@ def get_sprites(sprite_sheet) -> List:
for col in range(columns):
x = col * sprite_width
y = row * sprite_height
-
- # Create a new surface for the current sprite and blit it from the sprite sheet onto this new surface
- new_sprite_surface = pygame.Surface((sprite_width, sprite_height), pygame.SRCALPHA)
- new_sprite_surface.blit(sprite_sheet, (0, 0), (x, y, x + sprite_width, y +sprite_height))
- # Add this new surface to our list of sprites
+ # Create a new surface for the current sprite and blit it from the
+ # sprite sheet onto this new surface
+ new_sprite_surface = pygame.Surface(
+ (sprite_width, sprite_height), pygame.SRCALPHA)
+ new_sprite_surface.blit(
+ sprite_sheet, (0, 0), (x, y, x + sprite_width, y + sprite_height))
+
+ # Add this new surface to our list of sprites
sprites.append(new_sprite_surface)
return sprites
@@ -28,20 +30,24 @@ def get_sprites(sprite_sheet) -> List:
class Player():
def __init__(self, sprite_sheet):
- self.x = 450
- self.y = 663
+ self.x = 75
+ self.y = 75
self.sprite = get_sprites(sprite_sheet)
- self.speed = 10
+ self.speed = 5
self.direction = DIRECTION.LEFT
def draw(self, screen, counter):
- pos = (self.x, self.y)
+ radius = 30 // 2
+ pos = (self.x - radius , self.y - radius)
+ # pygame.draw.circle(screen, 'green', pos, radius)
if self.direction == DIRECTION.UP:
- screen.blit(pygame.transform.rotate(self.sprite[counter // 5], 270), pos)
+ screen.blit(pygame.transform.rotate(
+ self.sprite[counter // 5], 270), pos)
elif self.direction == DIRECTION.DOWN:
- screen.blit(pygame.transform.rotate(self.sprite[counter // 5], 90), pos)
+ screen.blit(pygame.transform.rotate(
+ self.sprite[counter // 5], 90), pos)
elif self.direction == DIRECTION.RIGHT:
- screen.blit(pygame.transform.flip(self.sprite[counter // 5], True, False), pos)
+ screen.blit(pygame.transform.flip(
+ self.sprite[counter // 5], True, False), pos)
elif self.direction == DIRECTION.LEFT:
screen.blit(self.sprite[counter // 5], pos)
-