用pygame做一个小游戏,可以玩一整天(基础框架)

一.创建一个可以关闭的空白窗体                       

        创建一个窗体(使用pygame.display.set_mode()函数)

        设置窗体标题(使用pygame.display.set_caption()函数)

   -    创建一个主循环,监听关闭事件(使用pygame.event.get()函数和pygame.QUIT事件)

       代码实例:

import pygame

# 初始化pygame
pygame.init()

# 创建窗体
window_width = 800
window_height = 600
window = pygame.display.set_mode((window_width, window_height))

# 设置窗体标题
pygame.display.set_caption("Blank Window")

# 创建主循环
running = True
while running:
    # 监听事件
    for event in pygame.event.get():
        # 检测关闭事件
        if event.type == pygame.QUIT:
            running = False

    # 在窗体上绘制其他内容
    window.fill((255, 255, 255))  # 填充白色背景

    # 更新窗体显示
    pygame.display.flip()

# 退出pygame
pygame.quit()

                这段代码创建了一个800x600大小的窗体,并设置了标题为"Blank Window"。在主循环中,通过监听事件来检测是否有关闭事件发生。当检测到关闭事件时,running变量设置为False,退出主循环,从而关闭窗体。在窗体上绘制其他内容可以根据需要进行扩展。最后,调用pygame.quit()退出pygame。

2. 使用精灵显示背景,实现背景的循环展示:

   - 创建一个背景精灵类(继承自pygame.sprite.Sprite类)

   - 加载背景图像(使用pygame.image.load()函数)

   - 在主循环中更新背景位置,并循环展示(使用pygame.Surface.blit()函数)

代码示例

import pygame

# 初始化pygame
pygame.init()

# 创建窗体
window_width = 800
window_height = 600
window = pygame.display.set_mode((window_width, window_height))

# 设置窗体标题
pygame.display.set_caption("Background Sprite")

# 背景精灵类
class Background(pygame.sprite.Sprite):
    def __init__(self, image_path):
        super().__init__()
        self.image = pygame.image.load(image_path)
        self.rect = self.image.get_rect()
        self.rect.topleft = (0, 0)

    def update(self):
        self.rect.x -= 1  
# 更新背景位置

        # 如果背景完全移出窗体,将其放到窗体右侧
        if self.rect.right <= 0:
            self.rect.x = window_width

# 加载背景图像
background_image = "background.jpg"
background = Background(background_image)

# 创建精灵组
all_sprites = pygame.sprite.Group()

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值