diff options
author | miozune <miozune@gmail.com> | 2024-09-28 20:36:46 +0900 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-09-28 11:36:46 +0000 |
commit | 64d458cb2bb4b805fc90b256018b49eda3cf2fc1 (patch) | |
tree | 20d5f834b14af766550228d1c641e8889cbb9870 /src/main/java/bartworks/common/net | |
parent | 86f1765b171f4cc6f163b8027d1330f4e5094e2d (diff) | |
download | GT5-Unofficial-64d458cb2bb4b805fc90b256018b49eda3cf2fc1.tar.gz GT5-Unofficial-64d458cb2bb4b805fc90b256018b49eda3cf2fc1.tar.bz2 GT5-Unofficial-64d458cb2bb4b805fc90b256018b49eda3cf2fc1.zip |
Refactor packets (#3295)
Co-authored-by: boubou19 <miisterunknown@gmail.com>
Diffstat (limited to 'src/main/java/bartworks/common/net')
-rw-r--r-- | src/main/java/bartworks/common/net/BWNetwork.java | 170 | ||||
-rw-r--r-- | src/main/java/bartworks/common/net/CircuitProgrammerPacket.java | 88 | ||||
-rw-r--r-- | src/main/java/bartworks/common/net/PacketBWMetaBlock.java (renamed from src/main/java/bartworks/common/net/MetaBlockPacket.java) | 18 | ||||
-rw-r--r-- | src/main/java/bartworks/common/net/PacketBioVatRenderer.java (renamed from src/main/java/bartworks/common/net/RendererPacket.java) | 18 | ||||
-rw-r--r-- | src/main/java/bartworks/common/net/PacketEIC.java (renamed from src/main/java/bartworks/common/net/EICPacket.java) | 18 | ||||
-rw-r--r-- | src/main/java/bartworks/common/net/PacketOreDictCache.java (renamed from src/main/java/bartworks/common/net/OreDictCachePacket.java) | 18 | ||||
-rw-r--r-- | src/main/java/bartworks/common/net/PacketServerJoined.java (renamed from src/main/java/bartworks/common/net/ServerJoinedPacket.java) | 16 |
7 files changed, 44 insertions, 302 deletions
diff --git a/src/main/java/bartworks/common/net/BWNetwork.java b/src/main/java/bartworks/common/net/BWNetwork.java deleted file mode 100644 index 78ab09e367..0000000000 --- a/src/main/java/bartworks/common/net/BWNetwork.java +++ /dev/null @@ -1,170 +0,0 @@ -/* - * Copyright (c) 2018-2020 bartimaeusnek Permission is hereby granted, free of charge, to any person obtaining a copy of - * this software and associated documentation files (the "Software"), to deal in the Software without restriction, - * including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following - * conditions: The above copyright notice and this permission notice shall be included in all copies or substantial - * portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, - * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. - * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER - * DEALINGS IN THE SOFTWARE. - */ - -package bartworks.common.net; - -import java.util.EnumMap; -import java.util.List; - -import javax.annotation.Nonnull; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; -import net.minecraft.world.World; -import net.minecraft.world.chunk.Chunk; - -import com.google.common.io.ByteArrayDataInput; -import com.google.common.io.ByteStreams; - -import cpw.mods.fml.common.network.FMLEmbeddedChannel; -import cpw.mods.fml.common.network.FMLOutboundHandler; -import cpw.mods.fml.common.network.NetworkRegistry; -import cpw.mods.fml.common.network.internal.FMLProxyPacket; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.server.FMLServerHandler; -import gregtech.api.enums.GTValues; -import gregtech.api.net.GTPacket; -import gregtech.api.net.GTPacketNew; -import gregtech.api.net.IGT_NetworkHandler; -import io.netty.buffer.Unpooled; -import io.netty.channel.ChannelHandler; -import io.netty.channel.ChannelHandlerContext; -import io.netty.channel.SimpleChannelInboundHandler; -import io.netty.handler.codec.MessageToMessageCodec; - -/* - * Original GT File slightly Modified - */ -@SuppressWarnings("deprecation") -@ChannelHandler.Sharable -public class BWNetwork extends MessageToMessageCodec<FMLProxyPacket, GTPacketNew> implements IGT_NetworkHandler { - - private final EnumMap<Side, FMLEmbeddedChannel> mChannel; - private final GTPacketNew[] mSubChannels; - - public BWNetwork() { - this.mChannel = NetworkRegistry.INSTANCE.newChannel("BartWorks", this, new BWNetwork.HandlerShared()); - this.mSubChannels = new GTPacketNew[] { new RendererPacket(), new CircuitProgrammerPacket(), - new MetaBlockPacket(), new OreDictCachePacket(), new ServerJoinedPacket(), new EICPacket() }; - } - - @Override - protected void encode(ChannelHandlerContext aContext, GTPacketNew aPacket, List<Object> aOutput) throws Exception { - aOutput.add( - new FMLProxyPacket( - Unpooled.buffer() - .writeByte(aPacket.getPacketID()) - .writeBytes(aPacket.encode()) - .copy(), - aContext.channel() - .attr(NetworkRegistry.FML_CHANNEL) - .get())); - } - - @Override - protected void decode(ChannelHandlerContext aContext, FMLProxyPacket aPacket, List<Object> aOutput) - throws Exception { - ByteArrayDataInput aData = ByteStreams.newDataInput( - aPacket.payload() - .array()); - aOutput.add(this.mSubChannels[aData.readByte()].decode(aData)); - } - - @Override - public void sendToPlayer(@Nonnull GTPacket aPacket, @Nonnull EntityPlayerMP aPlayer) { - this.mChannel.get(Side.SERVER) - .attr(FMLOutboundHandler.FML_MESSAGETARGET) - .set(FMLOutboundHandler.OutboundTarget.PLAYER); - this.mChannel.get(Side.SERVER) - .attr(FMLOutboundHandler.FML_MESSAGETARGETARGS) - .set(aPlayer); - this.mChannel.get(Side.SERVER) - .writeAndFlush(aPacket); - } - - public void sendToAllPlayersinWorld(@Nonnull GTPacket aPacket, World world) { - for (String name : FMLServerHandler.instance() - .getServer() - .getAllUsernames()) { - this.mChannel.get(Side.SERVER) - .attr(FMLOutboundHandler.FML_MESSAGETARGET) - .set(FMLOutboundHandler.OutboundTarget.PLAYER); - this.mChannel.get(Side.SERVER) - .attr(FMLOutboundHandler.FML_MESSAGETARGETARGS) - .set(world.getPlayerEntityByName(name)); - this.mChannel.get(Side.SERVER) - .writeAndFlush(aPacket); - } - } - - @Override - public void sendToAllAround(@Nonnull GTPacket aPacket, NetworkRegistry.TargetPoint aPosition) { - this.mChannel.get(Side.SERVER) - .attr(FMLOutboundHandler.FML_MESSAGETARGET) - .set(FMLOutboundHandler.OutboundTarget.ALLAROUNDPOINT); - this.mChannel.get(Side.SERVER) - .attr(FMLOutboundHandler.FML_MESSAGETARGETARGS) - .set(aPosition); - this.mChannel.get(Side.SERVER) - .writeAndFlush(aPacket); - } - - @Override - public void sendToAll(@Nonnull GTPacket aPacket) { - this.mChannel.get(Side.SERVER) - .attr(FMLOutboundHandler.FML_MESSAGETARGET) - .set(FMLOutboundHandler.OutboundTarget.ALL); - this.mChannel.get(Side.SERVER) - .writeAndFlush(aPacket); - } - - @Override - public void sendToServer(@Nonnull GTPacket aPacket) { - this.mChannel.get(Side.CLIENT) - .attr(FMLOutboundHandler.FML_MESSAGETARGET) - .set(FMLOutboundHandler.OutboundTarget.TOSERVER); - this.mChannel.get(Side.CLIENT) - .writeAndFlush(aPacket); - } - - @Override - public void sendPacketToAllPlayersInRange(World aWorld, @Nonnull GTPacket aPacket, int aX, int aZ) { - if (!aWorld.isRemote) { - - for (Object tObject : aWorld.playerEntities) { - if (!(tObject instanceof EntityPlayerMP tPlayer)) { - break; - } - - Chunk tChunk = aWorld.getChunkFromBlockCoords(aX, aZ); - if (tPlayer.getServerForPlayer() - .getPlayerManager() - .isPlayerWatchingChunk(tPlayer, tChunk.xPosition, tChunk.zPosition)) { - this.sendToPlayer(aPacket, tPlayer); - } - } - } - } - - @Sharable - static final class HandlerShared extends SimpleChannelInboundHandler<GTPacketNew> { - - HandlerShared() {} - - @Override - protected void channelRead0(ChannelHandlerContext ctx, GTPacketNew aPacket) throws Exception { - EntityPlayer aPlayer = GTValues.GT.getThePlayer(); - aPacket.process(aPlayer == null ? null : GTValues.GT.getThePlayer().worldObj); - } - } -} diff --git a/src/main/java/bartworks/common/net/CircuitProgrammerPacket.java b/src/main/java/bartworks/common/net/CircuitProgrammerPacket.java deleted file mode 100644 index 998d10cbfa..0000000000 --- a/src/main/java/bartworks/common/net/CircuitProgrammerPacket.java +++ /dev/null @@ -1,88 +0,0 @@ -/* - * Copyright (c) 2018-2020 bartimaeusnek Permission is hereby granted, free of charge, to any person obtaining a copy of - * this software and associated documentation files (the "Software"), to deal in the Software without restriction, - * including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following - * conditions: The above copyright notice and this permission notice shall be included in all copies or substantial - * portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, - * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. - * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER - * DEALINGS IN THE SOFTWARE. - */ - -package bartworks.common.net; - -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.world.IBlockAccess; -import net.minecraft.world.World; -import net.minecraftforge.common.DimensionManager; - -import com.google.common.io.ByteArrayDataInput; - -import bartworks.common.items.ItemCircuitProgrammer; -import gregtech.api.net.GTPacketNew; -import io.netty.buffer.ByteBuf; - -public class CircuitProgrammerPacket extends GTPacketNew { - - private int dimID, playerID; - private byte chipCfg; - private boolean hasChip; - - public CircuitProgrammerPacket() { - super(true); - } - - public CircuitProgrammerPacket(int dimID, int playerID, boolean hasChip, byte chipCfg) { - super(false); - this.dimID = dimID; - this.playerID = playerID; - this.hasChip = hasChip; - this.chipCfg = chipCfg; - } - - @Override - public byte getPacketID() { - return 1; - } - - @Override - public void encode(ByteBuf aOut) { - aOut.writeInt(this.dimID) - .writeInt(this.playerID) - .writeByte(this.hasChip ? this.chipCfg : -1); - } - - @Override - public GTPacketNew decode(ByteArrayDataInput byteArrayDataInput) { - return new CircuitProgrammerPacket( - byteArrayDataInput.readInt(), - byteArrayDataInput.readInt(), - byteArrayDataInput.readByte() > -1, - byteArrayDataInput.readByte()); - } - - @Override - public void process(IBlockAccess iBlockAccess) { - World w = DimensionManager.getWorld(this.dimID); - if (w != null && w.getEntityByID(this.playerID) instanceof EntityPlayer) { - ItemStack stack = ((EntityPlayer) w.getEntityByID(this.playerID)).getHeldItem(); - if (stack != null && stack.stackSize > 0) { - Item item = stack.getItem(); - if (item instanceof ItemCircuitProgrammer) { - NBTTagCompound nbt = stack.getTagCompound(); - nbt.setBoolean("HasChip", this.hasChip); - if (this.hasChip) nbt.setByte("ChipConfig", this.chipCfg); - stack.setTagCompound(nbt); - ((EntityPlayer) w.getEntityByID(this.playerID)).inventory.setInventorySlotContents( - ((EntityPlayer) w.getEntityByID(this.playerID)).inventory.currentItem, - stack); - } - } - } - } -} diff --git a/src/main/java/bartworks/common/net/MetaBlockPacket.java b/src/main/java/bartworks/common/net/PacketBWMetaBlock.java index ee8ab8231a..15af82903d 100644 --- a/src/main/java/bartworks/common/net/MetaBlockPacket.java +++ b/src/main/java/bartworks/common/net/PacketBWMetaBlock.java @@ -24,31 +24,31 @@ import com.google.common.io.ByteArrayDataInput; import bartworks.MainMod; import bartworks.system.material.TileEntityMetaGeneratedBlock; import bartworks.util.MurmurHash3; -import gregtech.api.net.GTPacketNew; +import gregtech.api.net.GTPacket; import io.netty.buffer.ByteBuf; -public class MetaBlockPacket extends GTPacketNew { +public class PacketBWMetaBlock extends GTPacket { int x; short y; int z; short meta; - public MetaBlockPacket(int x, int y, int z, int meta) { - super(false); + public PacketBWMetaBlock(int x, int y, int z, int meta) { + super(); this.x = x; this.y = (short) y; this.z = z; this.meta = (short) meta; } - public MetaBlockPacket() { - super(true); + public PacketBWMetaBlock() { + super(); } @Override public byte getPacketID() { - return 2; + return 24; } @Override @@ -71,12 +71,12 @@ public class MetaBlockPacket extends GTPacketNew { } @Override - public GTPacketNew decode(ByteArrayDataInput byteArrayDataInput) { + public GTPacket decode(ByteArrayDataInput byteArrayDataInput) { this.x = byteArrayDataInput.readInt(); this.z = byteArrayDataInput.readInt(); this.y = byteArrayDataInput.readShort(); this.meta = byteArrayDataInput.readShort(); - MetaBlockPacket todecode = new MetaBlockPacket(this.x, this.y, this.z, this.meta); + PacketBWMetaBlock todecode = new PacketBWMetaBlock(this.x, this.y, this.z, this.meta); if (byteArrayDataInput.readInt() != MurmurHash3.murmurhash3_x86_32( ByteBuffer.allocate(12) .putInt(this.x) diff --git a/src/main/java/bartworks/common/net/RendererPacket.java b/src/main/java/bartworks/common/net/PacketBioVatRenderer.java index f4f03c3584..936ee6fc4f 100644 --- a/src/main/java/bartworks/common/net/RendererPacket.java +++ b/src/main/java/bartworks/common/net/PacketBioVatRenderer.java @@ -22,21 +22,21 @@ import bartworks.MainMod; import bartworks.common.tileentities.multis.MTEBioVat; import bartworks.util.BWColorUtil; import bartworks.util.Coords; -import gregtech.api.net.GTPacketNew; +import gregtech.api.net.GTPacket; import io.netty.buffer.ByteBuf; -public class RendererPacket extends GTPacketNew { +public class PacketBioVatRenderer extends GTPacket { private Coords coords; private int integer; private byte removal; - public RendererPacket() { - super(true); + public PacketBioVatRenderer() { + super(); } - public RendererPacket(Coords coords, int integer, boolean removal) { - super(false); + public PacketBioVatRenderer(Coords coords, int integer, boolean removal) { + super(); this.coords = coords; this.integer = integer; this.removal = (byte) (removal ? 1 : 0); @@ -44,7 +44,7 @@ public class RendererPacket extends GTPacketNew { @Override public byte getPacketID() { - return 0; + return 23; } @Override @@ -69,7 +69,7 @@ public class RendererPacket extends GTPacketNew { } @Override - public GTPacketNew decode(ByteArrayDataInput dataInput) { + public GTPacket decode(ByteArrayDataInput dataInput) { this.coords = new Coords(dataInput.readInt(), dataInput.readShort(), dataInput.readInt(), dataInput.readInt()); this.integer = BWColorUtil .getColorFromRGBArray(new int[] { dataInput.readByte(), dataInput.readByte(), dataInput.readByte() }); @@ -86,7 +86,7 @@ public class RendererPacket extends GTPacketNew { return null; } - return new RendererPacket(this.coords, this.integer, this.removal == 1); + return new PacketBioVatRenderer(this.coords, this.integer, this.removal == 1); } @Override diff --git a/src/main/java/bartworks/common/net/EICPacket.java b/src/main/java/bartworks/common/net/PacketEIC.java index 9d2414a0e0..813cc1a07d 100644 --- a/src/main/java/bartworks/common/net/EICPacket.java +++ b/src/main/java/bartworks/common/net/PacketEIC.java @@ -10,27 +10,27 @@ import bartworks.common.tileentities.multis.MTEElectricImplosionCompressor; import bartworks.util.Coords; import gregtech.api.interfaces.metatileentity.IMetaTileEntity; import gregtech.api.interfaces.tileentity.IGregTechTileEntity; -import gregtech.api.net.GTPacketNew; +import gregtech.api.net.GTPacket; import io.netty.buffer.ByteBuf; -public class EICPacket extends GTPacketNew { +public class PacketEIC extends GTPacket { private Coords coords; private boolean bool; - public EICPacket() { - super(true); + public PacketEIC() { + super(); } - public EICPacket(Coords coords, boolean bool) { - super(false); + public PacketEIC(Coords coords, boolean bool) { + super(); this.coords = coords; this.bool = bool; } @Override public byte getPacketID() { - return 5; + return 27; } @Override @@ -42,8 +42,8 @@ public class EICPacket extends GTPacketNew { } @Override - public GTPacketNew decode(ByteArrayDataInput aData) { - return new EICPacket(new Coords(aData.readInt(), aData.readInt(), aData.readInt()), aData.readBoolean()); + public GTPacket decode(ByteArrayDataInput aData) { + return new PacketEIC(new Coords(aData.readInt(), aData.readInt(), aData.readInt()), aData.readBoolean()); } @Override diff --git a/src/main/java/bartworks/common/net/OreDictCachePacket.java b/src/main/java/bartworks/common/net/PacketOreDictCache.java index b8cda117ac..14b58faae7 100644 --- a/src/main/java/bartworks/common/net/OreDictCachePacket.java +++ b/src/main/java/bartworks/common/net/PacketOreDictCache.java @@ -21,25 +21,25 @@ import com.google.common.io.ByteArrayDataInput; import bartworks.system.oredict.OreDictHandler; import bartworks.util.Pair; -import gregtech.api.net.GTPacketNew; +import gregtech.api.net.GTPacket; import io.netty.buffer.ByteBuf; -public class OreDictCachePacket extends GTPacketNew { +public class PacketOreDictCache extends GTPacket { private HashSet<Pair<Integer, Short>> hashSet = new HashSet<>(); - public OreDictCachePacket() { - super(true); + public PacketOreDictCache() { + super(); } - public OreDictCachePacket(HashSet<Pair<Integer, Short>> set) { - super(false); + public PacketOreDictCache(HashSet<Pair<Integer, Short>> set) { + super(); this.hashSet = set; } @Override public byte getPacketID() { - return 3; + return 25; } @Override @@ -53,12 +53,12 @@ public class OreDictCachePacket extends GTPacketNew { } @Override - public GTPacketNew decode(ByteArrayDataInput byteArrayDataInput) { + public GTPacket decode(ByteArrayDataInput byteArrayDataInput) { int size = byteArrayDataInput.readInt(); for (int i = 0; i < size; i++) { this.hashSet.add(new Pair<>(byteArrayDataInput.readInt(), byteArrayDataInput.readShort())); } - return new OreDictCachePacket(this.hashSet); + return new PacketOreDictCache(this.hashSet); } @Override diff --git a/src/main/java/bartworks/common/net/ServerJoinedPacket.java b/src/main/java/bartworks/common/net/PacketServerJoined.java index 8c6b89f28f..1c20996552 100644 --- a/src/main/java/bartworks/common/net/ServerJoinedPacket.java +++ b/src/main/java/bartworks/common/net/PacketServerJoined.java @@ -18,25 +18,25 @@ import net.minecraft.world.IBlockAccess; import com.google.common.io.ByteArrayDataInput; import bartworks.MainMod; -import gregtech.api.net.GTPacketNew; +import gregtech.api.net.GTPacket; import io.netty.buffer.ByteBuf; -public class ServerJoinedPacket extends GTPacketNew { +public class PacketServerJoined extends GTPacket { private byte config; - ServerJoinedPacket() { - super(true); + public PacketServerJoined() { + super(); } - public ServerJoinedPacket(Object obj) { - super(false); + public PacketServerJoined(Object obj) { + super(); this.config = 0; } @Override public byte getPacketID() { - return 4; + return 26; } @Override @@ -45,7 +45,7 @@ public class ServerJoinedPacket extends GTPacketNew { } @Override - public GTPacketNew decode(ByteArrayDataInput byteArrayDataInput) { + public GTPacket decode(ByteArrayDataInput byteArrayDataInput) { this.config = byteArrayDataInput.readByte(); return this; } |