文章目录
- 一、构建飞机大战理念
- 二、操作步骤
- 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