aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/metatileentity/implementations
diff options
context:
space:
mode:
authoriamblackornot <nkzshinnik@gmail.com>2023-10-12 14:38:45 +0300
committerGitHub <noreply@github.com>2023-10-12 13:38:45 +0200
commit820ebd76016b69a0346588bcdc90a53f251e5b4c (patch)
tree00c83d3b750119ef63909204941bcec883f08019 /src/main/java/gregtech/api/metatileentity/implementations
parent0f1df8bb1de3ab5567e6b38e2d8c59edf6be12d8 (diff)
downloadGT5-Unofficial-820ebd76016b69a0346588bcdc90a53f251e5b4c.tar.gz
GT5-Unofficial-820ebd76016b69a0346588bcdc90a53f251e5b4c.tar.bz2
GT5-Unofficial-820ebd76016b69a0346588bcdc90a53f251e5b4c.zip
average per tick counter for cable voltage and amperage (#2321)
* - a workaround fix to https://github.com/GTNewHorizons/GT-New-Horizons-Modpack/issues/14431 - code clean-up of unused variables related to the issue - portable scanner infodata is cleaned too since some of the data is related to mentioned before "ghost" variables * - PR review changes * "Current Amperage" -> "Amperage" * - updated gradle build script * - sync fork * added AveragePerTickCounter class, which helps getting [current tick] value and [average] value for Amperage and Voltage of energy cable blocks updated cable scanner info to show these values * - lowercase the first letter of new methods to follow the guidelines - added one comment to explain code segment's logic --------- Co-authored-by: iamblackornot <nkzshinnnik@gmail.com>
Diffstat (limited to 'src/main/java/gregtech/api/metatileentity/implementations')
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java39
1 files changed, 27 insertions, 12 deletions
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java
index 1185dbcc37..db4ead0932 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Cable.java
@@ -190,11 +190,12 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
if (isCoverOnSide(baseEntity, livingEntity)) return;
if ((baseEntity.mConnections & IConnectable.HAS_HARDENEDFOAM) == 1) return;
- final long amperage = powerPath.getAmps();
+ final long amperage = powerPath.getAmperage();
+ final long voltage = powerPath.getVoltage();
if (amperage == 0L) return;
- GT_Utility.applyElectricityDamage(livingEntity, mVoltage, amperage);
+ GT_Utility.applyElectricityDamage(livingEntity, voltage, amperage);
}
@Override
@@ -475,12 +476,18 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
public String[] getInfoData() {
final BaseMetaPipeEntity base = (BaseMetaPipeEntity) getBaseMetaTileEntity();
final PowerNodePath path = (PowerNodePath) base.getNodePath();
- long amps = 0;
- long volts = 0;
- if (path != null) {
- amps = path.getAmps();
- volts = path.getVoltage(this);
- }
+
+ if (path == null)
+ return new String[] { EnumChatFormatting.RED + "Failed to get Power Node info" + EnumChatFormatting.RESET };
+
+ final long currAmp = path.getAmperage();
+ final long currVoltage = path.getVoltage();
+
+ final double avgAmp = path.getAvgAmperage();
+ final double avgVoltage = path.getAvgVoltage();
+
+ final long maxVoltageOut = (mVoltage - mCableLossPerMeter) * mAmperage;
+
return new String[] {
"Heat: " + EnumChatFormatting.RED
+ GT_Utility.formatNumbers(mOverheat)
@@ -490,19 +497,27 @@ public class GT_MetaPipeEntity_Cable extends MetaPipeEntity implements IMetaTile
+ GT_Utility.formatNumbers(mMaxOverheat)
+ EnumChatFormatting.RESET,
"Amperage: " + EnumChatFormatting.GREEN
- + GT_Utility.formatNumbers(amps)
+ + GT_Utility.formatNumbers(currAmp)
+ EnumChatFormatting.RESET
+ " / "
+ EnumChatFormatting.YELLOW
+ GT_Utility.formatNumbers(mAmperage)
+ EnumChatFormatting.RESET
+ " A",
- "Max Output: " + EnumChatFormatting.GREEN
- + GT_Utility.formatNumbers(volts)
+ "Voltage Out: " + EnumChatFormatting.GREEN
+ + GT_Utility.formatNumbers(currVoltage)
+ EnumChatFormatting.RESET
+ " / "
+ EnumChatFormatting.YELLOW
- + GT_Utility.formatNumbers(mVoltage)
+ + GT_Utility.formatNumbers(maxVoltageOut)
+ + EnumChatFormatting.RESET
+ + " EU/t",
+ "Avg Amperage (20t): " + EnumChatFormatting.YELLOW
+ + GT_Utility.formatNumbers(avgAmp)
+ + EnumChatFormatting.RESET
+ + " A",
+ "Avg Output (20t): " + EnumChatFormatting.YELLOW
+ + GT_Utility.formatNumbers(avgVoltage)
+ EnumChatFormatting.RESET
+ " EU/t" };
}