python自学-飞机大战的简单实现(附带相关音频图片资料)
作者:互联网
飞机大战音频图片资料包(百度网盘)
链接:https://pan.baidu.com/s/1MY_oHjB5vr-5oAWMeLnTWQ
提取码:txm0
1.创建游戏窗口
import pygame
screen=pygame.display.set_mode((800,600),0,32) #创建一个游戏窗体
while True:
pygame.display.update() #消息循环,更新消息
2.载入背景
import pygame
screen=pygame.display.set_mode((480,650),0,32) #创建一个游戏窗体
#bk=pygame.image.load("D:\\Python代码\\class28\\images\\background.png").convert() #载入文件图片到内存
bk=pygame.image.load("images\\background.png").convert()#相对路径
while True:
screen.blit(bk,(0,0))#(0,0)表示窗体位置
pygame.display.update() #消息循环,更新消息
3.处理消息
主要是绑定键盘消息,控制飞机移动
import pygame
import pygame.locals
screen=pygame.display.set_mode((480,650),0,32) #创建一个游戏窗体
#bk=pygame.image.load("D:\\Python代码\\class28\\images\\background.png").convert() #载入文件图片到内存
bk=pygame.image.load("images\\background.png").convert()#相对路径
while True:
screen.blit(bk,(0,0))#(0,0)表示窗体位置
for event in pygame.event.get(): #抓取每一个事件
if event.type==pygame.locals.QUIT: #退出关闭
print("exit")
exit()
elif event.type==pygame.locals.KEYDOWN: #处理键盘消息
if event.key==pygame.locals.K_k:
print("K")
elif event.key==pygame.locals.K_SPACE:
print("SPACE")
pygame.display.update() #消息循环,更新消息
4.载入飞机
import pygame
import pygame.locals
screen=pygame.display.set_mode((480,650),0,32) #创建一个游戏窗体
#bk=pygame.image.load("D:\\Python代码\\class28\\images\\background.png").convert() #载入文件图片到内存
bk=pygame.image.load("images\\background.png").convert()#相对路径
plane=pygame.image.load("images\\me1.png").convert_alpha()#alpha可以消除背景
x=0
y=0
while True:
screen.blit(bk,(0,0))#(0,0)表示窗体位置
screen.blit(plane,(x,y))
for event in pygame.event.get(): #抓取每一个事件
if event.type==pygame.locals.QUIT: #退出关闭
print("exit")
exit()
elif event.type==pygame.locals.KEYDOWN: #处理键盘消息
if event.key==pygame.locals.K_w:
if y-10>=0:
y-=10
elif event.key==pygame.locals.K_s:
if y+10<=530:
y+=10
elif event.key==pygame.locals.K_a:
if x-10>=0:
x-=10
elif event.key==pygame.locals.K_d:
if x+10<=370:
x+=10
pygame.display.update() #消息循环,更新消息
5.载入背景音乐
import pygame
import pygame.midi
import pygame.locals
pygame.init() #初始化
pygame.mixer.init() #初始化用于播放音乐
bg_size=width,heigth=480,650 #设置窗体大小
screen=pygame.display.set_mode(bg_size)
pygame.display.set_caption("飞机大战")
bk=pygame.image.load(r"..\images\background.png").convert()#载入图片相对路径
pygame.mixer.music.load(r"..\sound\飞机大战多人联机版_爱给网_aigei_com\声音\游戏的音乐.mp3") #载入音乐
pygame.mixer.music.set_volume(0.2) #播放速度
pygame.mixer.music.play(-1) #循环播放-1死循环
while True:
screen.blit(bk,(0,0))#(0,0)表示窗体位置
pygame.display.update() #消息循环,更新消息
for event in pygame.event.get(): #抓取每一个事件
if event.type==pygame.locals.QUIT: #退出关闭
print("exit")
exit()
上面就是实现的基础知识了,理解了这些基础知识,再按自己想法不断细化就可以得到想要的效果了
我的效果图如下:
最后:
标签:display,python,音频,bk,附带,pygame,screen,event,locals 来源: https://blog.csdn.net/weixin_46837674/article/details/114238699