没有合适的资源?快使用搜索试试~ 我知道了~
Python编程——从入门到实践外星人入侵项目
5星 · 超过95%的资源 10 下载量 73 浏览量
2021-01-20
02:36:26
上传
评论
收藏 135KB PDF 举报
温馨提示
试读
9页
练习这个项目时,我用的编辑器是pycharm,然后安装第三方库pygame(功能很强大),这个项目代码还是比较多的,需要学习管理包含多个文件的项目,体会到函数以及变量命名方法还需要重构很多代码,以提高代码的效率,总之,对于刚入门来说,是一个用来练手的一个非常不错的项目。 安装pygame这里就不多说了,下面是我完成所有操作后的代码: alien_invasion.py import sys import pygame from pygame.sprite import Group from setting import Settings from game_stats import GameS
资源详情
资源评论
资源推荐
Python编程编程——从入门到实践外星人入侵项目从入门到实践外星人入侵项目
练习这个项目时,我用的编辑器是pycharm,然后安装第三方库pygame(功能很强大),这个项目代码还是比较多的,需要学
习管理包含多个文件的项目,体会到函数以及变量命名方法还需要重构很多代码,以提高代码的效率,总之,对于刚入门来
说,是一个用来练手的一个非常不错的项目。
安装pygame这里就不多说了,下面是我完成所有操作后的代码:
alien_invasion.py
import sys
import pygame
from pygame.sprite import Group
from setting import Settings
from game_stats import GameStats
from scoreboard import Scoreboard
from button import Button
from ship import Ship
from alien import Alien
import game_functions as gf
def run_game():
# 初始化游pygame,设置和屏幕对象
pygame.init()#初始化背景设置
ai_settings= Settings() #创建Settings实例,并将其存储在变量ai_settings中
screen = pygame.display.set_mode((ai_settings.screen_width, ai_settings.screen_height))#创建一个名为screen的显示窗口
pygame.display.set_caption("Alien Invasion")
#创建Play按钮
play_button = Button(ai_settings, screen, "Play")
#创建一个用于存储游戏统计信息的实例,并创建记分牌
stats= GameStats(ai_settings)
sb = Scoreboard(ai_settings, screen, stats)
# 创建飞船,子弹编组和外星人编组
ship = Ship(ai_settings, screen)
bullets = Group()
aliens = Group()
# 创建一个外星人群
gf.create_fleet(ai_settings, screen, ship, aliens)
# 开始游戏主循环
while True:
gf.check_events(ai_settings, screen, stats, sb, play_button, ship, aliens, bullets)
if stats.game_active:
ship.update()
gf.update_bullets(ai_settings, screen, stats, sb, ship, aliens, bullets)
gf.update_aliens(ai_settings, stats, sb, screen, ship, aliens, bullets)
gf.update_screen(ai_settings, screen, stats, sb, ship, aliens, bullets, play_button)
run_game()#初始化游戏,并开始主循环
setting.py
class Settings():
"""存储游戏中所有设置的类"""
def __init__(self):
"""初始化游戏的静态设置"""
# 屏幕设置
self.screen_width = 800
self.screen_height = 600
self.bg_color = (230,230,230)#设定创建的显示窗口的大小,以及颜色
# 飞船的设置
self.ship_limit = 3
# 子弹设置
self.bullet_width = 300
self.bullet_height = 15
self.bullet_color = 60, 60, 60
self.bullets_allowed = 3
# 外星人设置
self.fleet_drop_speed = 10
#以什么样的速度加快游戏节奏
self.speedup_scale = 1.1
#外星人点数提高速度
self.score_scale = 1.5
self.initialize_dynamic_settings()
weixin_38708223
- 粉丝: 5
- 资源: 915
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论10