diff options
Diffstat (limited to 'src/main/java/gregtech/api/metatileentity')
25 files changed, 167 insertions, 102 deletions
diff --git a/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java b/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java index 579903db0b..4aa2464853 100644 --- a/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java +++ b/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java @@ -3,7 +3,11 @@ package gregtech.api.metatileentity;  import static gregtech.GT_Mod.GT_FML_LOGGER;  import static gregtech.api.enums.GT_Values.NW; -import java.util.*; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; +import java.util.UUID;  import net.minecraft.block.Block;  import net.minecraft.entity.Entity; @@ -519,11 +523,6 @@ public class BaseMetaPipeEntity extends CommonMetaTileEntity      }      @Override -    public void onChunkUnload() { -        super.onChunkUnload(); -    } - -    @Override      public boolean hasCustomInventoryName() {          return false;      } @@ -851,10 +850,6 @@ public class BaseMetaPipeEntity extends CommonMetaTileEntity                  }                  if (GT_Utility.isStackInList(tCurrentItem, GregTech_API.sHardHammerList)) { -                    // if (GT_ModHandler.damageOrDechargeItem(tCurrentItem, 1, 1000, aPlayer)) { -                    // GT_Utility.sendSoundToPlayers(worldObj, GregTech_API.sSoundList.get(1), 1.0F, -1, xCoord, yCoord, -                    // zCoord); -                    // }                      return true;                  } diff --git a/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java b/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java index c4e1ba8521..894eee729c 100644 --- a/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java +++ b/src/main/java/gregtech/api/metatileentity/BaseMetaTileEntity.java @@ -6,7 +6,11 @@ import static gregtech.api.enums.GT_Values.V;  import static gregtech.api.objects.XSTR.XSTR_INSTANCE;  import java.lang.reflect.Field; -import java.util.*; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; +import java.util.UUID;  import javax.annotation.Nullable; @@ -64,7 +68,10 @@ import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_BasicMachin  import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Hatch;  import gregtech.api.net.GT_Packet_TileEntity;  import gregtech.api.objects.GT_ItemStack; -import gregtech.api.util.*; +import gregtech.api.util.GT_Log; +import gregtech.api.util.GT_ModHandler; +import gregtech.api.util.GT_OreDictUnificator; +import gregtech.api.util.GT_Utility;  import gregtech.common.GT_Pollution;  import gregtech.common.covers.CoverInfo;  import ic2.api.Direction; @@ -90,7 +97,8 @@ public class BaseMetaTileEntity extends CommonMetaTileEntity implements IGregTec      protected long mStoredEnergy = 0, mStoredSteam = 0;      protected int mAverageEUInputIndex = 0, mAverageEUOutputIndex = 0;      protected boolean mReleaseEnergy = false; -    protected long[] mAverageEUInput = new long[] { 0, 0, 0, 0, 0 }, mAverageEUOutput = new long[] { 0, 0, 0, 0, 0 }; +    protected final long[] mAverageEUInput = new long[] { 0, 0, 0, 0, 0 }; +    protected final long[] mAverageEUOutput = new long[] { 0, 0, 0, 0, 0 };      private boolean mHasEnoughEnergy = true, mRunningThroughTick = false, mInputDisabled = false,          mOutputDisabled = false, mMuffler = false, mLockUpgrade = false;      private boolean mActive = false, mWorkUpdate = false, mSteamConverter = false, mWorks = true; @@ -1375,7 +1383,7 @@ public class BaseMetaTileEntity extends CommonMetaTileEntity implements IGregTec          tItemEntity.hurtResistantTime = 999999;          tItemEntity.lifespan = 60000;          try { -            if (ENTITY_ITEM_HEALTH_FIELD != null) ENTITY_ITEM_HEALTH_FIELD.setInt(tItemEntity, 99999999); +            ENTITY_ITEM_HEALTH_FIELD.setInt(tItemEntity, 99999999);          } catch (Exception ignored) {}          this.worldObj.spawnEntityInWorld(tItemEntity);          tItem.stackSize = 0; diff --git a/src/main/java/gregtech/api/metatileentity/CoverableTileEntity.java b/src/main/java/gregtech/api/metatileentity/CoverableTileEntity.java index 4eac3b8158..04f8a457b1 100644 --- a/src/main/java/gregtech/api/metatileentity/CoverableTileEntity.java +++ b/src/main/java/gregtech/api/metatileentity/CoverableTileEntity.java @@ -196,7 +196,7 @@ public abstract class CoverableTileEntity extends BaseTileEntity implements ICov      }      /** -     * Returns false if the tile is no longer valid after ticking the cover +     * @return {@code false} if the tile is no longer valid after ticking the cover       */      public boolean tickCoverAtSide(ForgeDirection side, long aTickTimer) {          final CoverInfo coverInfo = getCoverInfoAtSide(side); diff --git a/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java b/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java index 011bf1527f..f548949807 100644 --- a/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java +++ b/src/main/java/gregtech/api/metatileentity/MetaPipeEntity.java @@ -87,14 +87,22 @@ public abstract class MetaPipeEntity implements IMetaTileEntity, IConnectable {      private IGregTechTileEntity mBaseMetaTileEntity;      /** -     * This registers your Machine at the List. Use only ID's larger than 2048, because i reserved these ones. See also -     * the List in the API, as it has a Description containing all the reservations. +     * This registers your Machine at the List. Use only ID's larger than 2048 - the ones lower are reserved by GT. +     * See also the list in the API package - it has a description that contains all the reservations. +     * <p> +     * The constructor can be overloaded as follows: +     * <blockquote> +     *  +     * <pre> +     *  +     * public GT_MetaTileEntity_EBench(int id, String name, String nameRegional) { +     *     super(id, name, nameRegional); +     * } +     * </pre> +     *  +     * </blockquote>       * -     * @param aID the ID -     * @example for Constructor overload. -     *          <p/> -     *          public GT_MetaTileEntity_EBench(int aID, String mName, String mNameRegional) { super(aID, mName, -     *          mNameRegional); } +     * @param aID the machine ID       */      public MetaPipeEntity(int aID, String aBasicName, String aRegionalName, int aInvSlotCount) {          this(aID, aBasicName, aRegionalName, aInvSlotCount, true); @@ -332,7 +340,7 @@ public abstract class MetaPipeEntity implements IMetaTileEntity, IConnectable {      }      /** -     * a Player rightclicks the Machine Sneaky rightclicks are not getting passed to this! +     * Called when a Player rightclicks the Machine. Sneaky rightclicks are not getting passed to this!       */      @Override      public boolean onRightclick(IGregTechTileEntity aBaseMetaTileEntity, EntityPlayer aPlayer, ForgeDirection side, diff --git a/src/main/java/gregtech/api/metatileentity/MetaTileEntity.java b/src/main/java/gregtech/api/metatileentity/MetaTileEntity.java index a6c5497e8e..fc923927ae 100644 --- a/src/main/java/gregtech/api/metatileentity/MetaTileEntity.java +++ b/src/main/java/gregtech/api/metatileentity/MetaTileEntity.java @@ -109,14 +109,22 @@ public abstract class MetaTileEntity implements IMetaTileEntity, IMachineCallbac      public long mSoundRequests = 0;      /** -     * This registers your Machine at the List. Use only ID's larger than 2048, because i reserved these ones. See also -     * the List in the API, as it has a Description containing all the reservations. +     * This registers your Machine at the List. Use only ID's larger than 2048 - the ones lower are reserved by GT. +     * See also the list in the API package - it has a description that contains all the reservations. +     * <p> +     * The constructor can be overloaded as follows: +     * <blockquote> +     *  +     * <pre> +     *  +     * public GT_MetaTileEntity_EBench(int id, String name, String nameRegional) { +     *     super(id, name, nameRegional); +     * } +     * </pre> +     *  +     * </blockquote>       * -     * @param aID the ID -     * @example for Constructor overload. -     *          <p/> -     *          public GT_MetaTileEntity_EBench(int aID, String mName, String mNameRegional) { super(aID, mName, -     *          mNameRegional); } +     * @param aID the machine ID       */      public MetaTileEntity(int aID, String aBasicName, String aRegionalName, int aInvSlotCount) {          if (GregTech_API.sPostloadStarted || !GregTech_API.sPreloadStarted) diff --git a/src/main/java/gregtech/api/metatileentity/TileIC2EnergySink.java b/src/main/java/gregtech/api/metatileentity/TileIC2EnergySink.java index 7fb9bc4be6..6fecb840b4 100644 --- a/src/main/java/gregtech/api/metatileentity/TileIC2EnergySink.java +++ b/src/main/java/gregtech/api/metatileentity/TileIC2EnergySink.java @@ -35,34 +35,30 @@ public class TileIC2EnergySink extends TileEntity implements IEnergySink {       */      /** -     * Determine how much energy the sink accepts. -     * -     * Make sure that injectEnergy() does accepts energy if demandsEnergy() returns anything > 0. -     * -     * @note Modifying the energy net from this method is disallowed. +     * Determine how much energy the sink accepts. Note that you cannot modify the energy net from this method. +     * <p> +     * Make sure that {@link TileIC2EnergySink#injectEnergy} accepts energy if this function returns anything positive.       *       * @return max accepted input in eu       */      @Override      public double getDemandedEnergy() {          if (cableMeta != null) { -            // We don't want everything to join the enet (treating the cable as a conductor) so we join it as a ink. We -            // don't want to traverse all cables -            // connected to this (like we would during distribution) to see if it actually needs any EU... so we just -            // always say we want it all. If there -            // are more than two things attached, and one of them is a GT cable that doesn't have anywhere to send it's -            // energy, the distribution will be a bit -            // weird. In that case only use one cable, or use a transformer. +            /* +             * We don't want everything to join the enet, treating the cable as a conductor, so we join it as a link. +             * We don't want to traverse all cables connected to this, like we would during distribution, to see if it +             * actually needs any EU, so we just always say we want it all. If there are more than two things attached +             * and one of them is a GT cable that doesn't have anywhere to send its energy, the distribution will be a +             * bit weird. In that case, use only one cable or a transformer. +             */              return (cableMeta.mVoltage * cableMeta.mAmperage);          } else return myMeta.getEUCapacity() - myMeta.getStoredEU();      }      /** -     * Determine the tier of this energy sink. 1 = LV, 2 = MV, 3 = HV, 4 = EV etc. -     * -     * @note Return Integer.MAX_VALUE to allow any voltage. +     * Gets the tier of this energy sink. 1 = LV, 2 = MV, 3 = HV, 4 = EV etc.       * -     * @return tier of this energy sink +     * @return tier of this energy sink or {@link Integer#MAX_VALUE} to allow any voltage       */      @Override      public int getSinkTier() { @@ -71,7 +67,7 @@ public class TileIC2EnergySink extends TileEntity implements IEnergySink {      /**       * Transfer energy to the sink. -     * +     * <p>       * It's highly recommended to accept all energy by letting the internal buffer overflow to increase the performance       * and accuracy of the distribution simulation.       * @@ -105,7 +101,7 @@ public class TileIC2EnergySink extends TileEntity implements IEnergySink {      /**       * Determine if this acceptor can accept current from an adjacent emitter in a direction. -     * +     * <p>       * The TileEntity in the emitter parameter is what was originally added to the energy net, which may be normal       * in-world TileEntity, a delegate or an IMetaDelegate.       * diff --git a/src/main/java/gregtech/api/metatileentity/examples/GT_MetaTileEntity_E_Furnace.java b/src/main/java/gregtech/api/metatileentity/examples/GT_MetaTileEntity_E_Furnace.java index 83c6174438..811a30d341 100644 --- a/src/main/java/gregtech/api/metatileentity/examples/GT_MetaTileEntity_E_Furnace.java +++ b/src/main/java/gregtech/api/metatileentity/examples/GT_MetaTileEntity_E_Furnace.java @@ -1,6 +1,21 @@  package gregtech.api.metatileentity.examples; -import static gregtech.api.enums.Textures.BlockIcons.*; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_BOTTOM_STEAM_FURNACE; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_BOTTOM_STEAM_FURNACE_ACTIVE; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_BOTTOM_STEAM_FURNACE_ACTIVE_GLOW; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_BOTTOM_STEAM_FURNACE_GLOW; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_STEAM_FURNACE; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_STEAM_FURNACE_ACTIVE; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_STEAM_FURNACE_ACTIVE_GLOW; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_FRONT_STEAM_FURNACE_GLOW; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_SIDE_STEAM_FURNACE; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_SIDE_STEAM_FURNACE_ACTIVE; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_SIDE_STEAM_FURNACE_ACTIVE_GLOW; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_SIDE_STEAM_FURNACE_GLOW; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_TOP_STEAM_FURNACE; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_TOP_STEAM_FURNACE_ACTIVE; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_TOP_STEAM_FURNACE_ACTIVE_GLOW; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_TOP_STEAM_FURNACE_GLOW;  import net.minecraft.item.ItemStack;  import net.minecraftforge.common.util.ForgeDirection; 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 59dc65f89a..9d51f6f37e 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 @@ -27,7 +27,10 @@ import net.minecraftforge.common.util.ForgeDirection;  import cofh.api.energy.IEnergyReceiver;  import gregtech.GT_Mod;  import gregtech.api.GregTech_API; -import gregtech.api.enums.*; +import gregtech.api.enums.Dyes; +import gregtech.api.enums.Materials; +import gregtech.api.enums.TextureSet; +import gregtech.api.enums.Textures;  import gregtech.api.graphs.Node;  import gregtech.api.graphs.NodeList;  import gregtech.api.graphs.PowerNode; @@ -45,7 +48,12 @@ import gregtech.api.metatileentity.BaseMetaPipeEntity;  import gregtech.api.metatileentity.MetaPipeEntity;  import gregtech.api.objects.GT_Cover_None;  import gregtech.api.render.TextureFactory; -import gregtech.api.util.*; +import gregtech.api.util.GT_CoverBehavior; +import gregtech.api.util.GT_CoverBehaviorBase; +import gregtech.api.util.GT_GC_Compat; +import gregtech.api.util.GT_ModHandler; +import gregtech.api.util.GT_Utility; +import gregtech.api.util.ISerializableObject;  import gregtech.common.GT_Client;  import gregtech.common.covers.CoverInfo;  import gregtech.common.covers.GT_Cover_SolarPanel; diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java index f0d8807e95..5c98724df6 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaPipeEntity_Item.java @@ -308,7 +308,7 @@ public class GT_MetaPipeEntity_Item extends MetaPipeEntity implements IMetaTileE          }          if (tileEntity instanceof ISidedInventory) {              final int[] tSlots = ((ISidedInventory) tileEntity).getAccessibleSlotsFromSide(oppositeSide.ordinal()); -            if (tSlots == null || tSlots.length <= 0) return false; +            if (tSlots == null || tSlots.length == 0) return false;              connectable = true;          } diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java index 0a589d6919..0285ca932a 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicGenerator.java @@ -226,8 +226,6 @@ public abstract class GT_MetaTileEntity_BasicGenerator extends GT_MetaTileEntity                      long tFluidAmountToUse = Math.min(                          mFluid.amount / tConsumed,                          (maxEUStore() - aBaseMetaTileEntity.getUniversalEnergyStored()) / tFuelValue); -                    // long tFluidAmountToUse = Math.min(mFluid.amount / tConsumed, (maxEUOutput() * 20 + -                    // getMinimumStoredEU() - aBaseMetaTileEntity.getUniversalEnergyStored()) / tFuelValue);//TODO CHECK                      if (tFluidAmountToUse > 0                          && aBaseMetaTileEntity.increaseStoredEnergyUnits(tFluidAmountToUse * tFuelValue, true)) {                          // divided by two because this is called every 10 ticks, not 20 diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java index fb8a4e6e21..649d47d89b 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine.java @@ -629,11 +629,6 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B                          endProcess();                      }                      if (mProgresstime > 5) mStuttering = false; -                    // XSTR aXSTR = new XSTR(); -                    // if(GT_Mod.gregtechproxy.mAprilFool && -                    // aXSTR.nextInt(5000)==0)GT_Utility.sendSoundToPlayers(aBaseMetaTileEntity.getWorld(), -                    // GregTech_API.sSoundList.get(5), 10.0F, -1.0F, aBaseMetaTileEntity.getXCoord(), -                    // aBaseMetaTileEntity.getYCoord(),aBaseMetaTileEntity.getZCoord());                  } else {                      if (!mStuttering) {                          stutterProcess(); @@ -684,13 +679,6 @@ public abstract class GT_MetaTileEntity_BasicMachine extends GT_MetaTileEntity_B                      (byte) 64,                      (byte) 1,                      tMaxStacks); -                // for (int i = 0, tCosts = 1; i < mOutputItems.length && tCosts > 0 && -                // aBaseMetaTileEntity.isUniversalEnergyStored(128); i++) { -                // tCosts = GT_Utility.moveOneItemStack(aBaseMetaTileEntity, tTileEntity2, -                // aBaseMetaTileEntity.getFrontFacing(), aBaseMetaTileEntity.getBackFacing(), null, false, (byte) 64, -                // (byte) 1, (byte) 64, (byte) 1); -                // if (tCosts > 0) aBaseMetaTileEntity.decreaseStoredEnergyUnits(tCosts, true); -                // }              }              if (mOutputBlocked != 0) if (isOutputEmpty()) mOutputBlocked = 0; diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_Bronze.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_Bronze.java index 7d316476bd..c3cb9da636 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_Bronze.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_Bronze.java @@ -1,7 +1,13 @@  package gregtech.api.metatileentity.implementations;  import static gregtech.api.enums.GT_Values.D1; -import static gregtech.api.enums.Textures.BlockIcons.*; +import static gregtech.api.enums.Textures.BlockIcons.MACHINE_BRONZEBRICKS_BOTTOM; +import static gregtech.api.enums.Textures.BlockIcons.MACHINE_BRONZEBRICKS_SIDE; +import static gregtech.api.enums.Textures.BlockIcons.MACHINE_BRONZEBRICKS_TOP; +import static gregtech.api.enums.Textures.BlockIcons.MACHINE_BRONZE_BOTTOM; +import static gregtech.api.enums.Textures.BlockIcons.MACHINE_BRONZE_SIDE; +import static gregtech.api.enums.Textures.BlockIcons.MACHINE_BRONZE_TOP; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_PIPE_OUT;  import static gregtech.api.objects.XSTR.XSTR_INSTANCE;  import net.minecraft.entity.EntityLivingBase; diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java index ffc51cbd01..4b45708370 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicMachine_GT_Recipe.java @@ -28,9 +28,13 @@ import com.gtnewhorizons.modularui.common.widget.ProgressBar;  import cpw.mods.fml.relauncher.Side;  import cpw.mods.fml.relauncher.SideOnly; -import gregtech.api.enums.*; +import gregtech.api.enums.ItemList; +import gregtech.api.enums.Materials; +import gregtech.api.enums.OrePrefixes;  import gregtech.api.enums.ParticleFX; +import gregtech.api.enums.SoundResource;  import gregtech.api.enums.Textures.BlockIcons.CustomIcon; +import gregtech.api.enums.Tier;  import gregtech.api.gui.GT_Container_BasicMachine;  import gregtech.api.gui.GT_GUIContainer_BasicMachine;  import gregtech.api.gui.modularui.GT_UITextures; diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicTank.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicTank.java index aaac590fe3..e73fcbe21f 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicTank.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_BasicTank.java @@ -26,7 +26,7 @@ import gregtech.common.gui.modularui.widget.FluidDisplaySlotWidget;  /**   * NEVER INCLUDE THIS FILE IN YOUR MOD!!! - * + * <p>   * This is the main construct for my generic Tanks. Filling and emptying behavior have to be implemented manually   */  public abstract class GT_MetaTileEntity_BasicTank extends GT_MetaTileEntity_TieredMachineBlock diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Buffer.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Buffer.java index cf1ba436e1..f88bdd0553 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Buffer.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Buffer.java @@ -1,9 +1,21 @@  package gregtech.api.metatileentity.implementations;  import static gregtech.api.enums.GT_Values.V; -import static gregtech.api.enums.Textures.BlockIcons.*; - -import java.util.*; +import static gregtech.api.enums.Textures.BlockIcons.ARROW_DOWN; +import static gregtech.api.enums.Textures.BlockIcons.ARROW_DOWN_GLOW; +import static gregtech.api.enums.Textures.BlockIcons.ARROW_LEFT; +import static gregtech.api.enums.Textures.BlockIcons.ARROW_LEFT_GLOW; +import static gregtech.api.enums.Textures.BlockIcons.ARROW_RIGHT; +import static gregtech.api.enums.Textures.BlockIcons.ARROW_RIGHT_GLOW; +import static gregtech.api.enums.Textures.BlockIcons.ARROW_UP; +import static gregtech.api.enums.Textures.BlockIcons.ARROW_UP_GLOW; +import static gregtech.api.enums.Textures.BlockIcons.MACHINE_CASINGS; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_PIPE_OUT; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.HashMap; +import java.util.List;  import java.util.stream.IntStream;  import net.minecraft.entity.player.EntityPlayer; diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_CubicMultiBlockBase.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_CubicMultiBlockBase.java index a4456e056c..efb91e3a26 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_CubicMultiBlockBase.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_CubicMultiBlockBase.java @@ -4,7 +4,13 @@ import static com.gtnewhorizon.structurelib.structure.StructureUtility.lazy;  import static com.gtnewhorizon.structurelib.structure.StructureUtility.ofChain;  import static com.gtnewhorizon.structurelib.structure.StructureUtility.onElementPass;  import static com.gtnewhorizon.structurelib.structure.StructureUtility.transpose; -import static gregtech.api.enums.GT_HatchElement.*; +import static gregtech.api.enums.GT_HatchElement.Energy; +import static gregtech.api.enums.GT_HatchElement.InputBus; +import static gregtech.api.enums.GT_HatchElement.InputHatch; +import static gregtech.api.enums.GT_HatchElement.Maintenance; +import static gregtech.api.enums.GT_HatchElement.Muffler; +import static gregtech.api.enums.GT_HatchElement.OutputBus; +import static gregtech.api.enums.GT_HatchElement.OutputHatch;  import java.util.List; diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_ExtendedPowerMultiBlockBase.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_ExtendedPowerMultiBlockBase.java index b5eb13b385..47dd69ba6c 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_ExtendedPowerMultiBlockBase.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_ExtendedPowerMultiBlockBase.java @@ -1,6 +1,6 @@  package gregtech.api.metatileentity.implementations; -import static gregtech.api.enums.GT_Values.*; +import static gregtech.api.enums.GT_Values.VN;  import java.util.ArrayList;  import java.util.List; diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Input.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Input.java index e659fd10a9..e6d8b13045 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Input.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Input.java @@ -30,7 +30,7 @@ public class GT_MetaTileEntity_Hatch_Input extends GT_MetaTileEntity_Hatch {              aTier,              3,              new String[] { "Fluid Input for Multiblocks", -                "Capacity: " + GT_Utility.formatNumbers(8000 * (1 << aTier)) + "L" }); +                "Capacity: " + GT_Utility.formatNumbers(8000L * (1L << aTier)) + "L" });      }      public GT_MetaTileEntity_Hatch_Input(int aID, int aSlot, String aName, String aNameRegional, int aTier) { @@ -41,7 +41,7 @@ public class GT_MetaTileEntity_Hatch_Input extends GT_MetaTileEntity_Hatch {              aTier,              aSlot,              new String[] { "Fluid Input for Multiblocks", -                "Capacity: " + GT_Utility.formatNumbers(8000 * (1 << aTier) / aSlot) + "L", +                "Capacity: " + GT_Utility.formatNumbers(8000L * (1L << aTier) / aSlot) + "L",                  "Can hold " + aSlot + " types of fluid." });      } diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java index 0a8144d620..858e87d43e 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_InputBus.java @@ -1,6 +1,7 @@  package gregtech.api.metatileentity.implementations; -import static gregtech.api.enums.Textures.BlockIcons.*; +import static gregtech.api.enums.Textures.BlockIcons.ITEM_IN_SIGN; +import static gregtech.api.enums.Textures.BlockIcons.OVERLAY_PIPE_IN;  import java.util.ArrayList;  import java.util.HashMap; diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Maintenance.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Maintenance.java index 3b56a2dbbf..d8449bd469 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Maintenance.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Maintenance.java @@ -79,19 +79,19 @@ public class GT_MetaTileEntity_Hatch_Maintenance extends GT_MetaTileEntity_Hatch      @Override      public String[] getDescription() { +        String[] desc;          if (mAuto) { -            String[] desc = new String[mDescriptionArray.length + 3]; +            desc = new String[mDescriptionArray.length + 3];              System.arraycopy(mDescriptionArray, 0, desc, 0, mDescriptionArray.length);              desc[mDescriptionArray.length] = "4 Ducttape, 2 Lubricant Cells";              desc[mDescriptionArray.length + 1] = "4 Steel Screws, 2 HV Circuits";              desc[mDescriptionArray.length + 2] = "For each autorepair"; -            return desc;          } else { -            String[] desc = new String[mDescriptionArray.length + 1]; +            desc = new String[mDescriptionArray.length + 1];              System.arraycopy(mDescriptionArray, 0, desc, 0, mDescriptionArray.length);              desc[mDescriptionArray.length] = "Cannot be shared between Multiblocks!"; -            return desc;          } +        return desc;      }      @Override diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Output.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Output.java index d488eaae3e..932447edbc 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Output.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_Output.java @@ -13,7 +13,12 @@ import net.minecraft.nbt.NBTTagCompound;  import net.minecraft.util.EnumChatFormatting;  import net.minecraft.util.StatCollector;  import net.minecraftforge.common.util.ForgeDirection; -import net.minecraftforge.fluids.*; +import net.minecraftforge.fluids.Fluid; +import net.minecraftforge.fluids.FluidContainerRegistry; +import net.minecraftforge.fluids.FluidRegistry; +import net.minecraftforge.fluids.FluidStack; +import net.minecraftforge.fluids.IFluidContainerItem; +import net.minecraftforge.fluids.IFluidHandler;  import com.gtnewhorizons.modularui.api.math.Alignment;  import com.gtnewhorizons.modularui.api.screen.ModularWindow; @@ -51,7 +56,7 @@ public class GT_MetaTileEntity_Hatch_Output extends GT_MetaTileEntity_Hatch              aTier,              4,              new String[] { "Fluid Output for Multiblocks", -                "Capacity: " + GT_Utility.formatNumbers(8000 * (1 << aTier)) + "L", +                "Capacity: " + GT_Utility.formatNumbers(8000L * (1L << aTier)) + "L",                  "Right click with screwdriver to restrict output",                  "Can be restricted to put out Items and/or Steam/No Steam/1 specific Fluid",                  "Restricted Output Hatches are given priority for Multiblock Fluid output" }); diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_OutputBus.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_OutputBus.java index e3915d4854..c30ce51e57 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_OutputBus.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Hatch_OutputBus.java @@ -180,10 +180,6 @@ public class GT_MetaTileEntity_Hatch_OutputBus extends GT_MetaTileEntity_Hatch i                      mInventory.length);                  for (int i = 0; i < mInventory.length; i++)                      if (mInventory[i] != null && mInventory[i].stackSize <= 0) mInventory[i] = null; -                // GT_Utility.moveOneItemStack(aBaseMetaTileEntity, tTileEntity, -                // aBaseMetaTileEntity.getFrontFacing(), aBaseMetaTileEntity.getBackFacing(), -                // null, false, (byte) 64, (byte) 1, (byte)( 64 * -                // aBaseMetaTileEntity.getSizeInventory()), (byte) 1);              }          }      } diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java index 7884301e97..a6944449a5 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_MultiBlockBase.java @@ -1,6 +1,7 @@  package gregtech.api.metatileentity.implementations; -import static gregtech.api.enums.GT_Values.*; +import static gregtech.api.enums.GT_Values.V; +import static gregtech.api.enums.GT_Values.VN;  import static mcp.mobius.waila.api.SpecialChars.GREEN;  import static mcp.mobius.waila.api.SpecialChars.RED;  import static mcp.mobius.waila.api.SpecialChars.RESET; @@ -35,7 +36,11 @@ import com.google.common.collect.Iterables;  import com.gtnewhorizons.modularui.api.math.Pos2d;  import com.gtnewhorizons.modularui.api.screen.ModularWindow;  import com.gtnewhorizons.modularui.api.screen.UIBuildContext; -import com.gtnewhorizons.modularui.common.widget.*; +import com.gtnewhorizons.modularui.common.widget.DrawableWidget; +import com.gtnewhorizons.modularui.common.widget.DynamicPositionedColumn; +import com.gtnewhorizons.modularui.common.widget.FakeSyncWidget; +import com.gtnewhorizons.modularui.common.widget.SlotWidget; +import com.gtnewhorizons.modularui.common.widget.TextWidget;  import cpw.mods.fml.relauncher.Side;  import cpw.mods.fml.relauncher.SideOnly; @@ -56,8 +61,16 @@ import gregtech.api.interfaces.tileentity.IGregTechTileEntity;  import gregtech.api.items.GT_MetaGenerated_Tool;  import gregtech.api.metatileentity.MetaTileEntity;  import gregtech.api.objects.GT_ItemStack; -import gregtech.api.util.*; +import gregtech.api.util.GT_ExoticEnergyInputHelper; +import gregtech.api.util.GT_Log; +import gregtech.api.util.GT_ModHandler; +import gregtech.api.util.GT_ParallelHelper; +import gregtech.api.util.GT_Recipe;  import gregtech.api.util.GT_Recipe.GT_Recipe_Map; +import gregtech.api.util.GT_Single_Recipe_Check; +import gregtech.api.util.GT_Utility; +import gregtech.api.util.GT_Waila; +import gregtech.api.util.VoidProtectionHelper;  import gregtech.client.GT_SoundLoop;  import gregtech.common.GT_Pollution;  import gregtech.common.items.GT_MetaGenerated_Tool_01; @@ -89,10 +102,10 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity      protected boolean inputSeparation = false;      protected VoidingMode voidingMode = VoidingMode.VOID_ALL;      protected boolean batchMode = false; -    protected static String INPUT_SEPARATION_NBT_KEY = "inputSeparation"; -    protected static String VOID_EXCESS_NBT_KEY = "voidExcess"; -    protected static String VOIDING_MODE_NBT_KEY = "voidingMode"; -    protected static String BATCH_MODE_NBT_KEY = "batchMode"; +    protected static final String INPUT_SEPARATION_NBT_KEY = "inputSeparation"; +    protected static final String VOID_EXCESS_NBT_KEY = "voidExcess"; +    protected static final String VOIDING_MODE_NBT_KEY = "voidingMode"; +    protected static final String BATCH_MODE_NBT_KEY = "batchMode";      public GT_Single_Recipe_Check mSingleRecipeCheck = null;      public ArrayList<GT_MetaTileEntity_Hatch_Input> mInputHatches = new ArrayList<>(); @@ -721,6 +734,7 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity          GT_Pollution.addPollution(getBaseMetaTileEntity(), GT_Mod.gregtechproxy.mPollutionOnExplosion);          mInventory[1] = null; +        // noinspection unchecked // In this case, the inspection only indicates that the array can be abused in runtime          Iterable<MetaTileEntity> allHatches = Iterables.concat(              mInputBusses,              mOutputBusses, @@ -867,7 +881,7 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity                  mMaxProgresstime >>= ocTimeShift; // this is effect of overclocking                  if (mMaxProgresstime < 1) {                      if (oldTime == 1) break; -                    xEUt *= oldTime * (perfectOC ? 1 : 2); +                    xEUt *= (long) oldTime * (perfectOC ? 1 : 2);                      break;                  } else {                      xEUt <<= 2; @@ -1034,11 +1048,6 @@ public abstract class GT_MetaTileEntity_MultiBlockBase extends MetaTileEntity      public ArrayList<ItemStack> getStoredOutputs() {          ArrayList<ItemStack> rList = new ArrayList<>(); -        // for (GT_MetaTileEntity_Hatch_Output tHatch : mOutputHatches) { -        // if (isValidMetaTileEntity(tHatch)) { -        // rList.add(tHatch.getBaseMetaTileEntity().getStackInSlot(1)); -        // } -        // }          for (GT_MetaTileEntity_Hatch_OutputBus tHatch : mOutputBusses) {              if (isValidMetaTileEntity(tHatch)) {                  for (int i = tHatch.getBaseMetaTileEntity() diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Wireless_Dynamo.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Wireless_Dynamo.java index d677b76248..821c02d10f 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Wireless_Dynamo.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Wireless_Dynamo.java @@ -1,6 +1,7 @@  package gregtech.api.metatileentity.implementations; -import static gregtech.api.enums.GT_Values.*; +import static gregtech.api.enums.GT_Values.AuthorColen; +import static gregtech.api.enums.GT_Values.V;  import net.minecraft.entity.player.EntityPlayer;  import net.minecraft.item.ItemStack; diff --git a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Wireless_Hatch.java b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Wireless_Hatch.java index 4c1c7b4cb9..9a4f8d6b56 100644 --- a/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Wireless_Hatch.java +++ b/src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Wireless_Hatch.java @@ -1,6 +1,7 @@  package gregtech.api.metatileentity.implementations; -import static gregtech.api.enums.GT_Values.*; +import static gregtech.api.enums.GT_Values.AuthorColen; +import static gregtech.api.enums.GT_Values.V;  import java.math.BigInteger;  | 
