00:00 / 00:00
import pygame
import sys
import random

# 初始化Pygame
pygame.init()

# 游戏窗口设置
WIDTH, HEIGHT = 800, 600
WIN = pygame.display.set_mode((WIDTH, HEIGHT))
pygame.display.set_caption("峡谷飞行怪兽")

# 颜色定义
SKY_BLUE = (135, 206, 235)
BROWN = (139, 69, 19)

# 加载资源
try:
    MONSTER_IMG = pygame.image.load("monster.png")  # 需准备怪兽图片
    CLOUD_IMG = pygame.image.load("cloud.png")      # 需准备云朵图片
except FileNotFoundError:
    print("请确保 monster.png 和 cloud.png 图片存在!")
    sys.exit()

# 怪兽类
class Monster(pygame.sprite.Sprite):
    def __init__(self):
        super().__init__()
        self.image = MONSTER_IMG
        self.rect = self.image.get_rect(center=(WIDTH//2, HEIGHT//2))
        self.speed = 5

    def update(self, keys):
        if keys[pygame.K_UP]:
            self.rect.y -= self.speed
        if keys[pygame.K_DOWN]:
            self.rect.y += self.speed
        if keys[pygame.K_LEFT]:
            self.rect.x -= self.speed
        if keys[pygame.K_RIGHT]:
            self.rect.x += self.speed

        # 边界限制
        self.rect.clamp_ip(pygame.Rect(0, 0, WIDTH, HEIGHT))

# 障碍物(岩石)类
class Rock(pygame.sprite.Sprite):
    def __init__(self):
        super().__init__()
        self.size = random.randint(20, 60)
        self.image = pygame.Surface((self.size, self.size))
        self.image.fill(BROWN)
        self.rect = self.image.get_rect(
            center=(random.randint(WIDTH, WIDTH+100), random.randint(50, HEIGHT-50))
        )
        self.speed = random.randint(3, 6)

    def update(self):
        self.rect.x -= self.speed
        if self.rect.right < 0:
            self.kill()

# 游戏主循环
def main():
    clock = pygame.time.Clock()
    all_sprites = pygame.sprite.Group()
    rocks = pygame.sprite.Group()

    monster = Monster()
    all_sprites.add(monster)

    # 生成初始障碍物
    for _ in range(5):
        rock = Rock()
        all_sprites.add(rock)
        rocks.add(rock)

    running = True
    while running:
        clock.tick(60)
        for event in pygame.event.get(): by Hailuo AI Video Generator
小螺帽9801 by Hailuo AI Video Generator小螺帽9801
创意描述
复制

import pygame import sys import random # 初始化Pygame pygame.init() # 游戏窗口设置 WIDTH, HEIGHT = 800, 600 WIN = pygame.display.set_mode((WIDTH, HEIGHT)) pygame.display.set_caption("峡谷飞行怪兽") # 颜色定义 SKY_BLUE = (135, 206, 235) BROWN = (139, 69, 19) # 加载资源 try: MONSTER_IMG = pygame.image.load("monster.png") # 需准备怪兽图片 CLOUD_IMG = pygame.image.load("cloud.png") # 需准备云朵图片 except FileNotFoundError: print("请确保 monster.png 和 cloud.png 图片存在!") sys.exit() # 怪兽类 class Monster(pygame.sprite.Sprite): def __init__(self): super().__init__() self.image = MONSTER_IMG self.rect = self.image.get_rect(center=(WIDTH//2, HEIGHT//2)) self.speed = 5 def update(self, keys): if keys[pygame.K_UP]: self.rect.y -= self.speed if keys[pygame.K_DOWN]: self.rect.y += self.speed if keys[pygame.K_LEFT]: self.rect.x -= self.speed if keys[pygame.K_RIGHT]: self.rect.x += self.speed # 边界限制 self.rect.clamp_ip(pygame.Rect(0, 0, WIDTH, HEIGHT)) # 障碍物(岩石)类 class Rock(pygame.sprite.Sprite): def __init__(self): super().__init__() self.size = random.randint(20, 60) self.image = pygame.Surface((self.size, self.size)) self.image.fill(BROWN) self.rect = self.image.get_rect( center=(random.randint(WIDTH, WIDTH+100), random.randint(50, HEIGHT-50)) ) self.speed = random.randint(3, 6) def update(self): self.rect.x -= self.speed if self.rect.right < 0: self.kill() # 游戏主循环 def main(): clock = pygame.time.Clock() all_sprites = pygame.sprite.Group() rocks = pygame.sprite.Group() monster = Monster() all_sprites.add(monster) # 生成初始障碍物 for _ in range(5): rock = Rock() all_sprites.add(rock) rocks.add(rock) running = True while running: clock.tick(60) for event in pygame.event.get():

T2V-01-Director
启用优化
720P
内容由AI生成