aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/gregtech/api/metatileentity
diff options
context:
space:
mode:
authorRyan Nasers <42074409+Cardinalstars@users.noreply.github.com>2024-11-30 23:42:47 +0100
committerGitHub <noreply@github.com>2024-11-30 23:42:47 +0100
commitd415a2c816f27fbacaa6a2bcfc297f7dfd892a12 (patch)
tree0cf3dc0703b9b51263757209637c5b2477d261b9 /src/main/java/gregtech/api/metatileentity
parenteae2657d2e32ef182ecae21a8018a2f866e4841c (diff)
downloadGT5-Unofficial-d415a2c816f27fbacaa6a2bcfc297f7dfd892a12.tar.gz
GT5-Unofficial-d415a2c816f27fbacaa6a2bcfc297f7dfd892a12.tar.bz2
GT5-Unofficial-d415a2c816f27fbacaa6a2bcfc297f7dfd892a12.zip
Frame fix (NEEDS TESTING) (#3578)
Co-authored-by: Maya <10861407+serenibyss@users.noreply.github.com> Co-authored-by: Martin Robertz <dream-master@gmx.net>
Diffstat (limited to 'src/main/java/gregtech/api/metatileentity')
-rw-r--r--src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java74
-rw-r--r--src/main/java/gregtech/api/metatileentity/implementations/MTEFrame.java3
2 files changed, 53 insertions, 24 deletions
diff --git a/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java b/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java
index 0ef1d196e9..d2d9f429b7 100644
--- a/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java
+++ b/src/main/java/gregtech/api/metatileentity/BaseMetaPipeEntity.java
@@ -32,12 +32,14 @@ import gregtech.api.enums.Textures;
import gregtech.api.graphs.Lock;
import gregtech.api.graphs.Node;
import gregtech.api.graphs.paths.NodePath;
+import gregtech.api.interfaces.ITemporaryTE;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IConnectable;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IDebugableTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
import gregtech.api.interfaces.tileentity.IPipeRenderedTileEntity;
+import gregtech.api.net.GTPacketCreateTE;
import gregtech.api.net.GTPacketTileEntity;
import gregtech.api.objects.GTItemStack;
import gregtech.api.util.CoverBehaviorBase;
@@ -294,30 +296,56 @@ public class BaseMetaPipeEntity extends CommonMetaTileEntity
private void sendClientData() {
if (mSendClientData) {
- NW.sendPacketToAllPlayersInRange(
- worldObj,
- new GTPacketTileEntity(
+ if (mMetaTileEntity instanceof ITemporaryTE) {
+ NW.sendPacketToAllPlayersInRange(
+ worldObj,
+ new GTPacketCreateTE(
+ xCoord,
+ (short) yCoord,
+ zCoord,
+ mID,
+ getCoverInfoAtSide(ForgeDirection.DOWN).getCoverID(),
+ getCoverInfoAtSide(ForgeDirection.UP).getCoverID(),
+ getCoverInfoAtSide(ForgeDirection.NORTH).getCoverID(),
+ getCoverInfoAtSide(ForgeDirection.SOUTH).getCoverID(),
+ getCoverInfoAtSide(ForgeDirection.WEST).getCoverID(),
+ getCoverInfoAtSide(ForgeDirection.EAST).getCoverID(),
+ oTextureData = mConnections,
+ oUpdateData = hasValidMetaTileEntity() ? mMetaTileEntity.getUpdateData() : 0,
+ oRedstoneData = (byte) (((mSidedRedstone[0] > 0) ? 1 : 0) | ((mSidedRedstone[1] > 0) ? 2 : 0)
+ | ((mSidedRedstone[2] > 0) ? 4 : 0)
+ | ((mSidedRedstone[3] > 0) ? 8 : 0)
+ | ((mSidedRedstone[4] > 0) ? 16 : 0)
+ | ((mSidedRedstone[5] > 0) ? 32 : 0)),
+ oColor = mColor),
xCoord,
- (short) yCoord,
- zCoord,
- mID,
- getCoverInfoAtSide(ForgeDirection.DOWN).getCoverID(),
- getCoverInfoAtSide(ForgeDirection.UP).getCoverID(),
- getCoverInfoAtSide(ForgeDirection.NORTH).getCoverID(),
- getCoverInfoAtSide(ForgeDirection.SOUTH).getCoverID(),
- getCoverInfoAtSide(ForgeDirection.WEST).getCoverID(),
- getCoverInfoAtSide(ForgeDirection.EAST).getCoverID(),
- oTextureData = mConnections,
- oUpdateData = hasValidMetaTileEntity() ? mMetaTileEntity.getUpdateData() : 0,
- oRedstoneData = (byte) (((mSidedRedstone[0] > 0) ? 1 : 0) | ((mSidedRedstone[1] > 0) ? 2 : 0)
- | ((mSidedRedstone[2] > 0) ? 4 : 0)
- | ((mSidedRedstone[3] > 0) ? 8 : 0)
- | ((mSidedRedstone[4] > 0) ? 16 : 0)
- | ((mSidedRedstone[5] > 0) ? 32 : 0)),
- oColor = mColor),
- xCoord,
- zCoord);
- mSendClientData = false;
+ zCoord);
+ } else {
+ NW.sendPacketToAllPlayersInRange(
+ worldObj,
+ new GTPacketTileEntity(
+ xCoord,
+ (short) yCoord,
+ zCoord,
+ mID,
+ getCoverInfoAtSide(ForgeDirection.DOWN).getCoverID(),
+ getCoverInfoAtSide(ForgeDirection.UP).getCoverID(),
+ getCoverInfoAtSide(ForgeDirection.NORTH).getCoverID(),
+ getCoverInfoAtSide(ForgeDirection.SOUTH).getCoverID(),
+ getCoverInfoAtSide(ForgeDirection.WEST).getCoverID(),
+ getCoverInfoAtSide(ForgeDirection.EAST).getCoverID(),
+ oTextureData = mConnections,
+ oUpdateData = hasValidMetaTileEntity() ? mMetaTileEntity.getUpdateData() : 0,
+ oRedstoneData = (byte) (((mSidedRedstone[0] > 0) ? 1 : 0) | ((mSidedRedstone[1] > 0) ? 2 : 0)
+ | ((mSidedRedstone[2] > 0) ? 4 : 0)
+ | ((mSidedRedstone[3] > 0) ? 8 : 0)
+ | ((mSidedRedstone[4] > 0) ? 16 : 0)
+ | ((mSidedRedstone[5] > 0) ? 32 : 0)),
+ oColor = mColor),
+ xCoord,
+ zCoord);
+ mSendClientData = false;
+ }
}
sendCoverDataIfNeeded();
}
diff --git a/src/main/java/gregtech/api/metatileentity/implementations/MTEFrame.java b/src/main/java/gregtech/api/metatileentity/implementations/MTEFrame.java
index ec000b6e9c..483d8573b8 100644
--- a/src/main/java/gregtech/api/metatileentity/implementations/MTEFrame.java
+++ b/src/main/java/gregtech/api/metatileentity/implementations/MTEFrame.java
@@ -7,6 +7,7 @@ import net.minecraftforge.common.util.ForgeDirection;
import gregtech.api.enums.Dyes;
import gregtech.api.enums.Materials;
import gregtech.api.enums.OrePrefixes;
+import gregtech.api.interfaces.ITemporaryTE;
import gregtech.api.interfaces.ITexture;
import gregtech.api.interfaces.metatileentity.IMetaTileEntity;
import gregtech.api.interfaces.tileentity.IGregTechTileEntity;
@@ -14,7 +15,7 @@ import gregtech.api.metatileentity.MetaPipeEntity;
import gregtech.api.render.TextureFactory;
import gregtech.api.util.GTLanguageManager;
-public class MTEFrame extends MetaPipeEntity {
+public class MTEFrame extends MetaPipeEntity implements ITemporaryTE {
private static final String localizedDescFormat = GTLanguageManager
.addStringLocalization("gt.blockmachines.gt_frame.desc.format", "Just something you can put covers on.");