更新 'ship'

This commit is contained in:
201110504 2021-06-20 11:30:10 +08:00
parent 696d02b3d2
commit 9c9b007b99
1 changed files with 19 additions and 0 deletions

19
ship
View File

@ -6,6 +6,7 @@ class Ship:
def __init__(self, ai_game):
"""初始化飞船并设置其初始位置"""
self.screen = ai_game.screen
self.settings = ai_game.settings
self.screen_rect = ai_game.screen.get_rect()
# 加载飞船图像并获取其外接矩形
@ -15,6 +16,24 @@ class Ship:
# 对于每艘新飞船,都将其放在屏幕底部的中央
self.rect.midbottom = self.screen_rect.midbottom
# 在飞船的属性x中存储最小值
self.x = float(self.rect.x)
# 移动标志
self.moving_right = False
self.moving_left = False
def update(self):
"""根据移动标志调整飞船的位置"""
# 更新飞船而不是rect对象的x值
if self.moving_right and self.rect.right < self.screen_rect.right:
self.x += self.settings.ship_speed
if self.moving_left and self.rect.left > 0:
self.x -= self.settings.ship_speed
# 根据self.x更新rect对象
self.rect.x = self.x
def blitme(self):
"""在指定位置绘制飞船"""
self.screen.blit(self.image, self.rect)