Пример #1
0
    def __init__(self, screen, img, stats):
        self.screen = screen

        if isinstance(img, str):
            self.img = pygame.image.load(img)
        else:
            self.img = img
        self.img = pygame.transform.scale(self.img, (int(
            self.screen.get_height() / 2), int(self.screen.get_height() / 2)))
        self.unit = Unit(self.screen, self.img, showRPM=False)
        self.unit.position = (
            (((self.screen.get_width() / 2) - self.unit.width) / 2) +
            (self.unit.width / 2),
            ((self.screen.get_height() - self.unit.height) / 2) +
            (self.unit.height / 2),
        )
        self.unit.angularVelocity = 100
        self.unit.angularFriction = 0

        # self.unit.Equip(WeaponFireStick(self.screen, self.unit))

        self.weaponsTypes = [
            WeaponFireStick,
            WeaponShield,
        ]

        # init
        self.current = 0
        self.ready = False
        self.lastInteraction = pygame.time.get_ticks()

        self.previewUnits = {
            # type(weapon): Unit()
        }
        surf = pygame.Surface(self.unit.size)
        pygame.draw.circle(surf, (100, 100, 100),
                           surf.get_rect().center,
                           surf.get_width() / 2)
        for weaponType in self.weaponsTypes:
            unit = Unit(self.screen, surf, showRPM=False, bounceOffWalls=False)
            unit.angularFriction = 0
            unit.angularVelocity = 100
            unit.Equip(weaponType(self.screen, unit))
            self.previewUnits[weaponType] = unit