def _load(self, db, owner, worldid): self.owner = owner super(SettlementManager, self).load(db, worldid) # load the main part land_manager_id = db( "SELECT land_manager FROM ai_settlement_manager WHERE rowid = ?", worldid)[0][0] land_manager = WorldObject.get_object_by_id(land_manager_id) # find the settlement for settlement in self.owner.session.world.settlements: if settlement.owner == self.owner and settlement.island == land_manager.island: land_manager.settlement = settlement break assert land_manager.settlement self.resource_manager = ResourceManager.load(db, self) self.trade_manager = TradeManager.load(db, self) self.__init(land_manager) # load the master builders self.village_builder = VillageBuilder.load(db, self) self.production_builder = ProductionBuilder.load(db, self) self.village_builder.display() self.production_builder.display() self.__init_goals() # the add_building events happen before the settlement manager is loaded so they have to be repeated here for building in self.settlement.buildings: self.add_building(building)
def _load(self, db, owner, worldid): self.owner = owner super(SettlementManager, self).load(db, worldid) # load the main part land_manager_id = db("SELECT land_manager FROM ai_settlement_manager WHERE rowid = ?", worldid)[0][0] land_manager = WorldObject.get_object_by_id(land_manager_id) # find the settlement for settlement in self.owner.session.world.settlements: if settlement.owner == self.owner and settlement.island == land_manager.island: land_manager.settlement = settlement break assert land_manager.settlement self.resource_manager = ResourceManager.load(db, self) self.trade_manager = TradeManager.load(db, self) self.__init(land_manager) # load the master builders self.village_builder = VillageBuilder.load(db, self) self.production_builder = ProductionBuilder.load(db, self) self.village_builder.display() self.production_builder.display() self.__init_goals() # the add_building events happen before the settlement manager is loaded so they have to be repeated here for building in self.settlement.buildings: self.add_building(building)