Python 游戏代码:无限升级变大
以下是一个简单的游戏代码,其中主角可以无限升级,升级后变得更大。
import pygame
import random
# 初始化Pygame
pygame.init()
# 游戏窗口大小
WINDOW_WIDTH = 800
WINDOW_HEIGHT = 600
# 创建游戏窗口
screen = pygame.display.set_mode((WINDOW_WIDTH, WINDOW_HEIGHT))
pygame.display.set_caption('升级变大游戏')
# 加载主角图片
player_img = pygame.image.load('player.png')
player_rect = player_img.get_rect()
player_rect.center = (WINDOW_WIDTH // 2, WINDOW_HEIGHT // 2)
# 主角初始大小和等级
player_size = 50
player_level = 1
# 加载敌人图片
enemy_img = pygame.image.load('enemy.png')
# 敌人列表
enemies = []
# 游戏循环
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_UP]:
player_rect.move_ip(0, -5)
if keys[pygame.K_DOWN]:
player_rect.move_ip(0, 5)
if keys[pygame.K_LEFT]:
player_rect.move_ip(-5, 0)
if keys[pygame.K_RIGHT]:
player_rect.move_ip(5, 0)
# 添加敌人
if len(enemies) < 10:
enemy_rect = enemy_img.get_rect()
enemy_rect.center = (random.randint(0, WINDOW_WIDTH), random.randint(0, WINDOW_HEIGHT))
enemies.append(enemy_rect)
# 绘制游戏界面
screen.fill((255, 255, 255))
screen.blit(player_img, player_rect)
# 绘制敌人
for enemy_rect in enemies:
screen.blit(enemy_img, enemy_rect)
# 检测主角与敌人的碰撞
if player_rect.colliderect(enemy_rect):
player_size += 10
player_level += 1
player_img = pygame.transform.scale(player_img, (player_size, player_size))
enemies.remove(enemy_rect)
# 显示主角等级
font = pygame.font.SysFont('Arial', 30)
level_text = font.render('Level: ' + str(player_level), True, (0, 0, 0))
screen.blit(level_text, (10, 10))
# 更新游戏画面
pygame.display.update()
在这个游戏中,主角可以使用方向键移动,并且可以通过与敌人的碰撞来升级。每次升级后,主角的大小会增加,并且等级会提高。敌人会随机出现在游戏窗口中,并且会不断增加,直到达到一定数量为止。游戏界面中还会显示主角的等级。
原文地址: https://www.cveoy.top/t/topic/jBO2 著作权归作者所有。请勿转载和采集!