main
Anna Marija Redžepova 2024-03-02 14:42:57 +00:00
parent ae4a5b656b
commit 5762b39c18
1 changed files with 116 additions and 0 deletions

116
game2 100644
View File

@ -0,0 +1,116 @@
import pygame
import sys
import random
# Initialize Pygame
pygame.init()
# Set up the display
WIDTH, HEIGHT = 800, 600
screen = pygame.display.set_mode((WIDTH, HEIGHT))
# Colors
WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
# Load images
cat_image = pygame.image.load("cat.png").convert_alpha()
football_image = pygame.image.load("FOOT BALL.png").convert_alpha()
heart_bar_image = pygame.image.load("heart bar.png").convert_alpha()
# Constants
CAT_WIDTH, CAT_HEIGHT = 50, 50
FOOTBALL_WIDTH, FOOTBALL_HEIGHT = 30, 30
HEART_WIDTH, HEART_HEIGHT = 30, 30
PADDLE_WIDTH, PADDLE_HEIGHT = 100, 10
PADDLE_COLOR = (255, 0, 0)
BALL_RADIUS = 10
LINE_HEIGHT = 5
NUM_HEARTS = 9
# Global variables
score = 0
lives = NUM_HEARTS
falling_footballs = []
falling_speed = 3
clock = pygame.time.Clock()
# Create the paddle
paddle = pygame.Rect((WIDTH - PADDLE_WIDTH) // 2, HEIGHT - PADDLE_HEIGHT - 20, PADDLE_WIDTH, PADDLE_HEIGHT)
# Function to draw the paddle
def draw_paddle():
pygame.draw.rect(screen, PADDLE_COLOR, paddle)
# Function to handle paddle movement
def move_paddle(key):
if key == pygame.K_LEFT:
paddle.x -= 5
elif key == pygame.K_RIGHT:
paddle.x += 5
# Function to draw the cat
def draw_cat(x, y):
screen.blit(cat_image, (x, y))
# Function to draw the football
def draw_football(x, y):
screen.blit(football_image, (x, y))
# Function to draw the hearts representing lives
def draw_hearts():
for i in range(lives):
screen.blit(heart_bar_image, (WIDTH - (i + 1) * HEART_WIDTH, 0))
# Function to handle collisions between the paddle and falling footballs
def check_collision():
global lives
for football in falling_footballs:
if paddle.colliderect(football):
falling_footballs.remove(football)
lives -= 1
# Function to create falling footballs
def create_falling_footballs():
x = random.randint(0, WIDTH - FOOTBALL_WIDTH)
y = 0
falling_footballs.append(pygame.Rect(x, y, FOOTBALL_WIDTH, FOOTBALL_HEIGHT))
# Main game loop
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
elif event.type == pygame.KEYDOWN:
move_paddle(event.key)
# Clear the screen
screen.fill(BLACK)
# Draw game elements
draw_paddle()
draw_cat((WIDTH - CAT_WIDTH) // 2, HEIGHT - CAT_HEIGHT - 100)
draw_hearts()
# Move and draw falling footballs
for football in falling_footballs:
football.y += falling_speed
draw_football(football.x, football.y)
# Check for collisions between paddle and falling footballs
check_collision()
# Create falling footballs at random intervals
if random.randint(0, 100) < 3:
create_falling_footballs()
# Update the display
pygame.display.flip()
# Cap the frame rate
clock.tick(60)
# Quit Pygame
pygame.quit()
sys.exit()