资源简介
(1)、外星人游戏添加飞船上下移动功能;
(2)、尝试为游戏添加爆炸音效和射击音效;
(3)、在玩家得分、最高得分、玩家等级前添加"Score"、"High Score"、"Level"三个标签
(4)、添加游戏暂停功能,如按某个按键,实现游戏暂停;
(5)、最高得分永久性存储,在关闭后,再打开游戏时,仍然可以正常读取和显示;
(6)、仅当游戏结束时,才进行游戏最高得分的比较和更新;
(7).添加了一个用于开始游戏的play按钮,在玩家三次未击中目标时结束游戏,并重新显示Play按钮,让玩家能够通过单击该按钮重新开始游戏;
(8)、在外星人队列中固定关卡插入高级外星人(图像与普通外星人不同,但points更高,速度更快),并且boos显示血条。

代码片段和文件信息
import pygame
from pygame.sprite import Sprite
class Alien(Sprite):
“““表示单个外星人的类“““
def __init__(self ai_settings screen):
“““初始化外星人并设置其起始位置“““
super(Alien self).__init__()
self.screen = screen
self.ai_settings = ai_settings
# 加载外星人图像,并设置其rect属性
self.image = pygame.image.load(‘images/alien.bmp‘)
self.rect = self.image.get_rect()
# 每个外星人最初都在屏幕左上角附近
self.rect.x = self.rect.width
self.rect.y = self.rect.height
# 存储外星人的准确位置
self.x = float(self.rect.x)
def blitme(self):
“““在指定位置绘制外星人“““
self.screen.blit(self.image self.rect)
def check_edges(self):
“““如果外星人位于屏幕边缘,就返回True“““
screen_rect = self.screen.get_rect()
if self.rect.right >= screen_rect.right:
return True
elif self.rect.left <= 0:
return True
def update(self):
“““向左或向右移动外星人“““
self.x += (self.ai_settings.alien_speed_factor *
self.ai_settings.fleet_direction)
self.rect.x = self.x
class BossAlien(Sprite):
“““BOSS外星人“““
def __init__(self ai_settings screen health=500):
“““初始化外星人并设置其起始位置“““
self.screen = screen
self.ai_settings = ai_settings
self.health = health
# 加载外星人图像,并设置其rect属性
self.image = pygame.image.load(‘images/enemy2.png‘)
self.rect = self.image.get_rect()
self.screen_rect=screen.get_rect()
self.rect.x = 550
self.rect.y = 100
# 存储外星人的准确位置
self.x = float(self.rect.x)
# #设置生命值
# health=100
def blitme(self):
“““在指定位置绘制外星人“““
self.screen.blit(self.image (self.rect.xself.rect.y))
def draw_health_bar(self screen):
“““显示血条“““
#参数依次表示:在SCREEN上面绘制,颜色,(该图案左上角的坐标,长度和高度)
#灰色的空白血条
pygame.draw.rect(screen (0 230 0) ((380 100) (500 10)) )
#红色的现有血量
pygame.draw.rect(screen (255 0 0) ((380 100) (self.health 10)) )
def check_edges(self):
“““如果外星人位于屏幕边缘,就返回True“““
screen_rect = self.screen.get_rect()
if self.rect.right >= screen_rect.right:
return True
elif self.rect.left <= 0:
return True
def update(self):
“““向左或向右移动外星人“““
self.x += (self.ai_settings.alien_speed_factor *
self.ai_settings.bossalien_direction)
self.rect.x = self.x
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 11384 2019-06-04 23:45 game_functions.py
文件 1703 2019-05-21 19:59 button.py
文件 2466 2019-05-21 19:59 bullet.py
文件 1828 2019-06-04 23:23 alien_invasion.py
文件 2569 2019-05-21 20:02 alien.py
文件 40044 2019-05-21 21:20 sounds\clickbuttons.wav
文件 20044 2019-05-21 21:14 sounds\firebullets.wav
文件 20044 2019-05-21 21:14 sounds\gameover.wav
文件 20044 2019-05-21 21:14 sounds\levelup.wav
文件 20044 2019-05-21 21:14 sounds\loselifes.wav
文件 2254189 2019-05-21 19:42 music\brave.mp3
文件 10494 2016-06-15 02:16 images\alien.bmp
文件 36620 2017-12-02 23:30 images\background.png
文件 5570 2017-12-02 23:30 images\bomb.png
文件 8944 2017-12-02 23:30 images\btn_finish.png
文件 486 2017-12-02 23:30 images\bullet1.png
文件 485 2017-12-02 23:30 images\bullet2.png
文件 10494 2017-12-21 02:58 images\cliens.bmp
文件 2968 2017-12-02 23:30 images\enemy1.png
文件 3365 2017-12-02 23:30 images\enemy1_down1.png
文件 3815 2017-12-02 23:30 images\enemy1_down2.png
文件 5239 2017-12-02 23:30 images\enemy1_down3.png
文件 1723 2017-12-02 23:30 images\enemy1_down4.png
文件 8112 2017-12-02 23:30 images\enemy2.png
文件 10408 2017-12-02 23:30 images\enemy2_down1.png
文件 11562 2017-12-02 23:30 images\enemy2_down2.png
文件 13310 2017-12-02 23:30 images\enemy2_down3.png
文件 3356 2017-12-02 23:30 images\enemy2_down4.png
文件 9126 2017-12-02 23:30 images\enemy2_hit.png
文件 47800 2017-12-02 23:30 images\enemy3_down1.png
............此处省略64个文件信息
相关资源
- Instant Pygame for Python Game Development How
- Biopython Tutorial
- Think Python 2nd
- 一个小小的表白程序(python)
- Python课堂笔记(高淇400集第一季)
- 二级考试python试题12套(包括选择题和
- pywin32_python3.6_64位
- python+ selenium教程
- PycURL(Windows7/Win32)Python2.7安装包 P
- 英文原版-Scientific Computing with Python
- 7.图像风格迁移 基于深度学习 pyt
- 基于Python的学生管理系统
- A Byte of Python(简明Python教程)(第
- Python实例174946
- Python 人脸识别
- Python 人事管理系统
- 基于python-flask的个人博客系统
- 计算机视觉应用开发流程
- python 调用sftp断点续传文件
- python socket游戏
- 基于Python爬虫爬取天气预报信息
- python函数编程和讲解
- Python开发的个人博客
- 基于python的三层神经网络模型搭建
- python实现自动操作windows应用
- python人脸识别(opencv)
- python 绘图(方形、线条、圆形)
- python疫情卡UN管控
- python 连连看小游戏源码
- 基于PyQt5的视频播放器设计
评论
共有 条评论