From 2546120e9ddc27889877dc5767ceffcfe382ba47 Mon Sep 17 00:00:00 2001 From: "Hannes F. Kuchelmeister" Date: Fri, 5 Nov 2021 21:05:02 +0100 Subject: [PATCH] replace bubbles by actual images Co-authored-by: Laura Januleviciute --- Bubble.py | 5 +++-- Car.py | 9 +++++++-- sprites/bubble.png | Bin 0 -> 3522 bytes 3 files changed, 10 insertions(+), 4 deletions(-) create mode 100644 sprites/bubble.png diff --git a/Bubble.py b/Bubble.py index ab69995..4d14665 100644 --- a/Bubble.py +++ b/Bubble.py @@ -2,16 +2,17 @@ import pygame import random class Bubble: - def __init__(self, posX, posY, radius = 1, color=(0,0,255), direction=(1,1)): + def __init__(self, posX, posY, image, radius = 1, color=(0,0,255), direction=(1,1)): self.posX = posX self.posY = posY self.radius = radius self.color = color self.directionX = direction[0] self.directionY = direction[1] + self.image = image def draw(self, screen): - pygame.draw.circle(screen, self.color, (self.posX, self.posY), self.radius) + screen.blit(self.image, (self.posX - self.radius, self.posY - self.radius)) def update(self, screen): diff --git a/Car.py b/Car.py index 5a63be9..7a945a6 100644 --- a/Car.py +++ b/Car.py @@ -13,9 +13,11 @@ class Car: self.game_objects = game_objects self.bubble_spawn_time_ms = 1000 self.time_of_last_spawn = 0 + self.BUBBLE_IMAGE = pygame.image.load("sprites/bubble.png") def draw(self, screen): pygame.draw.rect(screen, self.color, pygame.Rect(self.posX, self.posY, self.width, self.height)) + def update(self, screen): self.posX += self.directionX @@ -25,6 +27,9 @@ class Car: if self.bubble_spawn_time_ms + self.time_of_last_spawn < pygame.time.get_ticks(): bubble_y_direction = random.uniform(-1, 1) bubble_x_speeddiff = random.uniform(0, 0.9) - bubble_radius = random.uniform(5, 10) - self.game_objects.append(Bubble(self.posX, self.posY + self.height - bubble_radius, radius=bubble_radius, direction=(-self.directionX * bubble_x_speeddiff,bubble_y_direction))) + bubble_radius = 16 + self.game_objects.append(Bubble(self.posX, self.posY + self.height - bubble_radius, + self.BUBBLE_IMAGE, + radius=bubble_radius, + direction=(-self.directionX * bubble_x_speeddiff,bubble_y_direction))) self.time_of_last_spawn = pygame.time.get_ticks() diff --git a/sprites/bubble.png b/sprites/bubble.png new file mode 100644 index 0000000000000000000000000000000000000000..9cd8d0a716838846ef491e24f81f6f66a44e4eac GIT binary patch literal 3522 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 literal 0 HcmV?d00001