aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/com
diff options
context:
space:
mode:
authorbasdxz <tudurap.com@gmail.com>2019-03-11 11:56:33 +0000
committerTec <daniel112092@gmail.com>2019-03-11 18:29:03 +0100
commit9fcaa9ecac5b76ad51ef2541efcf21cbc77d2f3d (patch)
tree1f9240cea4f4da1995969fb6cb0db696b21ae4f6 /src/main/java/com
parent295a93ffc4f9972eda8a7c6b60473553e10b1711 (diff)
downloadGT5-Unofficial-9fcaa9ecac5b76ad51ef2541efcf21cbc77d2f3d.tar.gz
GT5-Unofficial-9fcaa9ecac5b76ad51ef2541efcf21cbc77d2f3d.tar.bz2
GT5-Unofficial-9fcaa9ecac5b76ad51ef2541efcf21cbc77d2f3d.zip
Yay for multi amp tesla towers!
fuck I broke hysteresis again
Diffstat (limited to 'src/main/java/com')
-rw-r--r--src/main/java/com/github/technus/tectech/thing/metaTileEntity/hatch/GT_MetaTileEntity_Hatch_Capacitor.java4
-rw-r--r--src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_TM_teslaCoil.java98
-rw-r--r--src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/GT_MetaTileEntity_TeslaCoil.java3
3 files changed, 70 insertions, 35 deletions
diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/hatch/GT_MetaTileEntity_Hatch_Capacitor.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/hatch/GT_MetaTileEntity_Hatch_Capacitor.java
index 29b284d8a6..b27efb59e2 100644
--- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/hatch/GT_MetaTileEntity_Hatch_Capacitor.java
+++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/hatch/GT_MetaTileEntity_Hatch_Capacitor.java
@@ -179,8 +179,8 @@ public class GT_MetaTileEntity_Hatch_Capacitor extends GT_MetaTileEntity_Hatch {
getBaseMetaTileEntity().setOnFire();
}
} else {
- tCurrent = +cap.current;
- tEnergyMax = +cap.energyMax;
+ tCurrent += cap.current;
+ tEnergyMax += cap.energyMax;
}
}
}
diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_TM_teslaCoil.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_TM_teslaCoil.java
index deecb27feb..db3e2e8065 100644
--- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_TM_teslaCoil.java
+++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_TM_teslaCoil.java
@@ -309,6 +309,8 @@ public class GT_MetaTileEntity_TM_teslaCoil extends GT_MetaTileEntity_Multiblock
mEfficiencyIncrease = 10000;
mMaxProgresstime = 20;
vTier = -1;
+ energyCapacity = 0;
+ outputCurrent = 0;
long[] capacitorData;
for (GT_MetaTileEntity_Hatch_Capacitor cap : eCaps) {
if (!GT_MetaTileEntity_MultiBlockBase.isValidMetaTileEntity(cap)) {
@@ -324,16 +326,17 @@ public class GT_MetaTileEntity_TM_teslaCoil extends GT_MetaTileEntity_Multiblock
if (!GT_MetaTileEntity_MultiBlockBase.isValidMetaTileEntity(cap)) {
continue;
}
+ cap.getBaseMetaTileEntity().setActive(true);
capacitorData = cap.getCapacitors();
if (capacitorData[0] < vTier) {
- if(getEUVar() > 0){
+ if(getEUVar() > 0 && capacitorData[0] != 0){
cap.getBaseMetaTileEntity().setToFire();
+ System.out.println("Oman oman a hatch burst into flame!");
}
eCaps.remove(cap);
} else {
- cap.getBaseMetaTileEntity().setActive(true);
- outputCurrent =+ capacitorData[1];
- energyCapacity =+ capacitorData[2];
+ outputCurrent += capacitorData[1];
+ energyCapacity += capacitorData[2];
}
}
return true;
@@ -390,6 +393,7 @@ public class GT_MetaTileEntity_TM_teslaCoil extends GT_MetaTileEntity_Multiblock
}
}
+ //TODO Fix this because something broke it :L
//ePowerPass hist toggle
if (!ePowerPass && energyFrac > histHigh) {
ePowerPass = true;
@@ -430,27 +434,27 @@ public class GT_MetaTileEntity_TM_teslaCoil extends GT_MetaTileEntity_Multiblock
//Stuff to do if ePowerPass
if (powerPassToggle) {
- if (parametrized && outputVoltageParam > 0 && outputVoltage > outputVoltageParam){
- outputVoltage = outputVoltageParam;
+ if (parametrized && outputVoltageParam > 0 && outputVoltage > outputVoltageParam) {
+ outputVoltage = outputVoltageParam;
}
- if (parametrized && outputCurrentParam > 0 && outputCurrent > outputCurrentParam){
- outputCurrent = outputCurrentParam;
+ if (parametrized && outputCurrentParam > 0 && outputCurrent > outputCurrentParam) {
+ outputCurrent = outputCurrentParam;
}
transferRadiusTower = 32; //TODO generate based on power stored
transferRadiusTransceiver = 16; //TODO generate based on power stored
transferRadiusCoverUltimate = 16; //TODO generate based on power stored
- if(parametrized && transferRadiusTowerParam > 0 && transferRadiusTowerParam < transferRadiusTower){
+ if (parametrized && transferRadiusTowerParam > 0 && transferRadiusTowerParam < transferRadiusTower) {
transferRadiusTower = transferRadiusTowerParam;
}
- if(parametrized && transferRadiusTransceiverParam > 0 && transferRadiusTransceiverParam < transferRadiusTransceiver){
+ if (parametrized && transferRadiusTransceiverParam > 0 && transferRadiusTransceiverParam < transferRadiusTransceiver) {
transferRadiusTransceiver = transferRadiusTransceiverParam;
}
- if(parametrized && transferRadiusCoverUltimateParam > 0 && transferRadiusCoverUltimateParam < transferRadiusCoverUltimate){
+ if (parametrized && transferRadiusCoverUltimateParam > 0 && transferRadiusCoverUltimateParam < transferRadiusCoverUltimate) {
transferRadiusCoverUltimate = transferRadiusCoverUltimateParam;
}
@@ -480,32 +484,62 @@ public class GT_MetaTileEntity_TM_teslaCoil extends GT_MetaTileEntity_Multiblock
}
//Power transfer
- for (Map.Entry<IGregTechTileEntity, Integer> Rx : entriesSortedByValues(eTeslaMap)) {
- IGregTechTileEntity node = Rx.getKey();
- IMetaTileEntity nodeInside = node.getMetaTileEntity();
- long euTran = outputVoltage;
-
- if (nodeInside instanceof GT_MetaTileEntity_TM_teslaCoil && Rx.getValue() <= transferRadiusTower) {
- GT_MetaTileEntity_TM_teslaCoil nodeTesla = (GT_MetaTileEntity_TM_teslaCoil) nodeInside;
- if (!nodeTesla.powerPassToggle) {
- if (nodeTesla.getEUVar() + euTran <= (nodeTesla.maxEUStore() / 2)) {
- setEUVar(getEUVar() - euTran);
- node.increaseStoredEnergyUnits(euTran, true);
+ long sparks = outputCurrent;
+ System.out.println("Output Current at: " + outputCurrent + "A" );
+ long sparkz = 0;
+ while (sparks > 0) {
+ boolean idle = true;
+ for (Map.Entry<IGregTechTileEntity, Integer> Rx : entriesSortedByValues(eTeslaMap)) {
+ if(energyStored > outputVoltage) {
+ IGregTechTileEntity node = Rx.getKey();
+ IMetaTileEntity nodeInside = node.getMetaTileEntity();
+ long euTran = outputVoltage;//TODO Efficency?
+
+ if (nodeInside instanceof GT_MetaTileEntity_TM_teslaCoil && Rx.getValue() <= transferRadiusTower) {
+ GT_MetaTileEntity_TM_teslaCoil nodeTesla = (GT_MetaTileEntity_TM_teslaCoil) nodeInside;
+ if (!nodeTesla.powerPassToggle) {
+ if (nodeTesla.getEUVar() + euTran <= (nodeTesla.maxEUStore() / 2)) {
+ setEUVar(getEUVar() - euTran);
+ node.increaseStoredEnergyUnits(euTran, true);
+ sparks--;
+ sparkz++;
+ idle = false;
+ }
+ }
+ } else if (nodeInside instanceof GT_MetaTileEntity_TeslaCoil && Rx.getValue() <= transferRadiusTransceiver) {
+ GT_MetaTileEntity_TeslaCoil nodeTesla = (GT_MetaTileEntity_TeslaCoil) nodeInside;
+ if (!nodeTesla.powerPassToggle) {
+ if (node.injectEnergyUnits((byte) 6, euTran, 1L) > 0L) {
+ setEUVar(getEUVar() - euTran);
+ sparks--;
+ sparkz++;
+ idle = false;
+ }
+ }
+ } else if ((node.getCoverBehaviorAtSide((byte) 1) instanceof GT_Cover_TM_TeslaCoil_Ultimate) && Rx.getValue() <= transferRadiusCoverUltimate) {
+ if (node.injectEnergyUnits((byte) 1, euTran, 1L) > 0L) {
+ setEUVar(getEUVar() - euTran);
+ sparks--;
+ sparkz++;
+ idle = false;
+ }
}
- }
- } else if (nodeInside instanceof GT_MetaTileEntity_TeslaCoil && Rx.getValue() <= transferRadiusTransceiver) {
- GT_MetaTileEntity_TeslaCoil nodeTesla = (GT_MetaTileEntity_TeslaCoil) nodeInside;
- if (!nodeTesla.powerPassToggle) {
- if (node.injectEnergyUnits((byte)6, euTran, 1L) > 0L) {
- setEUVar(getEUVar() - euTran);
+ if (sparks == 0) {
+ System.out.println("Fresh out of sparks!");
+ break;
}
+ } else {
+ idle = true;
+ System.out.println("ENERGY LOW!");
+ break;
}
- } else if ((node.getCoverBehaviorAtSide((byte)1) instanceof GT_Cover_TM_TeslaCoil_Ultimate) && Rx.getValue() <= transferRadiusCoverUltimate){
- if (node.injectEnergyUnits((byte)1, euTran, 1L) > 0L) {
- setEUVar(getEUVar() - euTran);
- }
+ }
+ if (idle) {
+ System.out.println("IDLE DROP!");
+ break;
}
}
+ System.out.println("I sent a total of :" + sparkz + " This tick!");
}
return true;
}
diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/GT_MetaTileEntity_TeslaCoil.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/GT_MetaTileEntity_TeslaCoil.java
index efb0941f41..c1a66eb83b 100644
--- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/GT_MetaTileEntity_TeslaCoil.java
+++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/GT_MetaTileEntity_TeslaCoil.java
@@ -2,6 +2,7 @@ package com.github.technus.tectech.thing.metaTileEntity.single;
import com.github.technus.tectech.Util;
import com.github.technus.tectech.thing.cover.GT_Cover_TM_TeslaCoil;
+import com.github.technus.tectech.thing.cover.GT_Cover_TM_TeslaCoil_Ultimate;
import com.github.technus.tectech.thing.metaTileEntity.multi.GT_MetaTileEntity_TM_teslaCoil;
import eu.usrv.yamcore.auxiliary.PlayerChatHelper;
import gregtech.api.interfaces.ITexture;
@@ -243,7 +244,7 @@ public class GT_MetaTileEntity_TeslaCoil extends GT_MetaTileEntity_BasicBatteryB
idle = false;
}
}
- } else if ((node.getCoverBehaviorAtSide((byte) 1) instanceof GT_Cover_TM_TeslaCoil) && Rx.getValue() <= transferRadiusCover) {
+ } else if ((node.getCoverBehaviorAtSide((byte) 1) instanceof GT_Cover_TM_TeslaCoil) && !(node.getCoverBehaviorAtSide((byte) 1) instanceof GT_Cover_TM_TeslaCoil_Ultimate) && Rx.getValue() <= transferRadiusCover) {
if (node.injectEnergyUnits((byte) 1, outputVoltageInjectable, 1L) > 0L) {
setEUVar(getEUVar() - outputVoltageConsumption);
outputCurrent--;