aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/java/com/github/technus/tectech/elementalMatter/classes/cElementalInstanceStackMap.java5
-rw-r--r--src/main/java/com/github/technus/tectech/loader/MachineLoader.java4
-rw-r--r--src/main/java/com/github/technus/tectech/thing/CustomItemList.java2
-rw-r--r--src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_MultiblockBase_EM.java6
-rw-r--r--src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/other todo1
-rw-r--r--src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/GT_MetaTileEntity_DebugPowerGenerator.java205
-rw-r--r--src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/GT_MetaTileEntity_DebugStructureWriter.java4
-rw-r--r--src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/gui/GT_Container_DebugPowerGenerator.java153
-rw-r--r--src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/gui/GT_GUIContainer_DebugPowerGenerator.java33
-rw-r--r--src/main/resources/assets/gregtech/textures/blocks/iconsets/GENNY.pngbin0 -> 4254 bytes
10 files changed, 404 insertions, 9 deletions
diff --git a/src/main/java/com/github/technus/tectech/elementalMatter/classes/cElementalInstanceStackMap.java b/src/main/java/com/github/technus/tectech/elementalMatter/classes/cElementalInstanceStackMap.java
index 6e1a0b8386..1d999b94b0 100644
--- a/src/main/java/com/github/technus/tectech/elementalMatter/classes/cElementalInstanceStackMap.java
+++ b/src/main/java/com/github/technus/tectech/elementalMatter/classes/cElementalInstanceStackMap.java
@@ -268,13 +268,14 @@ public final class cElementalInstanceStackMap implements Comparable<cElementalIn
}
public String[] getElementalInfo() {
- final String[] info = new String[map.size() * 3];
+ final String[] info = new String[map.size() * 4];
int i = 0;
for (cElementalInstanceStack instance : map.values()) {
info[i] = EnumChatFormatting.BLUE + instance.definition.getName();
info[i + 1] = EnumChatFormatting.AQUA + instance.definition.getSymbol();
info[i + 2] = "Amount " + EnumChatFormatting.GREEN + instance.amount;
- i += 3;
+ info[i + 3] = "LifeTime " + EnumChatFormatting.GREEN + instance.getLifeTime();
+ i += 4;
}
return info;
}
diff --git a/src/main/java/com/github/technus/tectech/loader/MachineLoader.java b/src/main/java/com/github/technus/tectech/loader/MachineLoader.java
index f3e6204ac9..f5cab894e6 100644
--- a/src/main/java/com/github/technus/tectech/loader/MachineLoader.java
+++ b/src/main/java/com/github/technus/tectech/loader/MachineLoader.java
@@ -6,6 +6,7 @@ import com.github.technus.tectech.thing.metaTileEntity.hatch.*;
import com.github.technus.tectech.thing.metaTileEntity.multi.*;
import com.github.technus.tectech.thing.metaTileEntity.pipe.GT_MetaTileEntity_Pipe_Data;
import com.github.technus.tectech.thing.metaTileEntity.pipe.GT_MetaTileEntity_Pipe_EM;
+import com.github.technus.tectech.thing.metaTileEntity.single.GT_MetaTileEntity_DebugPowerGenerator;
import com.github.technus.tectech.thing.metaTileEntity.single.GT_MetaTileEntity_DebugStructureWriter;
import static com.github.technus.tectech.thing.CustomItemList.*;
@@ -233,9 +234,10 @@ public class MachineLoader implements Runnable {
DATApipe.set(new GT_MetaTileEntity_Pipe_Data(15470, "pipe.datastream", "Optical Fiber Cable").getStackForm(1L));
// ===================================================================================================
- // DebugStuff
+ // Debug Stuff
// ===================================================================================================
+ Machine_DebugGenny.set(new GT_MetaTileEntity_DebugPowerGenerator(15498, "debug.tt.genny", "Debug Power Generator", 15).getStackForm(1L));
Machine_DebugWriter.set(new GT_MetaTileEntity_DebugStructureWriter(15499, "debug.tt.writer", "Debug Structure Writer", 15).getStackForm(1L));
// ===================================================================================================
diff --git a/src/main/java/com/github/technus/tectech/thing/CustomItemList.java b/src/main/java/com/github/technus/tectech/thing/CustomItemList.java
index d35422d5a6..ff2d15a580 100644
--- a/src/main/java/com/github/technus/tectech/thing/CustomItemList.java
+++ b/src/main/java/com/github/technus/tectech/thing/CustomItemList.java
@@ -11,7 +11,7 @@ import net.minecraft.item.ItemStack;
import static gregtech.api.enums.GT_Values.W;
public enum CustomItemList implements IItemContainer {
- Machine_DebugWriter,
+ Machine_DebugWriter,Machine_DebugGenny,
EMpipe, DATApipe, rack_Hatch, holder_Hatch,
eM_dynamomulti4_UV, eM_dynamomulti16_UV, eM_dynamomulti64_UV,
eM_dynamomulti4_UHV, eM_dynamomulti16_UHV, eM_dynamomulti64_UHV,
diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_MultiblockBase_EM.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_MultiblockBase_EM.java
index aa77238057..ae9b52e645 100644
--- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_MultiblockBase_EM.java
+++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/GT_MetaTileEntity_MultiblockBase_EM.java
@@ -79,7 +79,7 @@ public abstract class GT_MetaTileEntity_MultiblockBase_EM extends GT_MetaTileEnt
public boolean eParameters = true, ePowerPass = false, eSafeVoid = false, eDismatleBoom = false;
public byte eCertainMode = 0, eCertainStatus = 0, minRepairStatus = 3;
- private long eMaxAmpereFlow = 0;
+ protected long eMaxAmpereFlow = 0;//don't modify! unless YOU REALLY HAVE TO
private long maxEUinputMin = 0, maxEUinputMax = 0;
public long eAmpereFlow = 1;
public long eRequiredData = 0;
@@ -803,7 +803,7 @@ public abstract class GT_MetaTileEntity_MultiblockBase_EM extends GT_MetaTileEnt
}
//new Method
- public final cElementalInstanceStackMap EMgetInputsClone(){
+ public final cElementalInstanceStackMap EM_getInputsClone(){
cElementalInstanceStackMap in=new cElementalInstanceStackMap();
for(GT_MetaTileEntity_Hatch_ElementalContainer hatch:eInputHatches){
in.putUnifyAll(hatch.getContainerHandler());
@@ -812,7 +812,7 @@ public abstract class GT_MetaTileEntity_MultiblockBase_EM extends GT_MetaTileEnt
}
//new Method
- public final cElementalInstanceStackMap EMgetOutputsClone(){
+ public final cElementalInstanceStackMap EM_getOutputsClone(){
cElementalInstanceStackMap out=new cElementalInstanceStackMap();
for(GT_MetaTileEntity_Hatch_ElementalContainer hatch:eOutputHatches){
out.putUnifyAll(hatch.getContainerHandler());
diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/other todo b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/other todo
index 9f2672eda2..f59c71bbbd 100644
--- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/other todo
+++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/multi/other todo
@@ -7,6 +7,7 @@ quark laseration
quantum color separator
antimatter weaponry
tesla coils...
+energizer
starter manual book?
design reader station - singleblock
diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/GT_MetaTileEntity_DebugPowerGenerator.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/GT_MetaTileEntity_DebugPowerGenerator.java
new file mode 100644
index 0000000000..bc9fae5daf
--- /dev/null
+++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/GT_MetaTileEntity_DebugPowerGenerator.java
@@ -0,0 +1,205 @@
+package com.github.technus.tectech.thing.metaTileEntity.single;
+
+import com.github.technus.tectech.CommonValues;
+import com.github.technus.tectech.TecTech;
+import com.github.technus.tectech.auxiliary.TecTechConfig;
+import com.github.technus.tectech.thing.metaTileEntity.single.gui.GT_Container_DebugPowerGenerator;
+import com.github.technus.tectech.thing.metaTileEntity.single.gui.GT_Container_DebugStructureWriter;
+import com.github.technus.tectech.thing.metaTileEntity.single.gui.GT_GUIContainer_DebugPowerGenerator;
+import com.github.technus.tectech.thing.metaTileEntity.single.gui.GT_GUIContainer_DebugStructureWriter;
+import gregtech.api.enums.Textures;
+import gregtech.api.interfaces.ITexture;
+import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
+import gregtech.api.metatileentity.MetaTileEntity;
+import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_TieredMachineBlock;
+import gregtech.api.objects.GT_RenderedTexture;
+import net.minecraft.client.renderer.texture.IIconRegister;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.InventoryPlayer;
+import net.minecraft.item.ItemStack;
+import net.minecraft.nbt.NBTTagCompound;
+import net.minecraft.util.EnumChatFormatting;
+
+import static com.github.technus.tectech.Util.StructureWriter;
+import static com.github.technus.tectech.Util.getUniqueIdentifier;
+
+/**
+ * Created by Tec on 23.03.2017.
+ */
+public class GT_MetaTileEntity_DebugPowerGenerator extends GT_MetaTileEntity_TieredMachineBlock {
+ private static Textures.BlockIcons.CustomIcon GENNY;
+ public int EUT=0,AMP=0;
+ public boolean producing=true;
+
+ public GT_MetaTileEntity_DebugPowerGenerator(int aID, String aName, String aNameRegional, int aTier) {
+ super(aID, aName, aNameRegional, aTier, 0, "Power from nothing");
+ }
+
+ public GT_MetaTileEntity_DebugPowerGenerator(String aName, int aTier, String aDescription, ITexture[][][] aTextures) {
+ super(aName, aTier, 0, aDescription, aTextures);
+ }
+
+ @Override
+ public MetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
+ return new GT_MetaTileEntity_DebugPowerGenerator(mName, mTier, mDescription, mTextures);
+ }
+
+ @Override
+ public void registerIcons(IIconRegister aBlockIconRegister) {
+ super.registerIcons(aBlockIconRegister);
+ GENNY = new Textures.BlockIcons.CustomIcon("iconsets/GENNY");
+ }
+
+ @Override
+ public ITexture[] getTexture(IGregTechTileEntity aBaseMetaTileEntity, byte aSide, byte aFacing, byte aColorIndex, boolean aActive, boolean aRedstone) {
+ return new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][aColorIndex + 1], (aSide != this.getBaseMetaTileEntity().getFrontFacing()) ? (aActive?Textures.BlockIcons.OVERLAYS_ENERGY_OUT_POWER[mTier]:Textures.BlockIcons.OVERLAYS_ENERGY_IN_POWER[mTier]) : new GT_RenderedTexture(GENNY)};
+ }
+
+ @Override
+ public ITexture[][][] getTextureSet(ITexture[] aTextures) {
+ return null;
+ }
+
+ @Override
+ public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
+ return new GT_Container_DebugPowerGenerator(aPlayerInventory, aBaseMetaTileEntity);
+ }
+
+ @Override
+ public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
+ return new GT_GUIContainer_DebugPowerGenerator(aPlayerInventory, aBaseMetaTileEntity);
+ }
+
+ @Override
+ public boolean allowPutStack(IGregTechTileEntity iGregTechTileEntity, int i, byte b, ItemStack itemStack) {
+ return false;
+ }
+
+ @Override
+ public boolean allowPullStack(IGregTechTileEntity iGregTechTileEntity, int i, byte b, ItemStack itemStack) {
+ return false;
+ }
+
+ @Override
+ public void saveNBTData(NBTTagCompound aNBT) {
+ aNBT.setInteger("eEUT",EUT);
+ aNBT.setInteger("eAMP",AMP);
+ }
+
+ @Override
+ public void loadNBTData(NBTTagCompound aNBT) {
+ EUT=aNBT.getInteger("eEUT");
+ AMP=aNBT.getInteger("eAMP");
+ producing=(long)AMP*EUT>=0;
+ getBaseMetaTileEntity().setActive(producing);
+ }
+
+ @Override
+ public boolean isSimpleMachine() {
+ return false;
+ }
+
+ @Override
+ public void onPostTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
+ if (aBaseMetaTileEntity.isServerSide()) {
+ aBaseMetaTileEntity.setActive(producing);
+ if (aBaseMetaTileEntity.isActive()) {
+ setEUVar(maxEUStore());
+ } else {
+ setEUVar(0);
+ }
+ }
+ }
+
+ @Override
+ public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) {
+ if (aBaseMetaTileEntity.isClientSide()) return true;
+ aBaseMetaTileEntity.openGUI(aPlayer);
+ return true;
+ }
+
+ @Override
+ public boolean isFacingValid(byte aFacing) {
+ return true;
+ }
+
+ @Override
+ public boolean isAccessAllowed(EntityPlayer aPlayer) {
+ return true;
+ }
+
+ @Override
+ public String[] getDescription() {
+ return new String[]{
+ CommonValues.tecMark,
+ this.mDescription,
+ EnumChatFormatting.BLUE + "Infinite Producer/Consumer",
+ EnumChatFormatting.BLUE + "Since i wanted one..."
+ };
+ }
+
+ @Override
+ public boolean isElectric() {
+ return true;
+ }
+
+ @Override
+ public boolean isEnetOutput() {
+ return true;
+ }
+
+ @Override
+ public boolean isEnetInput() {
+ return true;
+ }
+
+ @Override
+ public boolean isInputFacing(byte aSide) {
+ return !producing && aSide != getBaseMetaTileEntity().getFrontFacing();
+ }
+
+ @Override
+ public boolean isOutputFacing(byte aSide) {
+ return producing && aSide != getBaseMetaTileEntity().getFrontFacing();
+ }
+
+ @Override
+ public long maxAmperesIn() {
+ return producing?0:Math.abs(AMP);
+ }
+
+ @Override
+ public long maxAmperesOut() {
+ return producing?Math.abs(AMP):0;
+ }
+
+ @Override
+ public long maxEUInput() {
+ return producing?0:Integer.MAX_VALUE;
+ }
+
+ @Override
+ public long maxEUOutput() {
+ return producing?Math.abs(EUT):0;
+ }
+
+ @Override
+ public long maxEUStore() {
+ return Math.abs((long)EUT*AMP)<<2;
+ }
+
+ @Override
+ public long getMinimumStoredEU() {
+ return Math.abs((long)EUT*AMP);
+ }
+
+ @Override
+ public int getProgresstime() {
+ return (int) getBaseMetaTileEntity().getUniversalEnergyStored();
+ }
+
+ @Override
+ public int maxProgresstime() {
+ return (int) getBaseMetaTileEntity().getUniversalEnergyCapacity();
+ }
+}
diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/GT_MetaTileEntity_DebugStructureWriter.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/GT_MetaTileEntity_DebugStructureWriter.java
index 9da90a7cc1..9ae3a6dfca 100644
--- a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/GT_MetaTileEntity_DebugStructureWriter.java
+++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/GT_MetaTileEntity_DebugStructureWriter.java
@@ -121,8 +121,8 @@ public class GT_MetaTileEntity_DebugStructureWriter extends GT_MetaTileEntity_Ti
public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer) {
if (aBaseMetaTileEntity.isClientSide()) return true;
aBaseMetaTileEntity.openGUI(aPlayer);
- if (TecTechConfig.DEBUG_MODE && aPlayer.getHeldItem() != null)
- TecTech.Logger.info("UnlocalizedName: " + getUniqueIdentifier(aPlayer.getHeldItem()));
+ //if (TecTechConfig.DEBUG_MODE && aPlayer.getHeldItem() != null)
+ // TecTech.Logger.info("UnlocalizedName: " + getUniqueIdentifier(aPlayer.getHeldItem()));
return true;
}
diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/gui/GT_Container_DebugPowerGenerator.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/gui/GT_Container_DebugPowerGenerator.java
new file mode 100644
index 0000000000..420ac76e8a
--- /dev/null
+++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/gui/GT_Container_DebugPowerGenerator.java
@@ -0,0 +1,153 @@
+package com.github.technus.tectech.thing.metaTileEntity.single.gui;
+
+import com.github.technus.tectech.thing.metaTileEntity.single.GT_MetaTileEntity_DebugPowerGenerator;
+import com.github.technus.tectech.thing.metaTileEntity.single.GT_MetaTileEntity_DebugStructureWriter;
+import cpw.mods.fml.relauncher.Side;
+import cpw.mods.fml.relauncher.SideOnly;
+import gregtech.api.gui.GT_ContainerMetaTile_Machine;
+import gregtech.api.gui.GT_Slot_Holo;
+import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
+import net.minecraft.entity.player.EntityPlayer;
+import net.minecraft.entity.player.InventoryPlayer;
+import net.minecraft.inventory.ICrafting;
+import net.minecraft.inventory.Slot;
+import net.minecraft.item.ItemStack;
+
+import java.util.Iterator;
+
+public class GT_Container_DebugPowerGenerator
+ extends GT_ContainerMetaTile_Machine {
+ public int EUT,AMP;
+
+ public GT_Container_DebugPowerGenerator(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity) {
+ super(aInventoryPlayer, aTileEntity);
+ }
+
+ @Override
+ public void addSlots(InventoryPlayer aInventoryPlayer) {
+ addSlotToContainer(new GT_Slot_Holo(this.mTileEntity, 2, 8, 5, false, false, 1));
+ addSlotToContainer(new GT_Slot_Holo(this.mTileEntity, 2, 8, 23, false, false, 1));
+ addSlotToContainer(new GT_Slot_Holo(this.mTileEntity, 2, 8, 41, false, false, 1));
+ addSlotToContainer(new GT_Slot_Holo(this.mTileEntity, 2, 8, 59, false, false, 1));
+
+ addSlotToContainer(new GT_Slot_Holo(this.mTileEntity, 2, 26, 5, false, false, 1));
+ addSlotToContainer(new GT_Slot_Holo(this.mTileEntity, 2, 26, 23, false, false, 1));
+ addSlotToContainer(new GT_Slot_Holo(this.mTileEntity, 2, 26, 41, false, false, 1));
+ addSlotToContainer(new GT_Slot_Holo(this.mTileEntity, 2, 26, 59, false, false, 1));
+
+ addSlotToContainer(new GT_Slot_Holo(this.mTileEntity, 2, 152, 5, false, false, 1));
+ addSlotToContainer(new GT_Slot_Holo(this.mTileEntity, 2, 152, 23, false, false, 1));
+ addSlotToContainer(new GT_Slot_Holo(this.mTileEntity, 2, 152, 41, false, false, 1));
+ addSlotToContainer(new GT_Slot_Holo(this.mTileEntity, 2, 152, 59, false, false, 1));
+
+ addSlotToContainer(new GT_Slot_Holo(this.mTileEntity, 2, 134, 5, false, false, 1));
+ addSlotToContainer(new GT_Slot_Holo(this.mTileEntity, 2, 134, 23, false, false, 1));
+ addSlotToContainer(new GT_Slot_Holo(this.mTileEntity, 2, 134, 41, false, false, 1));
+ addSlotToContainer(new GT_Slot_Holo(this.mTileEntity, 2, 134, 59, false, false, 1));
+ }
+
+ @Override
+ public ItemStack slotClick(int aSlotIndex, int aMouseclick, int aShifthold, EntityPlayer aPlayer) {
+ if (aSlotIndex < 0) {
+ return super.slotClick(aSlotIndex, aMouseclick, aShifthold, aPlayer);
+ }
+ Slot tSlot = (Slot) this.inventorySlots.get(aSlotIndex);
+ if ((tSlot != null) && (this.mTileEntity.getMetaTileEntity() != null)) {
+ GT_MetaTileEntity_DebugPowerGenerator dpg = (GT_MetaTileEntity_DebugPowerGenerator) mTileEntity.getMetaTileEntity();
+ switch (aSlotIndex) {
+ case 0:
+ dpg.EUT -= (aShifthold == 1 ? 512 : 64);
+ break;
+ case 1:
+ dpg.EUT /= (aShifthold == 1 ? 512 : 64);
+ break;
+ case 2:
+ dpg.AMP -= (aShifthold == 1 ? 512 : 64);
+ break;
+ case 3:
+ dpg.AMP /= (aShifthold == 1 ? 512 : 64);
+ break;
+ case 4:
+ dpg.EUT -= (aShifthold == 1 ? 16 : 1);
+ break;
+ case 5:
+ dpg.EUT /= (aShifthold == 1 ? 16 : 2);
+ break;
+ case 6:
+ dpg.AMP -= (aShifthold == 1 ? 16 : 1);
+ break;
+ case 7:
+ dpg.AMP /= (aShifthold == 1 ? 16 : 2);
+ break;
+ case 8:
+ dpg.EUT += (aShifthold == 1 ? 512 : 64);
+ break;
+ case 9:
+ dpg.EUT *= (aShifthold == 1 ? 512 : 64);
+ break;
+ case 10:
+ dpg.AMP += (aShifthold == 1 ? 512 : 64);
+ break;
+ case 11:
+ dpg.AMP *= (aShifthold == 1 ? 512 : 64);
+ break;
+ case 12:
+ dpg.EUT += (aShifthold == 1 ? 16 : 1);
+ break;
+ case 13:
+ dpg.EUT *= (aShifthold == 1 ? 16 : 2);
+ break;
+ case 14:
+ dpg.AMP += (aShifthold == 1 ? 16 : 1);
+ break;
+ case 15:
+ dpg.AMP *= (aShifthold == 1 ? 16 : 2);
+ break;
+ default: return super.slotClick(aSlotIndex, aMouseclick, aShifthold, aPlayer);
+ }
+ dpg.producing=(long)AMP*EUT>=0;
+ return null;
+ }
+ return super.slotClick(aSlotIndex, aMouseclick, aShifthold, aPlayer);
+ }
+
+ @Override
+ public void detectAndSendChanges() {
+ super.detectAndSendChanges();
+ if ((this.mTileEntity.isClientSide()) || (this.mTileEntity.getMetaTileEntity() == null)) {
+ return;
+ }
+
+ GT_MetaTileEntity_DebugPowerGenerator dpg = (GT_MetaTileEntity_DebugPowerGenerator) mTileEntity.getMetaTileEntity();
+ EUT=dpg.EUT;
+ AMP=dpg.AMP;
+
+ Iterator var2 = this.crafters.iterator();
+ while (var2.hasNext()) {
+ ICrafting var1 = (ICrafting) var2.next();
+ var1.sendProgressBarUpdate(this, 100, EUT & 0xFFFF);
+ var1.sendProgressBarUpdate(this, 101, EUT >>> 16);
+ var1.sendProgressBarUpdate(this, 102, AMP & 0xFFFF);
+ var1.sendProgressBarUpdate(this, 103, AMP >>> 16);
+ }
+ }
+
+ @SideOnly(Side.CLIENT)
+ public void updateProgressBar(int par1, int par2) {
+ super.updateProgressBar(par1, par2);
+ switch (par1) {
+ case 100:
+ this.EUT = (this.EUT & 0xFFFF0000 | par2);
+ break;
+ case 101:
+ this.EUT = (this.EUT & 0xFFFF | par2 << 16);
+ break;
+ case 102:
+ this.AMP = (this.AMP & 0xFFFF0000 | par2);
+ break;
+ case 103:
+ this.AMP = (this.AMP & 0xFFFF | par2 << 16);
+ break;
+ }
+ }
+}
diff --git a/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/gui/GT_GUIContainer_DebugPowerGenerator.java b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/gui/GT_GUIContainer_DebugPowerGenerator.java
new file mode 100644
index 0000000000..88ff02b8ba
--- /dev/null
+++ b/src/main/java/com/github/technus/tectech/thing/metaTileEntity/single/gui/GT_GUIContainer_DebugPowerGenerator.java
@@ -0,0 +1,33 @@
+package com.github.technus.tectech.thing.metaTileEntity.single.gui;
+
+import gregtech.api.gui.GT_GUIContainerMetaTile_Machine;
+import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
+import gregtech.api.util.GT_Utility;
+import net.minecraft.entity.player.InventoryPlayer;
+
+import static gregtech.api.enums.GT_Values.RES_PATH_GUI;
+import static gregtech.api.enums.GT_Values.VN;
+
+public class GT_GUIContainer_DebugPowerGenerator extends GT_GUIContainerMetaTile_Machine {
+ public GT_GUIContainer_DebugPowerGenerator(InventoryPlayer aInventoryPlayer, IGregTechTileEntity aTileEntity) {
+ super(new GT_Container_DebugPowerGenerator(aInventoryPlayer, aTileEntity), RES_PATH_GUI + "Teleporter.png");
+ }
+
+ protected void drawGuiContainerForegroundLayer(int par1, int par2) {
+ this.fontRendererObj.drawString("PowerThing", 46, 8, 16448255);
+ if (this.mContainer != null) {
+ GT_Container_DebugPowerGenerator dpg = (GT_Container_DebugPowerGenerator) mContainer;
+ this.fontRendererObj.drawString("EUT: " + dpg.EUT, 46, 24, 16448255);
+ this.fontRendererObj.drawString("TIER: " + VN[GT_Utility.getTier(dpg.EUT<0?-dpg.EUT:dpg.EUT)], 46, 32, 16448255);
+ this.fontRendererObj.drawString("AMP: " + dpg.AMP, 46, 40, 16448255);
+ this.fontRendererObj.drawString("SUM: " + (long)dpg.AMP*dpg.EUT, 46, 32, 16448255);
+ }
+ }
+
+ protected void drawGuiContainerBackgroundLayer(float par1, int par2, int par3) {
+ super.drawGuiContainerBackgroundLayer(par1, par2, par3);
+ int x = (this.width - this.xSize) / 2;
+ int y = (this.height - this.ySize) / 2;
+ drawTexturedModalRect(x, y, 0, 0, this.xSize, this.ySize);
+ }
+}
diff --git a/src/main/resources/assets/gregtech/textures/blocks/iconsets/GENNY.png b/src/main/resources/assets/gregtech/textures/blocks/iconsets/GENNY.png
new file mode 100644
index 0000000000..eef9051d61
--- /dev/null
+++ b/src/main/resources/assets/gregtech/textures/blocks/iconsets/GENNY.png
Binary files differ