资源简介
基于Python的模块pygame实现的《飞机大战》小游戏。可熟悉与巩固Python基础知识。
代码片段和文件信息
# -*- coding:utf-8 -*-
import pygame
import time
import random
import sys
from pygame.locals import *
#全局变量
#窗口
window_screen = None
#hero
hero = None
#得分
hit_score = 0
#是否暂停
is_pause = False
#图片变量
#暂停图片
pause_image = None
#hero_fire_music
hero_fire_music = None
#number照片
number_image = []
#score_hp照片
score_hp_image = None
#单三管炮弹照片
one_or_three_barral = []
#三管炮弹子弹余量照片
bullet_3_stock = None
#max_score
max_score_image = None
#boss_hp
boss_HP_image = None
#line
line_image = None
#背景
background = None
#重新开始
restart = None
#退出游戏
exit_game = None
#操作说明
description = None
#关于飞机
##飞机HP
HP_list = [1 20 100 20]#enemy0 enemy1 enemy2 hero
#飞机大小
plane_size = [{“width“:51 “height“:39} {“width“:69 “height“:89} {“width“:165 “height“:246} {“width“:100 “height“:124}]
#各种飞机爆炸效果计数更换图片
plane_bomb_time = [5 8 14 8]#enemy0 enemy1 enemy2 hero
#飞机最大子弹数
plane_maximum_bullet = [2 5 7 8]#enemy0 enemy1 enemy2 hero
#血量补给
blood_supply = None
#子弹补给
bullet_supply = None
#关于子弹
#敌机子弹类型
bullet_type = [“bullet1.png“ “bullet-1.gif“ “bullet2.png“ “bullet.png“]
#子弹伤害值
bullet_damage_value = [1 1 3 1]#enemy0 enemy1 enemy2 hero
#补给
supply_image = [“bomb-1.gif“ “bomb-2.gif“]
#补给的大小
supply_size = [{“width“:58 “height“:88} {“width“:60 “height“:103}]
#敌机引用列表
enemy0_list = []#enemy0存在飞机列表
enemy0_maximum = 8#enemy0飞机存在最大值
enemy1_list = []#enemy1存在飞机列表
enemy1_maximum = 1
enemy2_list = []#enemy2存在飞机列表
enemy2_maximum = 1
class base(object):
“““所有类的基类“““
def __init__(self screen_temp x y image_name):
self.x = x
self.y = y
self.screen = screen_temp
self.image = pygame.image.load(image_name)
class basePlane(base):
“““飞机基类“““
def __init__(self plane_type screen_temp x y image_name picture_num HP_temp):
base.__init__(self screen_temp x y image_name)#plane_type飞机类型
self.bullet_list = [] #存储发射出去的子弹的引用
self.plane_type = plane_type #飞机类型标示 3是hero
#爆炸效果用的如下属性
self.hitted = False #表示是否要爆炸
self.bomb_picture_list = [] #用来存储爆炸时需要的图片
self.bomb_picture_num = picture_num #飞机爆炸效果的图片数量
self.picture_count = 0#用来记录while True的次数当次数达到一定值时才显示一张爆炸的图然后清空当这个次数再次达到时再显示下一个爆炸效果的图片
self.image_index = 0#用来记录当前要显示的爆炸效果的图片的序号
self.HP = HP_temp #飞机hp
self.fire_bullet_count = 0#飞机已发射子弹计数
def display(self):
“““显示玩家的飞机“““
global hit_score
global HP_list
global plane_bomb_time#飞机爆炸效果计数
#如果被击中就显示爆炸效果否则显示普通的飞机效果
if self.hitted == True and self.image_index < self.bomb_picture_num and self.HP <= 0:
self.screen.blit(self.bomb_picture_list[self.image_index] (self.x self.y))
if self.plane_type != 3 and self.image_index == 0 and self.picture_count == 0:
if self.plane_type == 0:#击毁enemy0得分+HP
if hit_score < 650:#初始血量为1
hit_score += HP_list[self.plane_type]
else:#初始血量为2
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 6148 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\.DS_Store
文件 36714 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\background.png
文件 427573 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\bg.png
文件 2658 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\bomb-1.gif
文件 2067 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\bomb-2.gif
文件 5600 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\bomb.png
文件 1335 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\boss_HP.png
文件 8948 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\btn_finish.png
文件 122 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\bullet-1.gif
文件 151 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\bullet-2.gif
文件 401 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\bullet-3.gif
文件 23131 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\bullet.png
文件 490 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\bullet1.png
文件 498 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\bullet2.png
文件 1998 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\bullet_3_stock.png
文件 1230 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\bullet_temp1.png
文件 3274 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\bullet_temp3.png
文件 29625 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\button_nor.png
文件 28998 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\button_p.png
文件 17956 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\desc
文件 1678 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\enemy-1.gif
文件 2829 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\enemy-2.gif
文件 13927 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\enemy-3.gif
文件 2970 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\enemy0.png
文件 3423 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\enemy0_down1.png
文件 3863 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\enemy0_down2.png
文件 5305 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\enemy0_down3.png
文件 1730 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\enemy0_down4.png
文件 8117 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\enemy1.png
文件 10477 2018-04-21 17:50 pygame之《飞机大战》\FeiJiDaZhan\feiji\enemy1_down1.png
............此处省略68个文件信息
相关资源
- 《机器学习实战》源代码Python3
- python暴力破解蓝奏网盘密码.zip
- python外星人入侵.rar
- 用tkinter写的python GUI注册界面
- PythonTank
- SVD实现代码
- python爬取维基百科程序语言消息盒(
- easygui-0.96
- python坦克大战分步骤源码及素材
- django+mysql家具购物网站,包含部署教
- python新浪微博爬虫
- Python3.5.2的IDLE汉化版计算机等级考试
- 12306爬虫实现
- Python求解数独并输出求解过程
- python程序设计基础课件
- 西电python网络处理上机题答案
- VMD变分模态分解算法
- Python网络编程 3版 高清扫描版 完整中
- 使用python编写的打飞机游戏源码
- 计算24点python
- 扑克小游戏python代码
- Python黑客攻防入门.pdf
- 《Python语言程序设计基础第二版PDF+课
- Python-PySimpleGUI一个建立在tkinter之上简
- python3.5 百度ai人脸识别
- python编程从入门到实践的案例和动手
- 编译原理词法分析器、语法分析器p
- python3实现的国密SM2+SM3
- 50G金融资料包python源码包
- Python爬虫相关书籍.zip
评论
共有 条评论