From e5ed01f3c3647e7343a26d1318e5108f2de26c5d Mon Sep 17 00:00:00 2001 From: MateoLT Date: Fri, 4 Apr 2025 11:51:43 +0200 Subject: [PATCH] Feat[projectiles], add assets for the projectile of the player --- assets/player/Boule de feu.png | Bin 0 -> 39437 bytes src/Entity/Player.py | 2 ++ src/Entity/Projectile.py | 11 +++++++++-- src/handler.py | 1 + 4 files changed, 12 insertions(+), 2 deletions(-) create mode 100644 assets/player/Boule de feu.png diff --git a/assets/player/Boule de feu.png b/assets/player/Boule de feu.png new file mode 100644 index 0000000000000000000000000000000000000000..66a6e4004dbfbd52b19d880844d230d80451b33e GIT binary patch literal 39437 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 literal 0 HcmV?d00001 diff --git a/src/Entity/Player.py b/src/Entity/Player.py index b5f5185..c250a78 100644 --- a/src/Entity/Player.py +++ b/src/Entity/Player.py @@ -502,6 +502,7 @@ class Player(Entity): damage=1, color=(165, 42, 42), enemy_proj=False, + texturePath="assets/player/Boule de feu.png", ) # Add projectile to the sprite group (to be placed in main.py) pygame.event.post( @@ -525,6 +526,7 @@ class Player(Entity): damage=1, color=(165, 42, 42), enemy_proj=False, + texturePath="assets/player/Boule de feu.png", ) # Add projectile to the sprite group (to be placed in main.py) pygame.event.post( diff --git a/src/Entity/Projectile.py b/src/Entity/Projectile.py index 5a433ab..a572f7e 100644 --- a/src/Entity/Projectile.py +++ b/src/Entity/Projectile.py @@ -5,10 +5,17 @@ from pygame.math import Vector2 as vec class Projectile(Entity): def __init__( - self, pos, direction, speed, damage, color=(0, 0, 255), enemy_proj=False + self, + pos, + direction, + speed, + damage, + color=(0, 0, 255), + enemy_proj=False, + texturePath="", ): # Appel du constructeur parent avec les paramètres appropriés - super().__init__(pos=pos, size=(10, 10), color=color) + super().__init__(pos=pos, size=(50, 50), color=color, texturePath=texturePath) # Attributs spécifiques aux projectiles self.direction = direction.normalize() if direction.length() > 0 else vec(1, 0) diff --git a/src/handler.py b/src/handler.py index 500ef81..7b0cc14 100644 --- a/src/handler.py +++ b/src/handler.py @@ -245,6 +245,7 @@ def handler(): P1.move() P1.update() P1.attack() + projectiles.update(WIDTH, HEIGHT, P1, camera) # Update camera to follow player camera.update(P1)