基础DAY15-飞机大战-监听事件

import pygame
pygame.init()
# 创建游戏窗口
screen = pygame.display.set_mode((480, 700))
# 加载backgroud.png创建背景
bg = pygame.image.load("./images/background.png")
# 将背景绘制在屏幕的(0,0)位置
screen.blit(bg, (0, 0))
# 调用屏幕更新显示背景图像
#pygame.display.update()
# 绘制英雄的飞机
hero = pygame.image.load("./images/me1.png")
# 创建时钟对象
clock = pygame.time.Clock()
# 1 在游戏循环外部,定义rect记录飞机的初始位置
hero_rect = pygame.Rect(150, 300, 102, 126)
print(hero_rect)
while True:
    # 可以指定循环体内部执行的频率
    clock.tick(60)
    # 捕获事件
    event_list = pygame.event.get()
    if len(event_list) > 0:
        print(event_list)
    # 2 修改飞机的位置
    hero_rect.y -= 1
    # 判断飞机的位置
    if hero_rect.bottom <= 0:
        # 修改飞机的位置到底部
        hero_rect.y = 700
    # 3 调用blit方法修改图像
    screen.blit(bg, (0, 0))
    screen.blit(hero, hero_rect)
    # 4 调用update方法
    pygame.display.update()

pygame.quit()
监听事件
import pygame
pygame.init()
# 创建游戏窗口
screen = pygame.display.set_mode((480, 700))
# 加载backgroud.png创建背景
bg = pygame.image.load("./images/background.png")
# 将背景绘制在屏幕的(0,0)位置
screen.blit(bg, (0, 0))
# 调用屏幕更新显示背景图像
#pygame.display.update()
# 绘制英雄的飞机
hero = pygame.image.load("./images/me1.png")
# 创建时钟对象
clock = pygame.time.Clock()
# 1 在游戏循环外部,定义rect记录飞机的初始位置
hero_rect = pygame.Rect(150, 300, 102, 126)
print(hero_rect)
while True:
    # 可以指定循环体内部执行的频率
    clock.tick(60)
    # 捕获事件
    # event_list = pygame.event.get()
    # if len(event_list) > 0:
    #     print(event_list)
    for event in pygame.event.get():
        # 判断事件类型是否是退出事件
        if event.type == pygame.QUIT:
            print("游戏 退出。。")
            # 退出游戏
            # quit 卸载所有的模块
            pygame.quit()
            # exit() 直接终止当前正在执行的程序
            exit()
    # 2 修改飞机的位置
    hero_rect.y -= 1
    # 判断飞机的位置
    if hero_rect.bottom <= 0:
        # 修改飞机的位置到底部
        hero_rect.y = 700
    # 3 调用blit方法修改图像
    screen.blit(bg, (0, 0))
    screen.blit(hero, hero_rect)
    # 4 调用update方法
    pygame.display.update()
pygame.quit()
监听退出事件
posted @ 2019-08-29 08:24  才华配得上梦想  阅读(213)  评论(0编辑  收藏  举报