以下是一个基于pygame的小游戏,玩家需要躲避敌人,越往后难度越大。

import pygame
import random

# 初始化pygame
pygame.init()

# 设置游戏窗口大小
WINDOW_WIDTH = 800
WINDOW_HEIGHT = 600
WINDOW_SIZE = (WINDOW_WIDTH, WINDOW_HEIGHT)

# 设置颜色
WHITE = (255, 255, 255)
BLACK = (0, 0, 0)
RED = (255, 0, 0)

# 创建游戏窗口
screen = pygame.display.set_mode(WINDOW_SIZE)
pygame.display.set_caption('Dodge the Enemies')

# 创建玩家
player_width = 50
player_height = 50
player_x = WINDOW_WIDTH / 2 - player_width / 2
player_y = WINDOW_HEIGHT - player_height
player_speed = 5
player_rect = pygame.Rect(player_x, player_y, player_width, player_height)

# 创建敌人
enemy_width = 50
enemy_height = 50
enemy_speed = 3
enemies = []

# 游戏循环
running = True
while running:
    # 处理事件
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    # 移动玩家
    keys = pygame.key.get_pressed()
    if keys[pygame.K_LEFT] and player_rect.left > 0:
        player_rect.move_ip(-player_speed, 0)
    if keys[pygame.K_RIGHT] and player_rect.right < WINDOW_WIDTH:
        player_rect.move_ip(player_speed, 0)
    if keys[pygame.K_UP] and player_rect.top > 0:
        player_rect.move_ip(0, -player_speed)
    if keys[pygame.K_DOWN] and player_rect.bottom < WINDOW_HEIGHT:
        player_rect.move_ip(0, player_speed)

    # 移动敌人
    for enemy in enemies:
        enemy.move_ip(0, enemy_speed)

    # 添加新的敌人
    if len(enemies) < 5:
        enemy_x = random.randint(0, WINDOW_WIDTH - enemy_width)
        enemy_y = -enemy_height
        enemy_rect = pygame.Rect(enemy_x, enemy_y, enemy_width, enemy_height)
        enemies.append(enemy_rect)

    # 检测碰撞
    for enemy in enemies:
        if player_rect.colliderect(enemy):
            running = False

    # 绘制画面
    screen.fill(WHITE)
    pygame.draw.rect(screen, RED, player_rect)
    for enemy in enemies:
        pygame.draw.rect(screen, BLACK, enemy)
    pygame.display.update()

# 退出pygame
pygame.quit()

在这个游戏中,玩家通过方向键控制移动,躲避从上方下落的敌人。每当有敌人到达底部时,就会在上方生成一个新的敌人。如果玩家与敌人发生碰撞,则游戏结束。

做一个基于pygame的小游戏不用图像资源要有敌人越复杂越好

原文地址: https://www.cveoy.top/t/topic/b95z 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录