让“苹果(sprite)”在游戏屏幕中不断改变位置,可以通过循环不断更新苹果位置的方式实现。以下是示例代码:
import pygame
import random
# 初始化pygame
pygame.init()
# 设置游戏屏幕大小
screen_width = 400
screen_height = 400
screen = pygame.display.set_mode((screen_width, screen_height))
# 定义苹果的大小和颜色
apple_size = 20
apple_color = (255, 0, 0)
# 初始化苹果位置
apple_x = random.randint(apple_size, screen_width - apple_size)
apple_y = random.randint(apple_size, screen_height - apple_size)
# 游戏循环
running = True
while running:
# 处理游戏事件
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# 更新苹果位置
apple_x += random.randint(-5, 5) # 在范围内随机移动
apple_y += random.randint(-5, 5)
if apple_x < apple_size:
apple_x = apple_size
if apple_x > screen_width - apple_size:
apple_x = screen_width - apple_size
if apple_y < apple_size:
apple_y = apple_size
if apple_y > screen_height - apple_size:
apple_y = screen_height - apple_size
# 绘制苹果
pygame.draw.circle(screen, apple_color, (apple_x, apple_y), apple_size)
# 刷新屏幕
pygame.display.update()
# 退出pygame
pygame.quit()
在以上代码中,我们通过 randint()
方法来随机修改苹果的 x 和 y 坐标,从而实现苹果位置的不断变化。在更新位置后,我们还添加了一些判断逻辑,确保苹果不会移出屏幕。最后,我们通过 draw.circle()
方法来绘制苹果。