Конечно! Создание простого пинга-понга (или настольного тенниса) на Python может быть интересным проектом. Мы можем использовать библиотеку Pygame, которая содержит необходимые инструменты для разработки игр. Вот пример кода, который вы можете использовать в качестве отправной точки:
import pygame
import sys
# Инициализация Pygame
pygame.init()
# Настройки экрана
width, height = 800, 600
screen = pygame.display.set_mode((width, height))
pygame.display.set_caption('Пинг-Понг')
# Цвета
white = (255, 255, 255)
black = (0, 0, 0)
# Параметры ракетки и мяча
paddle_width, paddle_height = 10, 100
ball_size = 15
paddle_speed = 10
# Начальные позиции
player1_pos = height // 2 - paddle_height // 2
player2_pos = height // 2 - paddle_height // 2
ball_pos = [width // 2, height // 2]
ball_speed = [5, 5]
# Основной игровой цикл
while True:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
sys.exit()
keys = pygame.key.get_pressed()
if keys[pygame.K_w] and player1_pos > 0:
player1_pos -= paddle_speed
if keys[pygame.K_s] and player1_pos < height - paddle_height:
player1_pos += paddle_speed
if keys[pygame.K_UP] and player2_pos > 0:
player2_pos -= paddle_speed
if keys[pygame.K_DOWN] and player2_pos < height - paddle_height:
player2_pos += paddle_speed
# Движение мяча
ball_pos[0] += ball_speed[0]
ball_pos[1] += ball_speed[1]
# Удар по ракетке
if (ball_pos[0] <= paddle_width and player1_pos < ball_pos[1] < player1_pos + paddle_height) or \
(ball_pos[0] >= width - paddle_width - ball_size and player2_pos < ball_pos[1] < player2_pos + paddle_height):
ball_speed[0] = -ball_speed[0]
# Отскок от стен
if ball_pos[1] <= 0 or ball_pos[1] >= height - ball_size:
ball_speed[1] = -ball_speed[1]
# Обновление экрана
screen.fill(black)
pygame.draw.rect(screen, white, (0, player1_pos, paddle_width, paddle_height))
pygame.draw.rect(screen, white, (width - paddle_width, player2_pos, paddle_width, paddle_height))
pygame.draw.ellipse(screen, white, (ball_pos[0], ball_pos[1], ball_size, ball_size))
pygame.display.flip()
pygame.time.delay(30)
В этом коде создается простая игра в пинг-понг, где два игрока могут управлять ракетками с помощью клавиш 'W' и 'S' для первого игрока и стрелками вверх и вниз для второго игрока. Мяч будет отскакивать от ракеток и верхней/нижней границ экрана.
Чтобы запустить этот код, вам нужно установить Pygame, если он ещё не установлен. Вы можете сделать это через командную строку:
pip install pygame
Надеюсь, этот пример поможет вам начать! Если у вас возникнут вопросы по коду или по Pygame, не стесняйтесь их задавать!
