添加 'settings'

This commit is contained in:
206530410 2021-06-22 12:05:04 +08:00
parent 3a5476a557
commit a20326b0d6
1 changed files with 50 additions and 0 deletions

50
settings Normal file
View File

@ -0,0 +1,50 @@
class Settings():
"""存储《外星人入侵》的所有设置的类"""
def __init__(self):
"""初始化游戏的设置"""
# 屏幕设置
self.screen_width = 1200 #设置屏幕宽度
self.screen_height = 800 #设置屏幕高度
self.bg_color = (230, 230, 230) #设置屏幕背景色
# 飞船的位置
self.ship_speed_factor = 1.5 #设置飞船左右移动速度
self.ship_limit = 3 #设置飞船个数,即飞船有几条“命”
# 子弹设置
self.bullet_speed_factor = 3 #设置子弹的向上移动速度
self.bullet_width = 3 #设置子弹的宽度
self.bullet_height = 15 #设置子弹的高度
self.bullet_color = 60, 60, 60 #设置子弹的眼色
self.bullets_allowed = 5 #设置屏幕上最多同时存在的子弹数
# 外星人设置
self.alien_speed_factor = 1 #设置外星人的左右移动速度
self.fleet_drop_speed = 10 #设置外星人群的向下移动速度
# 以什么样的速度加快游戏节奏
self.speedup_scale = 1.1 #设置每轮游戏节奏加快速度
# 外星人点数的提高速度
self.score_scale = 1.5 #设置每轮外星人分数提高倍数
self.initialize_dynamic_settings() #调用initialize_dynamic_settings()函数初始化游戏参数
def initialize_dynamic_settings(self):
"""初始化随游戏进行而变化的设置"""
self.ship_speed_factor = 1.5
self.bullet_speed_factor = 5
self.alien_speed_factor = 1
# fleet_direction为1表示向右移-1表示向左移
self.fleet_direction = 1 #设置外星人群左右移动方向
# 记分
self.alien_points = 50 # 设置外星人分数
def increase_speed(self):
"""提高速度设置"""
self.ship_speed_factor *= self.speedup_scale
self.bullet_speed_factor *= self.speedup_scale
self.alien_speed_factor *= self.speedup_scale
self.alien_points = int(self.alien_points * self.score_scale)