Python阶段总结 飞机案例—Python Day10

本文介绍了如何使用Python的pygame库开发一款飞机大战游戏,从搭建界面、键盘检测开始,逐步添加背景音乐,然后通过面向过程和面向对象的方式控制玩具飞机,实现玩家和敌机的移动、发射子弹。最后进行了代码优化,增加了游戏的可玩性和体验。整个过程中详细讲解了pygame库的使用和游戏开发的基本步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

1.搭建界面和键盘检测 

2.添加背景音乐 

3.运行优化

4.控制玩具飞机-面向过程

5.控制玩具飞机-面向对象

6.玩家飞机发射子弹

7.显示敌机

8.敌机发射子弹

9.抽象基类


 飞机大战-要实现的效果

控制玩具飞机-面向过程

控制玩具飞机-面向对象

玩家飞机发射子弹

显示敌机

敌机发射子弹

控制玩具飞机

显示敌机

敌机发送子弹

1.搭建界面和键盘检测 

街机游戏相信很多人玩过,比如图中的恐龙快打、飞机游戏,但是之前我们一直玩别人做的游戏,不知道大家有没有想过,这种游戏是怎么做出来的,使用什么样语言做出来的,Python能做游戏开发吗?答案是肯定的,接下来我就带领大家来一起使用python开发一个飞机大战的游戏

import pygame
from pygame.locals import *
'''
1.搭建界面,主要完成窗口和背景图的显示
'''
def main():
    #1.创建一个窗口,用来显示内容
    screen=pygame.display.set_mode((350,500),0,32)
    #2.加载一张和窗口大小一样的图片,用来充当背景
    background=pygame.image.load("./feiji/background.png")
    #3.把背景图片放到窗口中显示
    #设置一个title
    pygame.display.set_caption('阶段总结-飞机小游戏')
    while True:
        #设定需要显示的背景图
            screen.blit(background,(0,0))
        #更新需要显示的内容
            pygame.display.update()
if __name__=='__main__':
    main()

 运行结果

键盘检测

            #获取事件,比如按键等
            for event in pygame.event.get():
                #判断是否点击了退出按钮
                if event.type==QUIT:
                    print('exit')
                    exit()
                #判断是否按下了键
                elif event.type == KEYDOWN:
                    # 检测按键是否是a或者left,左键
                    if event.key == K_a or event.key == K_LEFT:
                        print('left')
                    # 检测按键是否是d或者right 右键
                    elif event.key == K_d or event.key == K_RIGHT:
                        print('right')
                    # 检测按键是否是空格键
                    elif event.key == K_SPACE:
                        print('space')

 输出结果

 pygame介绍 

Pygame是一个利用SDL库的写的游戏库,SDL呢,全名Simple DirectMedia Layer,是一位叫做Sam Lantinga的大牛写 

SDL是用C写的,不过它也可以使用C++进行开发,当然还有很多其它的语言,Pygame

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值