From 33b90334b44473234fe1a3b66edd51eb9cbd87d4 Mon Sep 17 00:00:00 2001 From: Adubbz Date: Tue, 11 Feb 2014 06:17:07 +1100 Subject: [PATCH] Fixed server crash on startup. Fixes #176 #183 #186 --- .../java/biomesoplenty/BiomesOPlenty.java | 2 +- .../common/helpers/CreativeTabsBOP.java | 1 - .../common/network/PacketPipeline.java | 53 ++++++++++--------- 3 files changed, 30 insertions(+), 26 deletions(-) diff --git a/src/main/java/biomesoplenty/BiomesOPlenty.java b/src/main/java/biomesoplenty/BiomesOPlenty.java index c3bd196bd..265750b8b 100644 --- a/src/main/java/biomesoplenty/BiomesOPlenty.java +++ b/src/main/java/biomesoplenty/BiomesOPlenty.java @@ -88,7 +88,7 @@ public class BiomesOPlenty @EventHandler public void load(FMLInitializationEvent event) { - packetPipeline.initalize(); + packetPipeline.initialize(); TreecapitatorIntegration.init(); diff --git a/src/main/java/biomesoplenty/common/helpers/CreativeTabsBOP.java b/src/main/java/biomesoplenty/common/helpers/CreativeTabsBOP.java index aa11a1c8d..01ff9cedb 100644 --- a/src/main/java/biomesoplenty/common/helpers/CreativeTabsBOP.java +++ b/src/main/java/biomesoplenty/common/helpers/CreativeTabsBOP.java @@ -13,7 +13,6 @@ public class CreativeTabsBOP extends CreativeTabs } @Override - //TODO: public ItemStack getIconItemStack() public ItemStack getIconItemStack() { return new ItemStack(BOPItemHelper.get("food"), 1, 7); diff --git a/src/main/java/biomesoplenty/common/network/PacketPipeline.java b/src/main/java/biomesoplenty/common/network/PacketPipeline.java index aaa05de84..a9464fd6a 100644 --- a/src/main/java/biomesoplenty/common/network/PacketPipeline.java +++ b/src/main/java/biomesoplenty/common/network/PacketPipeline.java @@ -1,25 +1,29 @@ package biomesoplenty.common.network; -import java.util.*; - import io.netty.buffer.ByteBuf; import io.netty.buffer.Unpooled; import io.netty.channel.ChannelHandler; import io.netty.channel.ChannelHandlerContext; import io.netty.handler.codec.MessageToMessageCodec; +import java.util.Collections; +import java.util.Comparator; +import java.util.EnumMap; +import java.util.LinkedList; +import java.util.List; + import net.minecraft.client.Minecraft; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.network.INetHandler; import net.minecraft.network.NetHandlerPlayServer; - import cpw.mods.fml.common.FMLCommonHandler; 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.relauncher.SideOnly; /** * Packet pipeline class. Directs all registered packet data to be handled by the packets themselves. @@ -30,8 +34,8 @@ import cpw.mods.fml.relauncher.Side; public class PacketPipeline extends MessageToMessageCodec { private EnumMap channels; - private LinkedList> packets = new LinkedList>(); - private boolean isPostInitialised = false; + private LinkedList> packets = new LinkedList>(); + private boolean isPostInitialized = false; /** * Register your packet with the pipeline. Discriminators are automatically set. @@ -42,8 +46,7 @@ public class PacketPipeline extends MessageToMessageCodec clazz) { - if (this.packets.size() > 256) - { + if (this.packets.size() > 256) { // You should log here!! return false; } @@ -54,7 +57,7 @@ public class PacketPipeline extends MessageToMessageCodec clazz = msg.getClass(); - if (!this.packets.contains(msg.getClass())) - { + if (!this.packets.contains(msg.getClass())) { throw new NullPointerException("No Packet Registered for: " + msg.getClass().getCanonicalName()); } @@ -98,10 +100,9 @@ public class PacketPipeline extends MessageToMessageCodec>() - { + this.isPostInitialized = true; + Collections.sort(this.packets, new Comparator>() { + @Override - public int compare(Class clazz1, Class clazz2) - { + public int compare(Class clazz1, Class clazz2) { int com = String.CASE_INSENSITIVE_ORDER.compare(clazz1.getCanonicalName(), clazz2.getCanonicalName()); if (com == 0) { com = clazz1.getCanonicalName().compareTo(clazz2.getCanonicalName()); @@ -148,6 +148,12 @@ public class PacketPipeline extends MessageToMessageCodec @@ -155,8 +161,7 @@ public class PacketPipeline extends MessageToMessageCodec