示例#1
0
 def fire(self):
     if self.dmg_timer < 0:
         GOL.add_go(
             Projectile(self,
                        "DOWN",
                        self.dmg_speed,
                        self.dmg,
                        sprite=self.dmg_sprite,
                        sprite_expl=r"images\alien\plasmaball_expl.png"))
         self.dmg_timer = self.dmg_rate
     else:
         self.dmg_timer -= 1
示例#2
0
 def take_dmg(self, dmg):
     if self.shield_hp > 0:
         self.shield_hp -= dmg
         self.shield_charge = 0
         if self.shield_hp < 0:
             self.hp += self.shield_hp
             self.shield_hp = 0
     else:
         self.hp -= dmg
         self.shield_charge = 0
     if self.hp <= 0:
         self.destroyed = True
         GOL.add_go(
             Title("GAME OVER!",
                   60,
                   self.expl_time * 3,
                   color=(250, 50, 100)))
 def play_lvl(cls, lvl_num):
     lvl = cls.levels[str(lvl_num)]
     GOL.add_go(Title(lvl["title"], 100, 60 * lvl["delay"]))
     for spawn in lvl["spawns"]:
         if spawn["type"] == "alien1":
             GOL.add_go(
                 Alien1(spawn["x"],
                        timer=spawn["timer"] * 60 + lvl["delay"] * 60))
         if spawn["type"] == "alien2":
             GOL.add_go(
                 Alien2(spawn["x"],
                        timer=spawn["timer"] * 60 + lvl["delay"] * 60))
示例#4
0
def setup():
    from main import screen
    # Delete old game objects
    GOL.del_golist()
    # Add new player, base, hp bars and reset levels
    GOL.add_go(Player())
    GOL.add_go(Base())
    GOL.add_go(PlayerInteface())
    LM.reset()
    gamestart = False

    while not gamestart:
        # Start screen, fill and text
        screen.fill((0, 250, 0))
        screen.blit(space, (0, 0))
        pygame.font.init()
        font = pygame.font.SysFont("Tahoma MS", size=60)
        title = font.render("KILL ALL THE ALIENS!", True, (255, 215, 0))
        rect = title.get_rect()
        rect.centerx = screen.get_rect().centerx
        rect.centery = screen.get_rect().top + 100
        screen.blit(title, rect)
        font = pygame.font.SysFont("Arial MS", size=18)
        title = font.render("PRESS ANY KEY TO START", True, (250, 250, 0))
        rect = title.get_rect()
        rect.centerx = screen.get_rect().centerx
        rect.centery = screen.get_rect().top + 400
        screen.blit(title, rect)

        pygame.display.update()
        clock.tick(60)

        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                sys.exit()
            if event.type == pygame.KEYDOWN:
                gamestart = True
示例#5
0
 def fire(self):
     GOL.add_go(
         Projectile(self, "UP", self.dmg_speed, self.dmg, self.dmg_sprite))