def __init__(self, x, y): super(Boss, self).__init__(True, Resources.Image_Ship_Module_Enemy_Boss) self.x = x self.y = 3 * 32 + 16 self.engine_power = self.engine_power / 8.0 self.time = 0 self.base_health = 300 self.upgrade(smsp.ShipComponentLaser(-2, 1, self, smsp.LaserType.SimpleLaser)) self.upgrade(smsp.ShipComponentLaser(-2, -1, self, smsp.LaserType.SimpleLaser)) self.upgrade(smsp.ShipComponentLaser(-3, 0, self, smsp.LaserType.AngleLaser)) self.upgrade(smsp.ShipComponentLaser(-1, -1, self, smsp.LaserType.AngleLaser)) self.upgrade(smsp.ShipComponentLaser(-1, 1, self, smsp.LaserType.AngleLaser)) self.upgrade(smsp.ShipComponentLaser(-1, -2, self, smsp.LaserType.HeavyLaser)) self.upgrade(smsp.ShipComponentLaser(-1, 2, self, smsp.LaserType.HeavyLaser)) self.upgrade(smsp.ShipComponentLaser(1, 0, self, smsp.LaserType.RailGun)) self.upgrade(HeavyHull(0, -2, self)) self.upgrade(HeavyHull(1, -2, self)) self.upgrade(HeavyHull(0, 2, self)) self.upgrade(HeavyHull(1, 2, self)) self.upgrade(Shield(-2, 0, self)) self.upgrade(RepairCrane(0, -1, self)) self.upgrade(RepairCrane(0, 1, self)) self.upgrade(Jet(1, -1, self)) self.upgrade(Jet(2, 0, self)) self.upgrade(Jet(1, 1, self))
def __init__(self, x, y): super(Hammerhead, self).__init__(x, y, Resources.Image_Ship_Module_Enemy_Large) self.base_health = 50 self.upgrade(Ram(-0, -2, self)) self.upgrade(Ram(-1, -1, self)) self.upgrade(Ram(-2, 0, self)) self.upgrade(Ram(-1, 1, self)) self.upgrade(Ram(-0, 2, self)) self.upgrade(HeavyHull(-1, -1, self)) self.upgrade(HeavyHull(0, -1, self)) self.upgrade(HeavyHull(-1, 1, self)) self.upgrade(HeavyHull(0, 1, self)) self.upgrade(HeavyHull(1, -2, self)) self.upgrade(HeavyHull(1, 2, self)) self.upgrade(Jet(3, -2, self)) self.upgrade(Jet(2, -2, self)) self.upgrade(Jet(2, -1, self)) self.upgrade(Jet(1, -1, self)) self.upgrade(Jet(1, 0, self)) self.upgrade(Jet(1, 1, self)) self.upgrade(Jet(2, 1, self)) self.upgrade(Jet(2, 2, self)) self.upgrade(Jet(3, 2, self))
def __init__(self, x, y): super(Goliath, self).__init__(True, Resources.Image_Ship_Module_Enemy_Boss) self.x = x self.y = y self.engine_power = self.engine_power / 2.0 self.time = random.random() * 2.0 * 3.1415 self.base_health = 300 self.upgrade(RepairCrane(1, -5, self)) self.upgrade(RepairCrane(1, -2, self)) self.upgrade(RepairCrane(1, 0, self)) self.upgrade(RepairCrane(1, 2, self)) self.upgrade(RepairCrane(1, 5, self)) for y in range(-5, 6): self.upgrade( smsp.ShipComponentLaser(-1, y, self, smsp.LaserType.HeavyLaser)) self.upgrade(HeavyHull(0, y, self)) self.upgrade(HeavyHull(1, y, self)) self.upgrade( smsp.ShipComponentLaser(2, y, self, smsp.LaserType.AngleLaser)) for y in range(-4, 5): self.upgrade( smsp.ShipComponentLaser(-2, y, self, smsp.LaserType.SimpleLaser)) self.upgrade( smsp.ShipComponentLaser(3, y, self, smsp.LaserType.SimpleLaser)) for y in range(-3, 4): self.upgrade(HeavyHull(-3, y, self)) self.upgrade(Jet(4, y, self))
def __init__(self, x, y): super(Freighter, self).__init__(x, y, Resources.Image_Ship_Module_Enemy_Large) self.base_health = 50 self.upgrade(HeavyHull(0, -2, self)) self.upgrade(HeavyHull(-1, -1, self)) self.upgrade(HeavyHull(-2, 0, self)) self.upgrade(HeavyHull(-1, 1, self)) self.upgrade(HeavyHull(0, 2, self)) self.upgrade(Shield(0, -1, self)) self.upgrade(Shield(0, 1, self)) self.upgrade(Jet(1, -1, self)) self.upgrade(Jet(1, 1, self)) self.upgrade(Jet(1, 0, self))
def __init__(self, x, y): super(Sniper, self).__init__(x, y, Resources.Image_Ship_Module_Enemy_RailGun) self.base_health = 30 self.upgrade(smsp.ShipComponentLaser(1, 0, self, smsp.LaserType.RailGun)) self.upgrade(HeavyHull(1, 1, self)) self.upgrade(HeavyHull(1, -1, self)) self.upgrade(Jet(2, 0, self))
def __init__(self, x, y): super(Behemoth, self).__init__(x, y, Resources.Image_Ship_Module_Enemy_Medium2) self.base_health = 150 self.upgrade(smsp.ShipComponentLaser(-1, -1, self, smsp.LaserType.HeavyLaser)) self.upgrade(smsp.ShipComponentLaser(-2, 0, self, smsp.LaserType.HeavyLaser)) self.upgrade(smsp.ShipComponentLaser(-1, 1, self, smsp.LaserType.HeavyLaser)) self.upgrade(smsp.ShipComponentLaser(-2, -2, self, smsp.LaserType.AngleLaser)) self.upgrade(smsp.ShipComponentLaser(-2, 2, self, smsp.LaserType.AngleLaser)) self.upgrade(HeavyHull(-1, -2, self)) self.upgrade(HeavyHull(0, -2, self)) self.upgrade(HeavyHull(-2, -1, self)) self.upgrade(HeavyHull(-2, 1, self)) self.upgrade(HeavyHull(-1, 2, self)) self.upgrade(HeavyHull(0, 2, self)) self.upgrade(Jet(0, -1, self)) self.upgrade(Jet(0, 1, self))
def __init__(self, x, y): super(Reaper, self).__init__(x, y, Resources.Image_Ship_Module_Enemy_Medium) self.base_health = 80 self.upgrade( smsp.ShipComponentLaser(0, -2, self, smsp.LaserType.SimpleLaser)) self.upgrade( smsp.ShipComponentLaser(-1, -1, self, smsp.LaserType.SimpleLaser)) self.upgrade( smsp.ShipComponentLaser(-2, 0, self, smsp.LaserType.SimpleLaser)) self.upgrade( smsp.ShipComponentLaser(-1, 1, self, smsp.LaserType.SimpleLaser)) self.upgrade( smsp.ShipComponentLaser(0, 2, self, smsp.LaserType.SimpleLaser)) self.upgrade(HeavyHull(0, -1, self)) self.upgrade(HeavyHull(0, 1, self)) self.upgrade(Jet(1, 0, self))
def __init__(self, x, y): super(Goliath, self).__init__(True, Resources.Image_Ship_Module_Enemy_Endboss) self.x = x self.y = globals.window.height / 2 - 32 * 5 - 16 self.engine_power = self.engine_power / 2 self.time = 0 self.base_health = 300 self.upgrade(RepairCrane(1, -5, self)) self.upgrade(RepairCrane(1, -2, self)) self.upgrade(RepairCrane(1, 0, self)) self.upgrade(RepairCrane(1, 2, self)) self.upgrade(RepairCrane(1, 5, self)) for y in range(-5, 6): if y % 2 == 0: self.upgrade( smsp.ShipComponentLaser(-1, y, self, smsp.LaserType.HeavyLaser)) self.upgrade(HeavyHull(2, y, self)) else: self.upgrade(HeavyHull(-1, y, self)) self.upgrade( smsp.ShipComponentLaser(2, y, self, smsp.LaserType.HeavyLaser)) self.upgrade(HeavyHull(0, y, self)) self.upgrade(HeavyHull(1, y, self)) for y in range(-4, 5): self.upgrade( smsp.ShipComponentLaser(-2, y, self, smsp.LaserType.SimpleLaser)) self.upgrade( smsp.ShipComponentLaser(3, y, self, smsp.LaserType.SimpleLaser)) for y in range(-3, 4): self.upgrade(Ram(-3, y, self)) self.upgrade(Jet(4, y, self))