python飞机大战代码(面向过程)持续更新中


我写的这个代码是递进式的,下一个代码包含前一个需求的代码,为了方便新手理解(我自己也是个新手哈)。可以比较前后两个代码的不同,能够看出这个游戏的开发思路,思路不唯一哈。

1、游戏基本框架

导入pygame模块
窗口的一些设置
screen = pygame.display.set_mode() 设置窗口大小
pygame.display.set_caption() 设置游戏窗口标题
pygame.display.set_icon() 设置窗口左上角图标
注:必须使用变量记录set_mode方法的返回窗口对象,因为:后续所有的图像绘制都基于这个返回结果
screen.blit(background,(x,y))向窗口中粘贴背景图片,(x,y)对应的是图片左上角的坐标
pygame.display.update() # 更新屏幕显示

V1.0版本
import pygame

window = pygame.display.set_mode((480,500)) # 设置游戏窗口大小
pygame.display.set_caption('飞机大战') # 设置游戏窗口标题
icon = pygame.image.load(r'C:\Users\Administrator\Desktop\0715系统班\飞机大战\img\icon72x72.png')
pygame.display.set_icon(icon)# 设置窗口左上角图标


background = pygame.image.load(r'C:\Users\Administrator\Desktop\0715系统班\飞机大战\img\background.png')# 设置窗口背景图片


# 游戏循环,进入游戏循环就意味着游戏的开始
while True:
    window.blit(background,(0,0)) # 将背景图片粘贴到窗口
    # 获取事件并逐类响应
    for event in pygame.event.get():

        if event.type == pygame.QUIT: # 如果事件的类型是退出(点击退出按钮触发)
            print('退出了')
            exit(0)

    pygame.display.update() # update更新屏幕显示

2、添加玩家飞机,并控制飞机左右移动

需求:加载玩家飞机图片,并控制飞机左右移动
1.加载玩家飞机图片
pygame.image.load(‘图片路径’)
将玩家飞机图片粘贴到窗口上
2.控制飞机左右移动
导入模块from pygame.locals import *
触发事件KEYDOWN
(1)如果控制飞机左移,触发事件K_LEFT
飞机左移,横坐标减小
控制飞机移动范围,防止飞机跑丢了
(2)如果控制飞机右移,触发事件K_RIGHT
飞机右移,横坐标增加
控制飞机移动范围,防止飞机跑丢了

import pygame
from pygame.locals import *


window = pygame.display.set_mode((480,500)) # 设置游戏窗口大小
pygame.display.set_caption('飞机大战') # 设置游戏窗口标题
icon = pygame.image.load(r'C:\Users\Administrator\Desktop\0715系统班\飞机大战\img\icon72x72.png')
pygame.display.set_icon(icon)# 设置窗口左上角图标
playerPlane = pygame.image.load(r'C:\Users\Administrator\Desktop\0715系统班\飞机大战\img\hero.gif') # 加载玩家飞机图片,图片尺寸100×124
player_x = (480-100)//2 # 飞机左上角坐标,横坐标
player_y = 500-124 # 纵坐标


background = pygame.image.load(r'C:\Users\Administrator\Desktop\0715系统班\飞机大战\img\background.png')# 设置窗口背景图片


# 游戏循环,进入游戏循环就意味着游戏的开始
while True:
    window.blit(background,(0,0)) # 将背景图片粘贴到窗口
    window.blit(playerPlane,(player_x,player_y)
  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值