Add spoolup support to misc column tooltips
This commit is contained in:
@@ -27,7 +27,7 @@ from gui.viewColumn import ViewColumn
|
||||
from gui.bitmap_loader import BitmapLoader
|
||||
from gui.utils.numberFormatter import formatAmount
|
||||
from gui.utils.listFormatter import formatList
|
||||
from eos.saveddata.drone import Drone
|
||||
from eos.utils.spoolSupport import SpoolType
|
||||
|
||||
|
||||
class Miscellanea(ViewColumn):
|
||||
@@ -332,40 +332,45 @@ class Miscellanea(ViewColumn):
|
||||
text = "{0}s".format(formatAmount(float(recalibration) / 1000, 3, 0, 3))
|
||||
tooltip = "Sensor recalibration time"
|
||||
return text, tooltip
|
||||
elif itemGroup in ("Remote Armor Repairer", "Mutadaptive Remote Armor Repairer"):
|
||||
repAmount = stuff.getModifiedItemAttr("armorDamageAmount")
|
||||
cycleTime = stuff.getModifiedItemAttr("duration")
|
||||
if not repAmount or not cycleTime:
|
||||
elif itemGroup == "Remote Armor Repairer":
|
||||
rps = stuff.getRemoteReps(stateOverride=True)[1]
|
||||
if not rps:
|
||||
return "", None
|
||||
repPerSec = float(repAmount) * 1000 / cycleTime
|
||||
text = "{0}/s".format(formatAmount(repPerSec, 3, 0, 3, forceSign=True))
|
||||
text = "{0}/s".format(formatAmount(rps, 3, 0, 3, forceSign=True))
|
||||
tooltip = "Armor repaired per second"
|
||||
return text, tooltip
|
||||
elif itemGroup == "Remote Shield Booster":
|
||||
repAmount = stuff.getModifiedItemAttr("shieldBonus")
|
||||
cycleTime = stuff.cycleTime
|
||||
if not repAmount or not cycleTime:
|
||||
elif itemGroup == "Mutadaptive Remote Armor Repairer":
|
||||
rps = stuff.getRemoteReps(stateOverride=True)[1]
|
||||
rpsPreSpool = stuff.getRemoteReps(spoolType=SpoolType.SCALE, spoolAmount=0, stateOverride=True)[1]
|
||||
rpsFullSpool = stuff.getRemoteReps(spoolType=SpoolType.SCALE, spoolAmount=1, stateOverride=True)[1]
|
||||
# TODO: use spoolup options to fetch main value
|
||||
rps = rpsFullSpool
|
||||
if not rps:
|
||||
return "", None
|
||||
repPerSec = float(repAmount) * 1000 / cycleTime
|
||||
text = "{0}/s".format(formatAmount(repPerSec, 3, 0, 3, forceSign=True))
|
||||
text = "{0}/s".format(formatAmount(rps, 3, 0, 3, forceSign=True))
|
||||
tooltip = "Armor repaired per second, spoolup {}-{}".format(
|
||||
formatAmount(rpsPreSpool, 3, 0, 3),
|
||||
formatAmount(rpsFullSpool, 3, 0, 3))
|
||||
return text, tooltip
|
||||
elif itemGroup == "Remote Shield Booster":
|
||||
rps = stuff.getRemoteReps(stateOverride=True)[1]
|
||||
if not rps:
|
||||
return "", None
|
||||
text = "{0}/s".format(formatAmount(rps, 3, 0, 3, forceSign=True))
|
||||
tooltip = "Shield transferred per second"
|
||||
return text, tooltip
|
||||
elif itemGroup == "Remote Capacitor Transmitter":
|
||||
repAmount = stuff.getModifiedItemAttr("powerTransferAmount")
|
||||
cycleTime = stuff.cycleTime
|
||||
if not repAmount or not cycleTime:
|
||||
rps = stuff.getRemoteReps(stateOverride=True)[1]
|
||||
if not rps:
|
||||
return "", None
|
||||
repPerSec = float(repAmount) * 1000 / cycleTime
|
||||
text = "{0}/s".format(formatAmount(repPerSec, 3, 0, 3, forceSign=True))
|
||||
text = "{0}/s".format(formatAmount(rps, 3, 0, 3, forceSign=True))
|
||||
tooltip = "Energy transferred per second"
|
||||
return text, tooltip
|
||||
elif itemGroup == "Remote Hull Repairer":
|
||||
repAmount = stuff.getModifiedItemAttr("structureDamageAmount")
|
||||
cycleTime = stuff.cycleTime
|
||||
if not repAmount or not cycleTime:
|
||||
rps = stuff.getRemoteReps(stateOverride=True)[1]
|
||||
if not rps:
|
||||
return "", None
|
||||
repPerSec = float(repAmount) * 1000 / cycleTime
|
||||
text = "{0}/s".format(formatAmount(repPerSec, 3, 0, 3, forceSign=True))
|
||||
text = "{0}/s".format(formatAmount(rps, 3, 0, 3, forceSign=True))
|
||||
tooltip = "Structure repaired per second"
|
||||
return text, tooltip
|
||||
elif itemGroup == "Gang Coordinator":
|
||||
@@ -463,28 +468,11 @@ class Miscellanea(ViewColumn):
|
||||
tooltip = "Mining Yield per second ({0} per hour)".format(formatAmount(minePerSec * 3600, 3, 0, 3))
|
||||
return text, tooltip
|
||||
elif itemGroup == "Logistic Drone":
|
||||
armorAmount = stuff.getModifiedItemAttr("armorDamageAmount")
|
||||
shieldAmount = stuff.getModifiedItemAttr("shieldBonus")
|
||||
hullAmount = stuff.getModifiedItemAttr("structureDamageAmount")
|
||||
repAmount = armorAmount or shieldAmount or hullAmount
|
||||
cycleTime = stuff.getModifiedItemAttr("duration")
|
||||
if not repAmount or not cycleTime:
|
||||
repType, rps = stuff.getRemoteReps(stateOverride=True)
|
||||
if not repType:
|
||||
return "", None
|
||||
repPerSecPerDrone = repPerSec = float(repAmount) * 1000 / cycleTime
|
||||
|
||||
if isinstance(stuff, Drone):
|
||||
repPerSec *= stuff.amount
|
||||
|
||||
text = "{0}/s".format(formatAmount(repPerSec, 3, 0, 3))
|
||||
ttEntries = []
|
||||
if hullAmount is not None and repAmount == hullAmount:
|
||||
ttEntries.append("structure")
|
||||
if armorAmount is not None and repAmount == armorAmount:
|
||||
ttEntries.append("armor")
|
||||
if shieldAmount is not None and repAmount == shieldAmount:
|
||||
ttEntries.append("shield")
|
||||
|
||||
tooltip = "{0} HP repaired per second\n{1} HP/s per drone".format(formatList(ttEntries).capitalize(), repPerSecPerDrone)
|
||||
text = "{}/s".format(formatAmount(rps, 3, 0, 3))
|
||||
tooltip = "{} HP repaired per second\n{} HP/s per drone".format(repType, formatAmount(rps / stuff.amount, 3, 0, 3))
|
||||
return text, tooltip
|
||||
elif itemGroup == "Energy Neutralizer Drone":
|
||||
neutAmount = stuff.getModifiedItemAttr("energyNeutralizerAmount")
|
||||
|
||||
Reference in New Issue
Block a user