def add_charge(self, type, index, typeid): preset = self.presets[self.active_preset_id] assert index in preset.modules[type] charge_preset = preset.charge_presets[self.active_charge_preset_id] if (type in charge_preset.charges and index in charge_preset.charges[type]): self.remove_charge(type, index) charge_preset.charges[type][index] = { 'typeid': typeid, 'typename': dogma_attrs.get_typename(typeid), } self.dogma_context.add_charge(preset.modules[type][index]['dogma_index'], typeid)
def add_drone(self, typeid, inbay=1, inspace=0): preset = self.drone_presets[self.active_drone_preset_id] if typeid not in preset.drones: preset.drones[typeid] = { 'typeid': typeid, 'typename': dogma_attrs.get_typename(typeid), 'volume': dogma_attrs.get_volume(typeid), 'quantityinbay': 0, 'quantityinspace': 0, } preset.drones[typeid]['quantityinbay'] += inbay preset.drones[typeid]['quantityinspace'] += inspace self.dogma_context.add_drone(typeid, inspace)
def add_module(self, index, typeid, state=None): type = dogma_attrs.get_slottype(typeid) preset = self.presets[self.active_preset_id] if index in preset.modules[type]: self.remove_module(index, preset.modules[type][index]['typeid']) (is_activable, _) = dogma_attrs.get_states(typeid) if state is None: state = STATE_ACTIVE if is_activable and slottypes[type][2] else STATE_ONLINE dogma_index = self.dogma_context.add_module(typeid, state=state) preset.modules[type][index] = { 'typeid': typeid, 'typename': dogma_attrs.get_typename(typeid), 'state': state, 'dogma_index': dogma_index, }