diff --git a/power.py b/power.py new file mode 100644 index 0000000..7dafc3a --- /dev/null +++ b/power.py @@ -0,0 +1,37 @@ +import random +from typing import Any + +import pygame +from pygame.sprite import Sprite + + +# 道具类 +class PowerBase(Sprite): + def __init__(self, ai_game): + super().__init__() + # 获取屏幕设置 + self.screen = ai_game.screen + self.screen_rect = ai_game.screen.get_rect() + self.settings = ai_game.settings + + def update(self, *args: Any, **kwargs: Any) -> None: + pass + + +class Prop(PowerBase): # 道具 + def __init__(self, ai_game): + super().__init__(ai_game) + # 导入图片 + self.type = random.choice(self.settings.prop_images_list) + self.image = self.settings.prop_images[self.type].convert() + self.image.set_colorkey(self.settings.BLACK) + self.rect = self.image.get_rect() + self.speed = 5 + + def update(self, *args: Any, **kwargs: Any) -> None: + self.rect.y += self.speed + if self.rect.top > self.screen_rect.height: + self.kill() + + +