From 0dc8b541ed35b27736d8f62287b0b436f34dc255 Mon Sep 17 00:00:00 2001 From: Bass Date: Sat, 16 Feb 2019 11:19:07 +0000 Subject: Tesla WIP even more Some minor cleanups and fun feature additions :D --- .../tectech/thing/cover/GT_Cover_TM_TeslaCoil.java | 23 +++++++++++++++++++- .../cover/GT_Cover_TM_TeslaCoil_Ultimate.java | 25 ++++++++++++++++++++-- .../multi/GT_MetaTileEntity_TM_teslaCoil.java | 16 +++++--------- .../single/GT_MetaTileEntity_TeslaCoil.java | 10 ++++----- src/main/resources/assets/tectech/lang/en_US.lang | 2 +- src/main/resources/assets/tectech/lang/zh_CN.lang | 3 --- 6 files changed, 55 insertions(+), 24 deletions(-) (limited to 'src/main') diff --git a/src/main/java/com/github/technus/tectech/thing/cover/GT_Cover_TM_TeslaCoil.java b/src/main/java/com/github/technus/tectech/thing/cover/GT_Cover_TM_TeslaCoil.java index bfb4ae9208..6d7383fe49 100644 --- a/src/main/java/com/github/technus/tectech/thing/cover/GT_Cover_TM_TeslaCoil.java +++ b/src/main/java/com/github/technus/tectech/thing/cover/GT_Cover_TM_TeslaCoil.java @@ -1,8 +1,29 @@ package com.github.technus.tectech.thing.cover; - import gregtech.api.util.GT_CoverBehavior; +import gregtech.api.interfaces.tileentity.ICoverable; +import gregtech.api.util.GT_CoverBehavior; +import gregtech.api.util.GT_Utility; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.player.EntityPlayer; + +import static ic2.api.info.Info.DMG_ELECTRIC; public class GT_Cover_TM_TeslaCoil extends GT_CoverBehavior { public GT_Cover_TM_TeslaCoil() { } + + public String getDescription(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity) { + return "Do not attempt to use screwdriver!"; + } + + public boolean letsEnergyIn(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity) { + return true; + } + + public int onCoverScrewdriverclick(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity, EntityPlayer aPlayer, float aX, float aY, float aZ) { + if(aTileEntity.getStoredEU() > 0 && !GT_Utility.isWearingFullElectroHazmat(aPlayer)){ + aPlayer.attackEntityFrom(DMG_ELECTRIC, 20); + } + return aCoverVariable; + } } \ No newline at end of file diff --git a/src/main/java/com/github/technus/tectech/thing/cover/GT_Cover_TM_TeslaCoil_Ultimate.java b/src/main/java/com/github/technus/tectech/thing/cover/GT_Cover_TM_TeslaCoil_Ultimate.java index 7ad6bc6f5f..db7c751fc6 100644 --- a/src/main/java/com/github/technus/tectech/thing/cover/GT_Cover_TM_TeslaCoil_Ultimate.java +++ b/src/main/java/com/github/technus/tectech/thing/cover/GT_Cover_TM_TeslaCoil_Ultimate.java @@ -1,8 +1,29 @@ package com.github.technus.tectech.thing.cover; - import gregtech.api.util.GT_CoverBehavior; +import gregtech.api.interfaces.tileentity.ICoverable; +import net.minecraftforge.fluids.Fluid; -public class GT_Cover_TM_TeslaCoil_Ultimate extends GT_CoverBehavior { +public class GT_Cover_TM_TeslaCoil_Ultimate extends GT_Cover_TM_TeslaCoil { public GT_Cover_TM_TeslaCoil_Ultimate() { } + + public boolean letsEnergyOut(byte aSide, int aCoverID, int aCoverVariable, ICoverable aTileEntity) { + return true; + } + + public boolean letsItemsIn(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity) { + return true; + } + + public boolean letsItemsOut(byte aSide, int aCoverID, int aCoverVariable, int aSlot, ICoverable aTileEntity) { + return true; + } + + public boolean letsFluidIn(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity) { + return true; + } + + public boolean letsFluidOut(byte aSide, int aCoverID, int aCoverVariable, Fluid aFluid, ICoverable aTileEntity) { + return true; + } } \ No newline at end of file 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 eca3dde6cb..7dc040b28a 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 @@ -31,10 +31,6 @@ import static com.github.technus.tectech.thing.casing.GT_Block_CasingsTT.texture import static gregtech.api.GregTech_API.*; import static gregtech.api.enums.GT_Values.E; -/** - * Created by danie_000 on 17.12.2016. - * edited by Bass on like 2018-02-05 - */ public class GT_MetaTileEntity_TM_teslaCoil extends GT_MetaTileEntity_MultiblockBase_EM implements IConstructable {//TODO Add capacitors private static Textures.BlockIcons.CustomIcon ScreenOFF; private static Textures.BlockIcons.CustomIcon ScreenON; @@ -55,7 +51,7 @@ public class GT_MetaTileEntity_TM_teslaCoil extends GT_MetaTileEntity_Multiblock private float histLowLimit = 0.05F; //How low can you configure it? private float histHighLimit = 0.95F; //How high can you configure it? - private int scanRadius = 64; //Tesla scan radius + private int scanRadius = 32; //Tesla scan radius private int transferRadiusTower = 32; //Radius for tower to tower transfers private int transferRadiusTransceiver = 16; //Radius for tower to transceiver transfers @@ -63,7 +59,6 @@ public class GT_MetaTileEntity_TM_teslaCoil extends GT_MetaTileEntity_Multiblock private long outputVoltage = 512; //Tesla Voltage Output private long outputCurrent = 1; //Tesla Current Output - private long outputEuT = outputVoltage * outputCurrent; //Tesla Power Output public boolean powerPassToggle = false; //Power Pass for public viewing @@ -384,8 +379,6 @@ public class GT_MetaTileEntity_TM_teslaCoil extends GT_MetaTileEntity_Multiblock outputCurrent = outputCurrentParam; } - outputEuT = outputVoltage * outputCurrent; - transferRadiusTower = 32; //TODO generate based on power stored transferRadiusTransceiver = 16; //TODO generate based on power stored transferRadiusCoverUltimate = 16; //TODO generate based on power stored @@ -403,7 +396,7 @@ public class GT_MetaTileEntity_TM_teslaCoil extends GT_MetaTileEntity_Multiblock } //Clean the eTeslaMap - for (Map.Entry Rx : entriesSortedByValues(eTeslaMap)) { + for (Map.Entry Rx : eTeslaMap.entrySet()) { IGregTechTileEntity node = Rx.getKey(); if (node != null) { IMetaTileEntity nodeInside = node.getMetaTileEntity(); @@ -424,6 +417,7 @@ public class GT_MetaTileEntity_TM_teslaCoil extends GT_MetaTileEntity_Multiblock } catch (Exception e) { } } + System.out.println("Something just got purged!"); eTeslaMap.remove(Rx.getKey()); } @@ -448,8 +442,8 @@ public class GT_MetaTileEntity_TM_teslaCoil extends GT_MetaTileEntity_Multiblock setEUVar(getEUVar() - euTran); } } - } else if ((node.getCoverBehaviorAtSide((byte) 1) instanceof GT_Cover_TM_TeslaCoil_Ultimate) && Rx.getValue() <= transferRadiusCoverUltimate){ - if (node.injectEnergyUnits((byte)6, euTran, 1L) > 0L) { + } 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); } } 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 c556ca2ef6..dd99c0fd75 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 @@ -44,7 +44,6 @@ public class GT_MetaTileEntity_TeslaCoil extends GT_MetaTileEntity_BasicBatteryB private long outputVoltage = 512; //Tesla Voltage Output private long outputCurrent = 1; //Tesla Current Output - private long outputEuT = outputVoltage * outputCurrent; //Tesla Power Output public GT_MetaTileEntity_TeslaCoil(int aID, String aName, String aNameRegional, int aTier, int aSlotCount) { @@ -145,13 +144,11 @@ public class GT_MetaTileEntity_TeslaCoil extends GT_MetaTileEntity_BasicBatteryB outputVoltage = 512;//TODO Set Depending On Tier outputCurrent = 1;//TODO Generate depending on count of batteries - outputEuT = outputVoltage * outputCurrent; - transferRadiusTower = 32; //TODO generate based on power stored transferRadiusCover = 16; //TODO generate based on power stored //Clean the eTeslaMap - for (Map.Entry Rx : entriesSortedByValues(eTeslaMap)) { + for (Map.Entry Rx : eTeslaMap.entrySet()) { IGregTechTileEntity node = Rx.getKey(); if (node != null) { IMetaTileEntity nodeInside = node.getMetaTileEntity(); @@ -167,6 +164,7 @@ public class GT_MetaTileEntity_TeslaCoil extends GT_MetaTileEntity_BasicBatteryB } catch (Exception e) { } } + System.out.println("Something just got purged!"); eTeslaMap.remove(Rx.getKey()); } @@ -183,8 +181,8 @@ public class GT_MetaTileEntity_TeslaCoil extends GT_MetaTileEntity_BasicBatteryB node.increaseStoredEnergyUnits(euTran, true); } } - } else if ((node.getCoverBehaviorAtSide((byte) 1) instanceof GT_Cover_TM_TeslaCoil) && Rx.getValue() <= transferRadiusCover){ - if (node.injectEnergyUnits((byte)6, euTran, 1L) > 0L) { + } else if ((node.getCoverBehaviorAtSide((byte)1) instanceof GT_Cover_TM_TeslaCoil) && Rx.getValue() <= transferRadiusCover){ + if (node.injectEnergyUnits((byte)1, euTran, 1L) > 0L) { setEUVar(getEUVar() - euTran); } } diff --git a/src/main/resources/assets/tectech/lang/en_US.lang b/src/main/resources/assets/tectech/lang/en_US.lang index f01a74a0a2..ac36e32772 100644 --- a/src/main/resources/assets/tectech/lang/en_US.lang +++ b/src/main/resources/assets/tectech/lang/en_US.lang @@ -10,7 +10,7 @@ item.em.parametrizerMemoryCard.name=Parametrizer Memory Card item.em.EuMeterGT.name=GT EU meter item.tm.teslaCoilCover.name=Tesla Coil Cover -item.tm.teslaCoilCoverUltimate=Tesla Coil Cover Rich Edition +item.tm.teslaCoilCoverUltimate.name=Tesla Coil Cover Rich Edition death.attack.microwaving=%1$s was dehydrated by radiation. death.attack.microwaving.player=%1$s was dehydrated by radiation while fighting %2$s. diff --git a/src/main/resources/assets/tectech/lang/zh_CN.lang b/src/main/resources/assets/tectech/lang/zh_CN.lang index 52ae6c594d..5359f04e9b 100644 --- a/src/main/resources/assets/tectech/lang/zh_CN.lang +++ b/src/main/resources/assets/tectech/lang/zh_CN.lang @@ -6,9 +6,6 @@ item.em.definitionContainer.name=EM配方指引 item.em.debugBuilder.name=多方块机器蓝图 item.em.parametrizerMemoryCard.name=参量机记忆卡 -item.tm.teslaCoilCover.name=Tesla Coil Cover -item.tm.teslaCoilCoverUltimate=Tesla Coil Cover Rich Edition - death.attack.microwaving=%1$s 被辐射脱水 death.attack.microwaving.player=%1$s 在与 %2$s 战斗中被辐射脱水 -- cgit