aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gregtech')
-rw-r--r--src/main/java/gregtech/api/enums/Textures.java10
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/GT_MetaTileEntity_Buffer.java34
-rw-r--r--src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_ChestBuffer.java25
-rw-r--r--src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_Filter.java24
-rw-r--r--src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_ItemDistributor.java18
-rw-r--r--src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_Regulator.java36
-rw-r--r--src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_SuperBuffer.java19
-rw-r--r--src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_TypeFilter.java44
8 files changed, 153 insertions, 57 deletions
diff --git a/src/main/java/gregtech/api/enums/Textures.java b/src/main/java/gregtech/api/enums/Textures.java
index f66f5889a4..c361ad75d1 100644
--- a/src/main/java/gregtech/api/enums/Textures.java
+++ b/src/main/java/gregtech/api/enums/Textures.java
@@ -129,16 +129,26 @@ public class Textures {
VENT_ADVANCED,
COVER_WOOD_PLATE,
ARROW_UP,
+ ARROW_UP_GLOW,
ARROW_DOWN,
+ ARROW_DOWN_GLOW,
ARROW_LEFT,
+ ARROW_LEFT_GLOW,
ARROW_RIGHT,
+ ARROW_RIGHT_GLOW,
AUTOMATION_FILTER,
+ AUTOMATION_FILTER_GLOW,
AUTOMATION_TYPEFILTER,
+ AUTOMATION_TYPEFILTER_GLOW,
AUTOMATION_CHESTBUFFER,
+ AUTOMATION_CHESTBUFFER_GLOW,
AUTOMATION_SUPERBUFFER,
+ AUTOMATION_SUPERBUFFER_GLOW,
AUTOMATION_REGULATOR,
+ AUTOMATION_REGULATOR_GLOW,
AUTOMATION_ITEMDISTRIBUTOR,
+ AUTOMATION_ITEMDISTRIBUTOR_GLOW,
CONCRETE_LIGHT_STONE,
CONCRETE_LIGHT_COBBLE,
CONCRETE_LIGHT_COBBLE_MOSSY,
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 d73db20951..785b0aba8d 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,8 +1,9 @@
package gregtech.api.metatileentity.implementations;
-import gregtech.api.enums.Textures;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
+import gregtech.api.objects.GT_MultiTexture;
+import gregtech.api.objects.GT_RenderedGlowTexture;
import gregtech.api.objects.GT_RenderedTexture;
import gregtech.api.util.GT_Utility;
import net.minecraft.entity.player.EntityPlayer;
@@ -11,6 +12,7 @@ import net.minecraft.nbt.NBTTagCompound;
import net.minecraftforge.common.util.ForgeDirection;
import static gregtech.api.enums.GT_Values.V;
+import static gregtech.api.enums.Textures.BlockIcons.*;
public abstract class GT_MetaTileEntity_Buffer extends GT_MetaTileEntity_TieredMachineBlock {
private static final int OUTPUT_INDEX = 0;
@@ -45,18 +47,26 @@ public abstract class GT_MetaTileEntity_Buffer extends GT_MetaTileEntity_TieredM
public ITexture[][][] getTextureSet(ITexture[] aTextures) {
ITexture[][][] rTextures = new ITexture[ForgeDirection.VALID_DIRECTIONS.length][17][];
ITexture tIcon = getOverlayIcon();
- ITexture tOut = new GT_RenderedTexture(Textures.BlockIcons.OVERLAY_PIPE_OUT);
- ITexture tUp = new GT_RenderedTexture(Textures.BlockIcons.ARROW_UP);
- ITexture tDown = new GT_RenderedTexture(Textures.BlockIcons.ARROW_DOWN);
- ITexture tLeft = new GT_RenderedTexture(Textures.BlockIcons.ARROW_LEFT);
- ITexture tRight = new GT_RenderedTexture(Textures.BlockIcons.ARROW_RIGHT);
+ ITexture tOut = new GT_RenderedTexture(OVERLAY_PIPE_OUT);
+ ITexture tUp = new GT_MultiTexture(
+ new GT_RenderedTexture(ARROW_UP),
+ new GT_RenderedGlowTexture(ARROW_UP_GLOW));
+ ITexture tDown = new GT_MultiTexture(
+ new GT_RenderedTexture(ARROW_DOWN),
+ new GT_RenderedGlowTexture(ARROW_DOWN_GLOW));
+ ITexture tLeft = new GT_MultiTexture(
+ new GT_RenderedTexture(ARROW_LEFT),
+ new GT_RenderedGlowTexture(ARROW_LEFT_GLOW));
+ ITexture tRight = new GT_MultiTexture(
+ new GT_RenderedTexture(ARROW_RIGHT),
+ new GT_RenderedGlowTexture(ARROW_RIGHT_GLOW));
for (int i = 0; i < rTextures[0].length; i++) {
- rTextures[OUTPUT_INDEX][i] = new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][i], tOut};
- rTextures[ARROW_RIGHT_INDEX][i] = new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][i], tRight, tIcon};
- rTextures[ARROW_DOWN_INDEX][i] = new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][i], tDown, tIcon};
- rTextures[ARROW_LEFT_INDEX][i] = new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][i], tLeft, tIcon};
- rTextures[ARROW_UP_INDEX][i] = new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][i], tUp, tIcon};
- rTextures[FRONT_INDEX][i] = new ITexture[]{Textures.BlockIcons.MACHINE_CASINGS[mTier][i], tIcon};
+ rTextures[OUTPUT_INDEX][i] = new ITexture[]{MACHINE_CASINGS[mTier][i], tOut};
+ rTextures[ARROW_RIGHT_INDEX][i] = new ITexture[]{MACHINE_CASINGS[mTier][i], tRight, tIcon};
+ rTextures[ARROW_DOWN_INDEX][i] = new ITexture[]{MACHINE_CASINGS[mTier][i], tDown, tIcon};
+ rTextures[ARROW_LEFT_INDEX][i] = new ITexture[]{MACHINE_CASINGS[mTier][i], tLeft, tIcon};
+ rTextures[ARROW_UP_INDEX][i] = new ITexture[]{MACHINE_CASINGS[mTier][i], tUp, tIcon};
+ rTextures[FRONT_INDEX][i] = new ITexture[]{MACHINE_CASINGS[mTier][i], tIcon};
}
return rTextures;
}
diff --git a/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_ChestBuffer.java b/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_ChestBuffer.java
index 6951f9bb44..c6ba60fdda 100644
--- a/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_ChestBuffer.java
+++ b/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_ChestBuffer.java
@@ -1,10 +1,11 @@
package gregtech.common.tileentities.automation;
-import gregtech.api.enums.Textures;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Buffer;
+import gregtech.api.objects.GT_MultiTexture;
+import gregtech.api.objects.GT_RenderedGlowTexture;
import gregtech.api.objects.GT_RenderedTexture;
import gregtech.api.util.GT_Utility;
import gregtech.common.gui.GT_Container_ChestBuffer;
@@ -17,6 +18,9 @@ import net.minecraft.item.ItemStack;
import java.util.Arrays;
import java.util.Comparator;
+import static gregtech.api.enums.Textures.BlockIcons.AUTOMATION_CHESTBUFFER;
+import static gregtech.api.enums.Textures.BlockIcons.AUTOMATION_CHESTBUFFER_GLOW;
+
public class GT_MetaTileEntity_ChestBuffer extends GT_MetaTileEntity_Buffer {
private static final int[] tickRate = {400, 200, 100, 20, 4, 1, 1, 1, 1, 1, 1, 1, 1};
@@ -25,10 +29,10 @@ public class GT_MetaTileEntity_ChestBuffer extends GT_MetaTileEntity_Buffer {
public GT_MetaTileEntity_ChestBuffer(int aID, String aName, String aNameRegional, int aTier) {
super(aID, aName, aNameRegional, aTier, 28, new String[]{
- "Buffers up to 27 Item Stacks",
- "Use Screwdriver to regulate output stack size",
- "Does not consume energy to move Item",
- getTickRateDesc(aTier)});
+ "Buffers up to 27 Item Stacks",
+ "Use Screwdriver to regulate output stack size",
+ "Does not consume energy to move Item",
+ getTickRateDesc(aTier)});
}
public GT_MetaTileEntity_ChestBuffer(int aID, String aName, String aNameRegional, int aTier, int aInvSlotCount, String aDescription) {
@@ -47,18 +51,24 @@ public class GT_MetaTileEntity_ChestBuffer extends GT_MetaTileEntity_Buffer {
super(aName, aTier, aInvSlotCount, aDescription, aTextures);
}
+ @Override
public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
return new GT_MetaTileEntity_ChestBuffer(this.mName, this.mTier, this.mInventory.length, this.mDescriptionArray, this.mTextures);
}
+ @Override
public ITexture getOverlayIcon() {
- return new GT_RenderedTexture(Textures.BlockIcons.AUTOMATION_CHESTBUFFER);
+ return new GT_MultiTexture(
+ new GT_RenderedTexture(AUTOMATION_CHESTBUFFER),
+ new GT_RenderedGlowTexture(AUTOMATION_CHESTBUFFER_GLOW));
}
+ @Override
public boolean isValidSlot(int aIndex) {
return aIndex < this.mInventory.length - 1;
}
+ @Override
protected void moveItems(IGregTechTileEntity aBaseMetaTileEntity, long aTimer) {
if (aTimer % tickRate[mTier] > 0) return;
@@ -113,6 +123,7 @@ public class GT_MetaTileEntity_ChestBuffer extends GT_MetaTileEntity_Buffer {
});
}
+ @Override
protected void fillStacksIntoFirstSlots() {
sortStacks();
// Merge small stacks together
@@ -131,10 +142,12 @@ public class GT_MetaTileEntity_ChestBuffer extends GT_MetaTileEntity_Buffer {
}
}
+ @Override
public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
return new GT_Container_ChestBuffer(aPlayerInventory, aBaseMetaTileEntity);
}
+ @Override
public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
return new GT_GUIContainer_ChestBuffer(aPlayerInventory, aBaseMetaTileEntity);
}
diff --git a/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_Filter.java b/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_Filter.java
index 1f87b45ced..8f7bc96866 100644
--- a/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_Filter.java
+++ b/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_Filter.java
@@ -1,10 +1,11 @@
package gregtech.common.tileentities.automation;
-import gregtech.api.enums.Textures;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Buffer;
+import gregtech.api.objects.GT_MultiTexture;
+import gregtech.api.objects.GT_RenderedGlowTexture;
import gregtech.api.objects.GT_RenderedTexture;
import gregtech.api.util.GT_Utility;
import gregtech.common.gui.GT_Container_Filter;
@@ -13,15 +14,18 @@ import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
+import static gregtech.api.enums.Textures.BlockIcons.AUTOMATION_FILTER;
+import static gregtech.api.enums.Textures.BlockIcons.AUTOMATION_FILTER_GLOW;
+
public class GT_MetaTileEntity_Filter extends GT_MetaTileEntity_Buffer {
public boolean bIgnoreNBT = false;
public boolean bInvertFilter = false;
public GT_MetaTileEntity_Filter(int aID, String aName, String aNameRegional, int aTier) {
super(aID, aName, aNameRegional, aTier, 19, new String[]{
- "Filters up to 9 different Items",
- "Use Screwdriver to regulate output stack size",
- "Consumes 1EU per moved Item"});
+ "Filters up to 9 different Items",
+ "Use Screwdriver to regulate output stack size",
+ "Consumes 1EU per moved Item"});
}
public GT_MetaTileEntity_Filter(String aName, int aTier, int aInvSlotCount, String aDescription, ITexture[][][] aTextures) {
@@ -32,38 +36,48 @@ public class GT_MetaTileEntity_Filter extends GT_MetaTileEntity_Buffer {
super(aName, aTier, aInvSlotCount, aDescription, aTextures);
}
+ @Override
public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
return new GT_MetaTileEntity_Filter(this.mName, this.mTier, this.mInventory.length, this.mDescriptionArray, this.mTextures);
}
+ @Override
public ITexture getOverlayIcon() {
- return new GT_RenderedTexture(Textures.BlockIcons.AUTOMATION_FILTER);
+ return new GT_MultiTexture(
+ new GT_RenderedTexture(AUTOMATION_FILTER),
+ new GT_RenderedGlowTexture(AUTOMATION_FILTER_GLOW));
}
+ @Override
public boolean isValidSlot(int aIndex) {
return aIndex < 9;
}
+ @Override
public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
return new GT_Container_Filter(aPlayerInventory, aBaseMetaTileEntity);
}
+ @Override
public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
return new GT_GUIContainer_Filter(aPlayerInventory, aBaseMetaTileEntity);
}
+ @Override
public void saveNBTData(NBTTagCompound aNBT) {
super.saveNBTData(aNBT);
aNBT.setBoolean("bInvertFilter", this.bInvertFilter);
aNBT.setBoolean("bIgnoreNBT", this.bIgnoreNBT);
}
+ @Override
public void loadNBTData(NBTTagCompound aNBT) {
super.loadNBTData(aNBT);
this.bInvertFilter = aNBT.getBoolean("bInvertFilter");
this.bIgnoreNBT = aNBT.getBoolean("bIgnoreNBT");
}
+ @Override
public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
if (!super.allowPutStack(aBaseMetaTileEntity, aIndex, aSide, aStack)) {
return false;
diff --git a/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_ItemDistributor.java b/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_ItemDistributor.java
index 75c58a55da..e3bd50255d 100644
--- a/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_ItemDistributor.java
+++ b/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_ItemDistributor.java
@@ -5,6 +5,8 @@ import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Buffer;
+import gregtech.api.objects.GT_MultiTexture;
+import gregtech.api.objects.GT_RenderedGlowTexture;
import gregtech.api.objects.GT_RenderedTexture;
import gregtech.api.util.GT_Utility;
import gregtech.common.gui.GT_Container_ItemDistributor;
@@ -15,6 +17,9 @@ import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity;
+import static gregtech.api.enums.Textures.BlockIcons.AUTOMATION_ITEMDISTRIBUTOR;
+import static gregtech.api.enums.Textures.BlockIcons.AUTOMATION_ITEMDISTRIBUTOR_GLOW;
+
public class GT_MetaTileEntity_ItemDistributor extends GT_MetaTileEntity_Buffer {
private byte[] itemsPerSide = new byte[6];
private byte currentSide = 0, currentSideItemCount = 0;
@@ -40,11 +45,13 @@ public class GT_MetaTileEntity_ItemDistributor extends GT_MetaTileEntity_Buffer
super(aName, aTier, aInvSlotCount, aDescription, aTextures);
}
+ @Override
public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
return new GT_MetaTileEntity_ItemDistributor(this.mName, this.mTier, this.mInventory.length, this.mDescriptionArray,
this.mTextures);
}
+ @Override
protected void fillStacksIntoFirstSlots() {
for (int i = 0; i < this.mInventory.length - 1; i++) {
for (int j = i + 1; j < this.mInventory.length - 1; j++) {
@@ -57,14 +64,19 @@ public class GT_MetaTileEntity_ItemDistributor extends GT_MetaTileEntity_Buffer
}
}
+ @Override
public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
return new GT_GUIContainer_ItemDistributor(aPlayerInventory, aBaseMetaTileEntity);
}
+ @Override
public ITexture getOverlayIcon() {
- return new GT_RenderedTexture(Textures.BlockIcons.AUTOMATION_ITEMDISTRIBUTOR);
+ return new GT_MultiTexture(
+ new GT_RenderedTexture(AUTOMATION_ITEMDISTRIBUTOR),
+ new GT_RenderedGlowTexture(AUTOMATION_ITEMDISTRIBUTOR_GLOW));
}
+ @Override
public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
return new GT_Container_ItemDistributor(aPlayerInventory, aBaseMetaTileEntity);
}
@@ -104,6 +116,7 @@ public class GT_MetaTileEntity_ItemDistributor extends GT_MetaTileEntity_Buffer
return getBaseMetaTileEntity().getFrontFacing() != aSide && itemsPerSide[aSide] > 0;
}
+ @Override
public boolean isValidSlot(int aIndex) {
return aIndex < this.mInventory.length - 1;
}
@@ -119,9 +132,10 @@ public class GT_MetaTileEntity_ItemDistributor extends GT_MetaTileEntity_Buffer
currentSideItemCount = aNBT.getByte("mCurrentSideItemCount");
}
+ @Override
protected void moveItems(IGregTechTileEntity aBaseMetaTileEntity, long aTimer) {
fillStacksIntoFirstSlots();
- int movedItems = 0;
+ int movedItems;
TileEntity adjacentTileEntity = aBaseMetaTileEntity.getTileEntityAtSide(currentSide);
int inspectedSides = 0;
while (itemsPerSide[currentSide] == 0) {
diff --git a/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_Regulator.java b/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_Regulator.java
index 746e182066..c2e7e4353c 100644
--- a/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_Regulator.java
+++ b/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_Regulator.java
@@ -1,10 +1,11 @@
package gregtech.common.tileentities.automation;
-import gregtech.api.enums.Textures;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Buffer;
+import gregtech.api.objects.GT_MultiTexture;
+import gregtech.api.objects.GT_RenderedGlowTexture;
import gregtech.api.objects.GT_RenderedTexture;
import gregtech.api.util.GT_Utility;
import gregtech.common.gui.GT_Container_Regulator;
@@ -14,7 +15,10 @@ import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
-import java.util.Arrays;
+import java.util.Collections;
+
+import static gregtech.api.enums.Textures.BlockIcons.AUTOMATION_REGULATOR;
+import static gregtech.api.enums.Textures.BlockIcons.AUTOMATION_REGULATOR_GLOW;
public class GT_MetaTileEntity_Regulator
extends GT_MetaTileEntity_Buffer {
@@ -23,10 +27,10 @@ public class GT_MetaTileEntity_Regulator
public GT_MetaTileEntity_Regulator(int aID, String aName, String aNameRegional, int aTier) {
super(aID, aName, aNameRegional, aTier, 20, new String[]{
- "Filters up to 9 different Items",
- "Allows Item-specific output stack size",
- "Allows Item-specific output slot",
- "Consumes 1EU per moved Item"});
+ "Filters up to 9 different Items",
+ "Allows Item-specific output stack size",
+ "Allows Item-specific output slot",
+ "Consumes 1EU per moved Item"});
}
public GT_MetaTileEntity_Regulator(String aName, int aTier, int aInvSlotCount, String aDescription, ITexture[][][] aTextures) {
@@ -37,26 +41,34 @@ public class GT_MetaTileEntity_Regulator
super(aName, aTier, aInvSlotCount, aDescription, aTextures);
}
+ @Override
public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
return new GT_MetaTileEntity_Regulator(this.mName, this.mTier, this.mInventory.length, this.mDescriptionArray, this.mTextures);
}
+ @Override
public ITexture getOverlayIcon() {
- return new GT_RenderedTexture(Textures.BlockIcons.AUTOMATION_REGULATOR);
+ return new GT_MultiTexture(
+ new GT_RenderedTexture(AUTOMATION_REGULATOR),
+ new GT_RenderedGlowTexture(AUTOMATION_REGULATOR_GLOW));
}
+ @Override
public boolean isValidSlot(int aIndex) {
return aIndex < 9;
}
+ @Override
public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
return new GT_Container_Regulator(aPlayerInventory, aBaseMetaTileEntity);
}
+ @Override
public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
return new GT_GUIContainer_Regulator(aPlayerInventory, aBaseMetaTileEntity);
}
+ @Override
public void saveNBTData(NBTTagCompound aNBT) {
super.saveNBTData(aNBT);
aNBT.setInteger("mTargetSlot1", this.mTargetSlots[0]);
@@ -70,6 +82,7 @@ public class GT_MetaTileEntity_Regulator
aNBT.setInteger("mTargetSlot9", this.mTargetSlots[8]);
}
+ @Override
public void loadNBTData(NBTTagCompound aNBT) {
super.loadNBTData(aNBT);
this.mTargetSlots[0] = aNBT.getInteger("mTargetSlot1");
@@ -85,14 +98,14 @@ public class GT_MetaTileEntity_Regulator
@Override
public void onScrewdriverRightClick(byte aSide, EntityPlayer aPlayer, float aX, float aY, float aZ) {
- //Regulation per Screwdriver is overridden by GUI regulation.
+ //Regulation per Screwdriver is overridden by GUI regulation.
}
+ @Override
public void moveItems(IGregTechTileEntity aBaseMetaTileEntity, long aTimer) {
- int i = 0;
- for (int tCosts = 0; i < 9; i++) {
+ for (int i = 0, tCosts; i < 9; i++) {
if (this.mInventory[(i + 9)] != null) {
- tCosts = GT_Utility.moveOneItemStackIntoSlot(getBaseMetaTileEntity(), getBaseMetaTileEntity().getTileEntityAtSide(getBaseMetaTileEntity().getBackFacing()), getBaseMetaTileEntity().getBackFacing(), this.mTargetSlots[i], Arrays.asList(new ItemStack[]{this.mInventory[(i + 9)]}), false, (byte) this.mInventory[(i + 9)].stackSize, (byte) this.mInventory[(i + 9)].stackSize, (byte) 64, (byte) 1) * 3;
+ tCosts = GT_Utility.moveOneItemStackIntoSlot(getBaseMetaTileEntity(), getBaseMetaTileEntity().getTileEntityAtSide(getBaseMetaTileEntity().getBackFacing()), getBaseMetaTileEntity().getBackFacing(), this.mTargetSlots[i], Collections.singletonList(this.mInventory[(i + 9)]), false, (byte) this.mInventory[(i + 9)].stackSize, (byte) this.mInventory[(i + 9)].stackSize, (byte) 64, (byte) 1) * 3;
if (tCosts > 0) {
this.mSuccess = 50;
break;
@@ -101,6 +114,7 @@ public class GT_MetaTileEntity_Regulator
}
}
+ @Override
public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
return (super.allowPutStack(aBaseMetaTileEntity, aIndex, aSide, aStack)) && (GT_Utility.areStacksEqual(aStack, this.mInventory[(aIndex + 9)]));
}
diff --git a/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_SuperBuffer.java b/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_SuperBuffer.java
index 84df068972..21cffc2da8 100644
--- a/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_SuperBuffer.java
+++ b/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_SuperBuffer.java
@@ -1,21 +1,25 @@
package gregtech.common.tileentities.automation;
-import gregtech.api.enums.Textures;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
+import gregtech.api.objects.GT_MultiTexture;
+import gregtech.api.objects.GT_RenderedGlowTexture;
import gregtech.api.objects.GT_RenderedTexture;
import gregtech.common.gui.GT_Container_SuperBuffer;
import gregtech.common.gui.GT_GUIContainer_SuperBuffer;
import net.minecraft.entity.player.InventoryPlayer;
+import static gregtech.api.enums.Textures.BlockIcons.AUTOMATION_SUPERBUFFER;
+import static gregtech.api.enums.Textures.BlockIcons.AUTOMATION_SUPERBUFFER_GLOW;
+
public class GT_MetaTileEntity_SuperBuffer extends GT_MetaTileEntity_ChestBuffer {
public GT_MetaTileEntity_SuperBuffer(int aID, String aName, String aNameRegional, int aTier) {
super(aID, aName, aNameRegional, aTier, 257, new String[]{
- "Buffers up to 256 Item Stacks",
- "Use Screwdriver to regulate output stack size",
- "Does not consume energy to move Item",
- getTickRateDesc(aTier)});
+ "Buffers up to 256 Item Stacks",
+ "Use Screwdriver to regulate output stack size",
+ "Does not consume energy to move Item",
+ getTickRateDesc(aTier)});
}
public GT_MetaTileEntity_SuperBuffer(String aName, int aTier, int aInvSlotCount, String aDescription, ITexture[][][] aTextures) {
@@ -30,8 +34,11 @@ public class GT_MetaTileEntity_SuperBuffer extends GT_MetaTileEntity_ChestBuffer
return new GT_MetaTileEntity_SuperBuffer(this.mName, this.mTier, this.mInventory.length, this.mDescriptionArray, this.mTextures);
}
+ @Override
public ITexture getOverlayIcon() {
- return new GT_RenderedTexture(Textures.BlockIcons.AUTOMATION_SUPERBUFFER);
+ return new GT_MultiTexture(
+ new GT_RenderedTexture(AUTOMATION_SUPERBUFFER),
+ new GT_RenderedGlowTexture(AUTOMATION_SUPERBUFFER_GLOW));
}
public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
diff --git a/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_TypeFilter.java b/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_TypeFilter.java
index ec60dc00e9..97580d18ae 100644
--- a/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_TypeFilter.java
+++ b/src/main/java/gregtech/common/tileentities/automation/GT_MetaTileEntity_TypeFilter.java
@@ -1,11 +1,12 @@
package gregtech.common.tileentities.automation;
import gregtech.api.enums.OrePrefixes;
-import gregtech.api.enums.Textures;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.metatileentity.implementations.GT_MetaTileEntity_Buffer;
+import gregtech.api.objects.GT_MultiTexture;
+import gregtech.api.objects.GT_RenderedGlowTexture;
import gregtech.api.objects.GT_RenderedTexture;
import gregtech.api.objects.ItemData;
import gregtech.api.util.GT_OreDictUnificator;
@@ -16,6 +17,10 @@ import net.minecraft.entity.player.InventoryPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
+import static gregtech.api.enums.GT_Values.W;
+import static gregtech.api.enums.Textures.BlockIcons.AUTOMATION_TYPEFILTER;
+import static gregtech.api.enums.Textures.BlockIcons.AUTOMATION_TYPEFILTER_GLOW;
+
public class GT_MetaTileEntity_TypeFilter extends GT_MetaTileEntity_Buffer {
public boolean bNBTAllowed = false;
public boolean bInvertFilter = false;
@@ -24,9 +29,9 @@ public class GT_MetaTileEntity_TypeFilter extends GT_MetaTileEntity_Buffer {
public GT_MetaTileEntity_TypeFilter(int aID, String aName, String aNameRegional, int aTier) {
super(aID, aName, aNameRegional, aTier, 11, new String[]{
- "Filters 1 Item Type",
- "Use Screwdriver to regulate output stack size",
- "Consumes 1 EU per moved Item"});
+ "Filters 1 Item Type",
+ "Use Screwdriver to regulate output stack size",
+ "Consumes 1 EU per moved Item"});
}
public GT_MetaTileEntity_TypeFilter(String aName, int aTier, int aInvSlotCount, String aDescription, ITexture[][][] aTextures) {
@@ -37,22 +42,29 @@ public class GT_MetaTileEntity_TypeFilter extends GT_MetaTileEntity_Buffer {
super(aName, aTier, aInvSlotCount, aDescription, aTextures);
}
+ @Override
public IMetaTileEntity newMetaEntity(IGregTechTileEntity aTileEntity) {
return new GT_MetaTileEntity_TypeFilter(this.mName, this.mTier, this.mInventory.length, this.mDescriptionArray, this.mTextures);
}
+ @Override
public ITexture getOverlayIcon() {
- return new GT_RenderedTexture(Textures.BlockIcons.AUTOMATION_TYPEFILTER);
+ return new GT_MultiTexture(
+ new GT_RenderedTexture(AUTOMATION_TYPEFILTER),
+ new GT_RenderedGlowTexture(AUTOMATION_TYPEFILTER_GLOW));
}
+ @Override
public boolean isValidSlot(int aIndex) {
return aIndex < 9;
}
+ @Override
public Object getServerGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
return new GT_Container_TypeFilter(aPlayerInventory, aBaseMetaTileEntity);
}
+ @Override
public Object getClientGUI(int aID, InventoryPlayer aPlayerInventory, IGregTechTileEntity aBaseMetaTileEntity) {
return new GT_GUIContainer_TypeFilter(aPlayerInventory, aBaseMetaTileEntity);
}
@@ -86,21 +98,21 @@ public class GT_MetaTileEntity_TypeFilter extends GT_MetaTileEntity_Buffer {
}
}
+ @Override
public void onPreTick(IGregTechTileEntity aBaseMetaTileEntity, long aTick) {
super.onPreTick(aBaseMetaTileEntity, aTick);
- if ((getBaseMetaTileEntity().isServerSide()) && ((aTick % 8L == 0L) || mRotationIndex == -1)) {
- if (this.mPrefix.mPrefixedItems.isEmpty()) {
- this.mInventory[9] = null;
- } else {
- this.mInventory[9] = GT_Utility.copyAmount(1L, this.mPrefix.mPrefixedItems.get(this.mRotationIndex = (this.mRotationIndex + 1) % this.mPrefix.mPrefixedItems.size()));
- if (this.mInventory[9].getItemDamage() == 32767) {
- this.mInventory[9].setItemDamage(0);
- }
- this.mInventory[9].setStackDisplayName(this.mPrefix.toString());
- }
+ if ((!getBaseMetaTileEntity().isServerSide()) || ((aTick % 8L != 0L) && mRotationIndex != -1)) return;
+ if (this.mPrefix.mPrefixedItems.isEmpty()) {
+ this.mInventory[9] = null;
+ return;
}
+ this.mInventory[9] = GT_Utility.copyAmount(1L, this.mPrefix.mPrefixedItems.get(this.mRotationIndex = (this.mRotationIndex + 1) % this.mPrefix.mPrefixedItems.size()));
+ if (this.mInventory[9] == null) return;
+ if (this.mInventory[9].getItemDamage() == W) this.mInventory[9].setItemDamage(0);
+ this.mInventory[9].setStackDisplayName(this.mPrefix.toString());
}
+ @Override
public void saveNBTData(NBTTagCompound aNBT) {
super.saveNBTData(aNBT);
aNBT.setString("mPrefix", this.mPrefix.toString());
@@ -108,6 +120,7 @@ public class GT_MetaTileEntity_TypeFilter extends GT_MetaTileEntity_Buffer {
aNBT.setBoolean("bNBTAllowed", this.bNBTAllowed);
}
+ @Override
public void loadNBTData(NBTTagCompound aNBT) {
super.loadNBTData(aNBT);
this.mPrefix = OrePrefixes.getPrefix(aNBT.getString("mPrefix"), this.mPrefix);
@@ -115,6 +128,7 @@ public class GT_MetaTileEntity_TypeFilter extends GT_MetaTileEntity_Buffer {
this.bNBTAllowed = aNBT.getBoolean("bNBTAllowed");
}
+ @Override
public boolean allowPutStack(IGregTechTileEntity aBaseMetaTileEntity, int aIndex, byte aSide, ItemStack aStack) {
boolean tAllowPrefix = this.mPrefix.contains(aStack);
if (this.mPrefix == OrePrefixes.ore) {