From 4d0f276e550658d6fc12b384d299c1a5bf247e51 Mon Sep 17 00:00:00 2001 From: Ben Spiers Date: Fri, 27 Jun 2014 03:25:47 +0100 Subject: [PATCH] Fix a server crash relating to a client-side only class initialization (credit to @kosakriszi). Closes #1442. --- src/main/java/mekanism/client/ClientProxy.java | 7 +++++++ src/main/java/mekanism/common/CommonProxy.java | 7 +++++++ src/main/java/mekanism/common/PacketHandler.java | 8 +------- 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/src/main/java/mekanism/client/ClientProxy.java b/src/main/java/mekanism/client/ClientProxy.java index 7f8098ea9..1c81e1a3f 100644 --- a/src/main/java/mekanism/client/ClientProxy.java +++ b/src/main/java/mekanism/client/ClientProxy.java @@ -144,6 +144,7 @@ import cpw.mods.fml.client.FMLClientHandler; import cpw.mods.fml.client.registry.ClientRegistry; import cpw.mods.fml.client.registry.RenderingRegistry; import cpw.mods.fml.common.FMLCommonHandler; +import cpw.mods.fml.common.network.simpleimpl.MessageContext; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; @@ -554,4 +555,10 @@ public class ClientProxy extends CommonProxy MekanismClient.voiceClient.start(); } } + + @Override + public EntityPlayer getPlayer(MessageContext context) + { + return Minecraft.getMinecraft().thePlayer; + } } diff --git a/src/main/java/mekanism/common/CommonProxy.java b/src/main/java/mekanism/common/CommonProxy.java index 21203a45c..fbb172803 100644 --- a/src/main/java/mekanism/common/CommonProxy.java +++ b/src/main/java/mekanism/common/CommonProxy.java @@ -84,6 +84,7 @@ import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; import net.minecraftforge.common.config.Configuration; import cpw.mods.fml.common.FMLCommonHandler; +import cpw.mods.fml.common.network.simpleimpl.MessageContext; import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.relauncher.FMLInjectionData; @@ -459,4 +460,10 @@ public class CommonProxy Mekanism.logger.info("Received config from server."); } + + public EntityPlayer getPlayer(MessageContext context) + { + + return context.getServerHandler().playerEntity; + } } diff --git a/src/main/java/mekanism/common/PacketHandler.java b/src/main/java/mekanism/common/PacketHandler.java index f10c1baf0..996b80e12 100644 --- a/src/main/java/mekanism/common/PacketHandler.java +++ b/src/main/java/mekanism/common/PacketHandler.java @@ -189,13 +189,7 @@ public class PacketHandler public static EntityPlayer getPlayer(MessageContext context) { - if(context.side.isClient()) - { - return Minecraft.getMinecraft().thePlayer; - } - else { - return context.getServerHandler().playerEntity; - } + return Mekanism.proxy.getPlayer(context); } /**