文章目录

  • 一、构建飞机大战理念
  • 二、操作步骤
  • 1.导入pygame包
  • 2.初始化pygame
  • 3.创建游戏窗口
  • 4.修改游戏图标及名字
  • 5.加载背景图片
  • 6.#加载飞机与敌机图片
  • 7.#定义飞机与敌机位置
  • 8.#定义索引及某些条件的初始值
  • 9.#定义子弹列表
  • 10.#灵敏度的调节
  • 11.#代码1





一、构建飞机大战理念

1.搭建一个游戏窗口
2.在窗口里添加游戏所需物件
3.添加游戏背景
4.计算好游戏中各物件的坐标
5.运用函数将其运行



二、操作步骤

这里的图片坐标都得根据图片的大小而计算,飞机、战斗机、子弹、背景、、、都可以从网上下载。

import pygame
 pygame.init()
#print("游戏代码。。。")
#pygame.quit()
import pygame
pygame.init()
hero_rect=pygame.Rect(100,200,125,300)
#100:代表距离x轴原点的位置
#200:代表距离y轴原点的位置
#125:代表矩形的宽度
#300:代表矩形的高度
print("英雄机的x={},y={}".format(hero_rect.x,hero_rect.y))
print(("英雄机矩形的宽width={},高height={}".format(hero_rect.width,hero_rect.height)))
print("英雄机的中心位置centerx={}".format(hero_rect.centerx))
print("英雄机的底部bottom={}".format(hero_rect.bottom))
print("英雄机的左部left={}".format(hero_rect.left))
print("英雄机的右部right={}".format(hero_rect.right))
print("英雄机的上部top={}".format(hero_rect.top))
print("英雄机的大小size={}".format(hero_rect.size))

1.导入pygame包

代码如下(示例):

import pygame

PyCharm本身没有pygame模块,使用命令 pip install pygame下载pygame模块。

2.初始化pygame

代码如下(示例):

pygame.init()

3.创建游戏窗口

代码如下(示例):

screen=pygame.display.set_mode(( , ))

4.修改游戏图标及名字

代码如下(示例):

icon=pygame.image.load('图片所在的文件位置')
pygame.display.set_icon(icon)
pygame.display.set_caption('飞机大战')

5.加载背景图片

代码如下(示例):

bg_img=pygame.image.load('图片所在的文件位置')

6.#加载飞机与敌机图片

代码如下(示例):

hero1_img=pygame.image.load('图片所在的文件位置')
hero2_img=pygame.image.load('图片所在的文件位置')
enemy1_img=pygame.image.load('图片所在的文件位置')
hero_bomb_list=['图片所在的文件位置']
enemy_bomb_list=['图片所在的文件位置']

这里加载飞机爆炸及敌机爆炸涉及到动态变化,所以采用列表形式以便后边可以调用函数遍历图片达成动态。

7.#定义飞机与敌机位置

代码如下(示例):

hero_rect = pygame.rect.Rect(hero_x, hero_y, , )
enemy_rect=pygame.rect.Rect( , , , )
enemy_x=enemy_rect.x
enemy_y=enemy_rect.y
hero_x=
hero_y=

8.#定义索引及某些条件的初始值

代码如下(示例):

heroindex = 0
enemy_bomb_index = 0
hero_bomb_index=0
enemy_is_bomb = False
hero_is_bomb = False
direct='左'

9.#定义子弹列表

代码如下(示例):

hero_bullet_list=[]
enemy_bullet_list=[]

10.#灵敏度的调节

代码如下(示例):

pygame.key.set_repeat(20, 30)

11.#代码1

代码如下(示例):

#导入游戏模块
import pygame
#初始化pygame
pygame.init()
#创建游戏窗口
screen=pygame.display.set_mode((480,650))
#修改游戏名称
pygame.display.set_caption('飞机大战')
#修改游戏图标
icon=pygame.image.load('img/icon72x72.png')
pygame.display.set_icon(icon)
#加载背景图片
bg_img=pygame.image.load('img/background.png')
#加载飞机图片
hero1_img=pygame.image.load('img/hero1.png')
hero2_img=pygame.image.load('img/hero2.png')
#定义飞机的爆炸图片列表
hero_bomb_list=["img/hero_blowup_n1.png","img/hero_blowup_n2.png","img/hero_blowup_n3.png","img/hero_blowup_n4.png"]
# 定义飞机图片切换索引
heroindex = 0
hero_x=190
hero_y=526

#加载敌机图片
enemy1_img=pygame.image.load('img/enemy-3.gif')
enemy_bomb_list=["img/enemy2_down1.png", "img/enemy2_down2.png","img/enemy2_down3.png","img/enemy2_down4.png",'img/enemy2_down5.png','img/enemy2_down6.png']
#定义敌机初始值
#定义敌机位置
enemy_rect=pygame.rect.Rect(158,0,165,250)
#定义敌机初始移动方向
direct='左'
#定义飞机子弹列表
hero_bullet_list=[]
#定义敌机子弹列表
enemy_bullet_list=[]
#创建游戏时钟
clock=pygame.time.Clock()
# 灵敏度
pygame.key.set_repeat(20, 30)
enemy_is_bomb = False
hero_is_bomb = False
enemy_bomb_index = 0
hero_bomb_index=0

enemy_x=enemy_rect.x
enemy_y=enemy_rect.y