You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.6 KiB
44 lines
1.6 KiB
import os
|
|
|
|
import pygame
|
|
|
|
from common_func import get_base_path
|
|
|
|
|
|
class WallNut(pygame.sprite.Sprite):
|
|
def __init__(self, rect):
|
|
|
|
super(WallNut, self).__init__()
|
|
self.image = pygame.image.load(os.path.join(get_base_path(), 'images/WallNut/WallNut00.png')).convert_alpha()
|
|
self.images = [pygame.image.load(
|
|
os.path.join(get_base_path(), 'images/WallNut/WallNut{:02d}.png'.format(i))).convert_alpha() for i in
|
|
range(0, 17)]
|
|
self.Imgs2 = [pygame.image.load(
|
|
os.path.join(get_base_path(), 'images/WallNut/WallNut2_{:02d}.png'.format(i))).convert_alpha() for i in
|
|
range(0, 17)]
|
|
self.Imgs3 = [pygame.image.load(
|
|
os.path.join(get_base_path(), 'images/WallNut/WallNut3_{:02d}.png'.format(i))).convert_alpha() for i in
|
|
range(0, 17)]
|
|
self.rect = self.images[0].get_rect()
|
|
self.rect.left = rect[0]
|
|
self.rect.top = rect[1]
|
|
self.energy = 333
|
|
self.zombies = set()
|
|
|
|
def update(self, *args):
|
|
for zombie in self.zombies:
|
|
if not zombie.Alive:
|
|
self.energy += 0
|
|
else:
|
|
self.energy -= 1
|
|
if self.energy <= 0:
|
|
for zombie in self.zombies:
|
|
zombie.GO = False
|
|
self.kill()
|
|
elif self.energy >= 222:
|
|
self.image = self.images[args[0] % len(self.images)]
|
|
elif 111 <= self.energy < 222:
|
|
self.image = self.Imgs2[args[0] % len(self.Imgs2)]
|
|
else:
|
|
self.image = self.Imgs3[args[0] % len(self.Imgs3)]
|