diff options
| author | Detrav <witalyezep@gmail.com> | 2016-04-18 12:59:46 +0300 |
|---|---|---|
| committer | Detrav <witalyezep@gmail.com> | 2016-04-18 12:59:46 +0300 |
| commit | 608b62b171fe314e9a75001a06c44383054ba376 (patch) | |
| tree | 82907ee1b4cb2d6608505f4b73f76792462819cd /src/main/java | |
| parent | 409e2e2a70a99120b0db8a566869a7d52117eb61 (diff) | |
| download | GT5-Unofficial-608b62b171fe314e9a75001a06c44383054ba376.tar.gz GT5-Unofficial-608b62b171fe314e9a75001a06c44383054ba376.tar.bz2 GT5-Unofficial-608b62b171fe314e9a75001a06c44383054ba376.zip | |
Refactor, New packets
New network packet, some refactor, now client know about current
"Detrav" mode ^_^
Diffstat (limited to 'src/main/java')
| -rw-r--r-- | src/main/java/com/detrav/DetravScannerMod.java | 7 | ||||
| -rw-r--r-- | src/main/java/com/detrav/events/DetravBlockBreakEventHandler.java (renamed from src/main/java/com/detrav/events/BlockBreakEventHandler.java) | 9 | ||||
| -rw-r--r-- | src/main/java/com/detrav/events/DetravBlockSideRenderEventHandler.java | 31 | ||||
| -rw-r--r-- | src/main/java/com/detrav/events/DetravLoginEventHandler.java | 39 | ||||
| -rw-r--r-- | src/main/java/com/detrav/net/DetravModePacket03.java | 59 | ||||
| -rw-r--r-- | src/main/java/com/detrav/net/DetravModeSwitchPacket02.java | 3 | ||||
| -rw-r--r-- | src/main/java/com/detrav/net/DetravNetwork.java | 8 |
7 files changed, 145 insertions, 11 deletions
diff --git a/src/main/java/com/detrav/DetravScannerMod.java b/src/main/java/com/detrav/DetravScannerMod.java index c4fea61b66..44c5372180 100644 --- a/src/main/java/com/detrav/DetravScannerMod.java +++ b/src/main/java/com/detrav/DetravScannerMod.java @@ -1,7 +1,8 @@ package com.detrav; import com.detrav.commands.DetravBiomeScannerCommand; -import com.detrav.events.BlockBreakEventHandler; +import com.detrav.events.DetravBlockBreakEventHandler; +import com.detrav.events.DetravLoginEventHandler; import com.detrav.proxies.CommonProxy; import com.detrav.utils.DetravCreativeTab; import com.detrav.net.DetravNetwork; @@ -16,7 +17,6 @@ import cpw.mods.fml.common.network.NetworkRegistry; import gregtech.api.GregTech_API; import net.minecraft.creativetab.CreativeTabs; import net.minecraftforge.common.config.Configuration; -import net.minecraft.client.settings.KeyBinding; @Mod(modid = DetravScannerMod.MODID, version = DetravScannerMod.VERSION,dependencies = "required-after:IC2;required-after:gregtech") public class DetravScannerMod @@ -68,7 +68,8 @@ public class DetravScannerMod @EventHandler public void onPostLoad(FMLPostInitializationEvent aEvent) { proxy.onPostLoad(); - BlockBreakEventHandler.register(); + DetravBlockBreakEventHandler.register(); + DetravLoginEventHandler.register(); } @EventHandler diff --git a/src/main/java/com/detrav/events/BlockBreakEventHandler.java b/src/main/java/com/detrav/events/DetravBlockBreakEventHandler.java index db9d37ece5..eea7c759e7 100644 --- a/src/main/java/com/detrav/events/BlockBreakEventHandler.java +++ b/src/main/java/com/detrav/events/DetravBlockBreakEventHandler.java @@ -14,22 +14,17 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.network.Packet; import net.minecraft.network.play.server.S23PacketBlockChange; import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.ChatComponentText; -import net.minecraft.util.MathHelper; import net.minecraft.util.MovingObjectPosition; import net.minecraft.util.Vec3; import net.minecraft.world.World; import net.minecraft.world.WorldSettings; -import net.minecraftforge.common.ForgeHooks; import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.event.world.BlockEvent; -import java.lang.reflect.Method; - /** * Created by wital_000 on 13.04.2016. */ -public class BlockBreakEventHandler { +public class DetravBlockBreakEventHandler { @SubscribeEvent public void onBreakBlock(BlockEvent.BreakEvent ev) { if (ev.isCanceled()) @@ -238,7 +233,7 @@ public class BlockBreakEventHandler { public static void register() { if (!inited) { inited = true; - BlockBreakEventHandler handler = new BlockBreakEventHandler(); + DetravBlockBreakEventHandler handler = new DetravBlockBreakEventHandler(); MinecraftForge.EVENT_BUS.register(handler); FMLCommonHandler.instance().bus().register(handler); } diff --git a/src/main/java/com/detrav/events/DetravBlockSideRenderEventHandler.java b/src/main/java/com/detrav/events/DetravBlockSideRenderEventHandler.java new file mode 100644 index 0000000000..bf08bfb1bf --- /dev/null +++ b/src/main/java/com/detrav/events/DetravBlockSideRenderEventHandler.java @@ -0,0 +1,31 @@ +package com.detrav.events; + +import cpw.mods.fml.common.FMLCommonHandler; +import cpw.mods.fml.common.eventhandler.SubscribeEvent; +import net.minecraftforge.common.MinecraftForge; +import net.minecraftforge.client.event.RenderWorldLastEvent; + +/** + * Created by wital_000 on 18.04.2016. + */ +public class DetravBlockSideRenderEventHandler { + + public static long modeBlockBreak = 0L; + + @SubscribeEvent + public void onRender(RenderWorldLastEvent ev) { + //need to draw large borders + } + + + static boolean inited = false; + + public static void register() { + if (!inited) { + inited = true; + DetravBlockSideRenderEventHandler handler = new DetravBlockSideRenderEventHandler(); + MinecraftForge.EVENT_BUS.register(handler); + FMLCommonHandler.instance().bus().register(handler); + } + } +} diff --git a/src/main/java/com/detrav/events/DetravLoginEventHandler.java b/src/main/java/com/detrav/events/DetravLoginEventHandler.java new file mode 100644 index 0000000000..8d5853fa89 --- /dev/null +++ b/src/main/java/com/detrav/events/DetravLoginEventHandler.java @@ -0,0 +1,39 @@ +package com.detrav.events; + +import com.detrav.net.DetravModePacket03; +import com.detrav.net.DetravNetwork; +import cpw.mods.fml.common.FMLCommonHandler; +import cpw.mods.fml.common.eventhandler.SubscribeEvent; +import net.minecraft.entity.player.EntityPlayerMP; +import net.minecraftforge.common.MinecraftForge; +import net.minecraftforge.event.entity.EntityJoinWorldEvent; + +/** + * Created by wital_000 on 18.04.2016. + */ +public class DetravLoginEventHandler { + @SubscribeEvent + public void onEntityJoinWorld(EntityJoinWorldEvent event) + { + if(event.isCanceled()) return; + if(!event.world.isRemote) + if(event.entity instanceof EntityPlayerMP) + { + DetravNetwork.INSTANCE.sendToPlayer(new DetravModePacket03((EntityPlayerMP)event.entity),(EntityPlayerMP)event.entity); + } + //if(Minecraft.getMinecraft().thePlayer!=null) + //Minecraft.getMinecraft().thePlayer.addChatMessage(new ChatComponentText(""+(event.entity instanceof EntityPlayerMP)+" | " + event.world.isRemote)); + } + + + static boolean inited = false; + + public static void register() { + if (!inited) { + inited = true; + DetravLoginEventHandler handler = new DetravLoginEventHandler(); + MinecraftForge.EVENT_BUS.register(handler); + FMLCommonHandler.instance().bus().register(handler); + } + } +} diff --git a/src/main/java/com/detrav/net/DetravModePacket03.java b/src/main/java/com/detrav/net/DetravModePacket03.java new file mode 100644 index 0000000000..50524a538b --- /dev/null +++ b/src/main/java/com/detrav/net/DetravModePacket03.java @@ -0,0 +1,59 @@ +package com.detrav.net; + +import com.detrav.DetravScannerMod; +import com.detrav.events.DetravBlockSideRenderEventHandler; +import com.google.common.io.ByteArrayDataInput; +import com.google.common.io.ByteArrayDataOutput; +import com.google.common.io.ByteStreams; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.util.ChatComponentText; + +/** + * Created by wital_000 on 18.04.2016. + */ +public class DetravModePacket03 extends DetravPacket { + + EntityPlayer player; + long mode = 0L; + + public DetravModePacket03() + { + player =null; + } + + public DetravModePacket03(EntityPlayer aPlayer) + { + player = aPlayer; + } + + public DetravModePacket03(long aMode) + { + mode = aMode; + } + + + @Override + public int getPacketID() { + return 3; + } + + @Override + public byte[] encode() { + ByteArrayDataOutput tOut = ByteStreams.newDataOutput(1); + if (player != null) + tOut.writeLong(player.getEntityData().getLong("detrav.minning.mode")); + else tOut.writeLong(0L); + return tOut.toByteArray(); + } + + @Override + public Object decode(ByteArrayDataInput aData) { + long aMode = aData.readLong(); + return new DetravModePacket03(aMode); + } + + @Override + public void process() { + DetravBlockSideRenderEventHandler.modeBlockBreak = mode; + } +} diff --git a/src/main/java/com/detrav/net/DetravModeSwitchPacket02.java b/src/main/java/com/detrav/net/DetravModeSwitchPacket02.java index 48295ef018..0296f6bdab 100644 --- a/src/main/java/com/detrav/net/DetravModeSwitchPacket02.java +++ b/src/main/java/com/detrav/net/DetravModeSwitchPacket02.java @@ -96,6 +96,9 @@ public class DetravModeSwitchPacket02 extends DetravPacket { break; } aData.setLong("detrav.minning.mode", minningMode); + + if (player instanceof EntityPlayerMP) + DetravNetwork.INSTANCE.sendToPlayer(new DetravModePacket03(player), (EntityPlayerMP) player); } } }
\ No newline at end of file diff --git a/src/main/java/com/detrav/net/DetravNetwork.java b/src/main/java/com/detrav/net/DetravNetwork.java index 6d8a8fd0f3..892c89e183 100644 --- a/src/main/java/com/detrav/net/DetravNetwork.java +++ b/src/main/java/com/detrav/net/DetravNetwork.java @@ -31,7 +31,13 @@ public class DetravNetwork extends MessageToMessageCodec<FMLProxyPacket, DetravP { INSTANCE = this; this.mChannel = NetworkRegistry.INSTANCE.newChannel("DetravScanner", new ChannelHandler[]{this, new HandlerShared()}); - this.mSubChannels = new DetravPacket[]{new DetravProPickPacket00(),new DetravPortableChargerPacket01(), new DetravModeSwitchPacket02()}; + this.mSubChannels = new DetravPacket[] + { + new DetravProPickPacket00(), + new DetravPortableChargerPacket01(), + new DetravModeSwitchPacket02(), + new DetravModePacket03() + }; } @Override |
