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

Method getRepAmountParameters

eos/saveddata/module.py:558–604  ·  view source on GitHub ↗
(self, spoolOptions=None, ignoreState=False)

Source from the content-addressed store, hash-verified

556 return False
557
558 def getRepAmountParameters(self, spoolOptions=None, ignoreState=False):
559 if self.isEmpty or (self.state < FittingModuleState.ACTIVE and not ignoreState):
560 return {}
561 remoteModuleGroups = {
562 "Remote Armor Repairer": "Armor",
563 "Ancillary Remote Armor Repairer": "Armor",
564 "Mutadaptive Remote Armor Repairer": "Armor",
565 "Remote Hull Repairer": "Hull",
566 "Remote Shield Booster": "Shield",
567 "Ancillary Remote Shield Booster": "Shield",
568 "Remote Capacitor Transmitter": "Capacitor"}
569 rrType = remoteModuleGroups.get(self.item.group.name)
570 if rrType is None:
571 return {}
572 if self.__baseRRAmount is None:
573 self.__baseRRAmount = {}
574 shieldAmount = 0
575 armorAmount = 0
576 hullAmount = 0
577 capacitorAmount = 0
578 if rrType == "Hull":
579 hullAmount += self.getModifiedItemAttr("structureDamageAmount", 0)
580 elif rrType == "Armor":
581 if self.item.group.name == "Ancillary Remote Armor Repairer" and self.charge:
582 mult = self.getModifiedItemAttr("chargedArmorDamageMultiplier", 1)
583 else:
584 mult = 1
585 armorAmount += self.getModifiedItemAttr("armorDamageAmount", 0) * mult
586 elif rrType == "Shield":
587 shieldAmount += self.getModifiedItemAttr("shieldBonus", 0)
588 elif rrType == "Capacitor":
589 capacitorAmount += self.getModifiedItemAttr("powerTransferAmount", 0)
590 rrDelay = 0 if rrType == "Shield" else self.rawCycleTime
591 self.__baseRRAmount[rrDelay] = RRTypes(shield=shieldAmount, armor=armorAmount, hull=hullAmount, capacitor=capacitorAmount)
592 spoolType, spoolAmount = resolveSpoolOptions(spoolOptions, self)
593 spoolBoost = calculateSpoolup(
594 self.getModifiedItemAttr("repairMultiplierBonusMax", 0),
595 self.getModifiedItemAttr("repairMultiplierBonusPerCycle", 0),
596 self.rawCycleTime / 1000, spoolType, spoolAmount)[0]
597 spoolMultiplier = 1 + spoolBoost
598 adjustedRRAmount = {}
599 for rrTime, rrAmount in self.__baseRRAmount.items():
600 if spoolMultiplier == 1:
601 adjustedRRAmount[rrTime] = rrAmount
602 else:
603 adjustedRRAmount[rrTime] = rrAmount * spoolMultiplier
604 return adjustedRRAmount
605
606 def getRemoteReps(self, spoolOptions=None, ignoreState=False, reloadOverride=None):
607 rrDuringCycle = RRTypes(0, 0, 0, 0)

Callers 2

isRemoteReppingMethod · 0.95
getRemoteRepsMethod · 0.95

Calls 6

RRTypesClass · 0.90
resolveSpoolOptionsFunction · 0.90
calculateSpoolupFunction · 0.90
itemsMethod · 0.80
getMethod · 0.45
getModifiedItemAttrMethod · 0.45

Tested by

no test coverage detected