aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/net/GT_Packet_SetConfigurationCircuit.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/gregtech/api/net/GT_Packet_SetConfigurationCircuit.java')
-rw-r--r--src/main/java/gregtech/api/net/GT_Packet_SetConfigurationCircuit.java110
1 files changed, 0 insertions, 110 deletions
diff --git a/src/main/java/gregtech/api/net/GT_Packet_SetConfigurationCircuit.java b/src/main/java/gregtech/api/net/GT_Packet_SetConfigurationCircuit.java
deleted file mode 100644
index 2bfdbca9d2..0000000000
--- a/src/main/java/gregtech/api/net/GT_Packet_SetConfigurationCircuit.java
+++ /dev/null
@@ -1,110 +0,0 @@
-package gregtech.api.net;
-
-import net.minecraft.item.ItemStack;
-import net.minecraft.network.INetHandler;
-import net.minecraft.network.NetHandlerPlayServer;
-import net.minecraft.tileentity.TileEntity;
-import net.minecraft.world.IBlockAccess;
-import net.minecraft.world.World;
-import net.minecraftforge.common.DimensionManager;
-
-import com.google.common.io.ByteArrayDataInput;
-
-import cpw.mods.fml.common.network.ByteBufUtils;
-import gregtech.api.interfaces.IConfigurationCircuitSupport;
-import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
-import gregtech.api.interfaces.tileentity.IHasInventory;
-import gregtech.api.metatileentity.BaseTileEntity;
-import gregtech.api.util.GT_Utility;
-import gregtech.api.util.ISerializableObject;
-import io.netty.buffer.ByteBuf;
-
-/**
- * Client -> Server: Update machine configuration data
- */
-public class GT_Packet_SetConfigurationCircuit extends GT_Packet_New {
-
- protected int mX;
- protected short mY;
- protected int mZ;
- protected int dimId;
-
- protected ItemStack circuit;
-
- public GT_Packet_SetConfigurationCircuit() {
- super(true);
- }
-
- public GT_Packet_SetConfigurationCircuit(IGregTechTileEntity tile, ItemStack circuit) {
- this(tile.getXCoord(), tile.getYCoord(), tile.getZCoord(), circuit);
- }
-
- public GT_Packet_SetConfigurationCircuit(BaseTileEntity tile, ItemStack circuit) {
- this(tile.getXCoord(), tile.getYCoord(), tile.getZCoord(), circuit);
- }
-
- public GT_Packet_SetConfigurationCircuit(int x, short y, int z, ItemStack circuit) {
- super(false);
-
- this.mX = x;
- this.mY = y;
- this.mZ = z;
-
- this.circuit = circuit;
- }
-
- @Override
- public byte getPacketID() {
- return GT_PacketTypes.SET_CONFIGURATION_CIRCUIT.id;
- }
-
- @Override
- public void encode(ByteBuf aOut) {
- aOut.writeInt(mX);
- aOut.writeShort(mY);
- aOut.writeInt(mZ);
-
- // no null check needed. ByteBufUtils will handle it
- ByteBufUtils.writeItemStack(aOut, this.circuit);
- }
-
- @Override
- public void setINetHandler(INetHandler aHandler) {
- if (aHandler instanceof NetHandlerPlayServer) {
- dimId = ((NetHandlerPlayServer) aHandler).playerEntity.dimension;
- } else {
- // packet sent to wrong side, so we need to ignore this one
- // but there is no way to disrupt packet pipeline
- // so we will instead go find world -2, which (hopefully) doesn't exist
- // then we will fail silently in process()
- dimId = -2;
- }
- }
-
- @Override
- public GT_Packet_New decode(ByteArrayDataInput aData) {
- return new GT_Packet_SetConfigurationCircuit(
- aData.readInt(),
- aData.readShort(),
- aData.readInt(),
- ISerializableObject.readItemStackFromGreggyByteBuf(aData));
- }
-
- @Override
- public void process(IBlockAccess aWorld) {
- final World world = DimensionManager.getWorld(dimId);
- if (world == null) return;
-
- final TileEntity tile = world.getTileEntity(mX, mY, mZ);
- if (!(tile instanceof BaseTileEntity) || ((BaseTileEntity) tile).isDead()) return;
-
- final IConfigurationCircuitSupport machine = ((BaseTileEntity) tile).getConfigurationCircuitSupport();
- if (machine == null) return;
- if (!machine.allowSelectCircuit()) return;
- machine.getConfigurationCircuits()
- .stream()
- .filter(stack -> GT_Utility.areStacksEqual(stack, circuit))
- .findFirst()
- .ifPresent(stack -> ((IHasInventory) tile).setInventorySlotContents(machine.getCircuitSlot(), stack));
- }
-}