MCPcopy Index your code
hub / github.com/pyfa-org/Pyfa / DroneInfo

Class DroneInfo

gui/fitCommands/helpers.py:167–217  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

165
166
167class DroneInfo:
168
169 def __init__(self, amount, amountActive, itemID, baseItemID=None, mutaplasmidID=None, mutations=None):
170 self.itemID = itemID
171 self.baseItemID = baseItemID
172 self.mutaplasmidID = mutaplasmidID
173 self.mutations = mutations
174 self.amount = amount
175 self.amountActive = amountActive
176
177 @classmethod
178 def fromDrone(cls, drone):
179 if drone is None:
180 return None
181 info = cls(
182 itemID=drone.itemID,
183 amount=drone.amount,
184 amountActive=drone.amountActive,
185 baseItemID=drone.baseItemID,
186 mutaplasmidID=drone.mutaplasmidID,
187 mutations={m.attrID: m.value for m in drone.mutators.values()})
188 return info
189
190 def toDrone(self):
191 mkt = Market.getInstance()
192 item = mkt.getItem(self.itemID, eager=('attributes', 'group.category'))
193 if self.baseItemID and self.mutaplasmidID:
194 baseItem = mkt.getItem(self.baseItemID, eager=('attributes', 'group.category'))
195 mutaplasmid = eos.db.getDynamicItem(self.mutaplasmidID)
196 else:
197 baseItem = None
198 mutaplasmid = None
199 try:
200 drone = Drone(item, baseItem=baseItem, mutaplasmid=mutaplasmid)
201 except ValueError:
202 pyfalog.warning('Invalid item: {}'.format(self.itemID))
203 return None
204
205 if self.mutations is not None:
206 for attrID, mutator in drone.mutators.items():
207 if attrID in self.mutations:
208 mutator.value = self.mutations[attrID]
209
210 drone.amount = self.amount
211 drone.amountActive = self.amountActive
212 return drone
213
214 def __repr__(self):
215 return makeReprStr(self, [
216 'itemID', 'amount', 'amountActive',
217 'baseItemID', 'mutaplasmidID', 'mutations'])
218
219
220class FighterInfo:

Callers 6

DoMethod · 0.90
__init__Method · 0.90
DoMethod · 0.90
DoMethod · 0.90
DoMethod · 0.90
__init__Method · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected