def __init__(self, name, coords, position, **kwargs): self.name = name self.coords = coords self.position = position self.idle = kwargs.get('idle', False) self.capital = kwargs.get('capital', False) self.waiting_for = kwargs.get('waiting_for', {}) self.fleet = kwargs.get('fleet', Fleet()) self.resources = kwargs.get('resources', Resources()) self.constructs = kwargs.get('constructs', Constructions()) self.plans = kwargs.get('plans', Constructions()) PlannerMixin.__init__(self, 'constructs', 'plans') for ships in [ships for ships in self.fleet if not ships.quantity]: self.fleet.remove(ships)
def fleet(self): fleet = Fleet() for planet in self: for ships in planet.fleet: fleet.add(ships=ships) return fleet
def load(cls, **kwargs): kwargs['fleet'] = Fleet.load(**kwargs.get('fleet', {})) kwargs['resources'] = Resources.load(**kwargs.get('resources', {})) return cls(**kwargs)