From bd3652648f2dcf186f032d2a85cd5c70dfcf798e Mon Sep 17 00:00:00 2001 From: bartimaeusnek <33183715+bartimaeusnek@users.noreply.github.com> Date: Fri, 1 Jun 2018 14:35:57 +0200 Subject: [PATCH] Update TileInfusionClaw.java fixed crashes --- .../common/blocks/tiles/TileInfusionClaw.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/main/java/makeo/gadomancy/common/blocks/tiles/TileInfusionClaw.java b/src/main/java/makeo/gadomancy/common/blocks/tiles/TileInfusionClaw.java index 5760cd4..e80aaf5 100644 --- a/src/main/java/makeo/gadomancy/common/blocks/tiles/TileInfusionClaw.java +++ b/src/main/java/makeo/gadomancy/common/blocks/tiles/TileInfusionClaw.java @@ -229,6 +229,17 @@ public class TileInfusionClaw extends SynchronizedTileEntity implements IInvento ClickBehavior behavior = getClickBehavior(world, x, y, z); if(behavior != null) { + + if (world == null){ + try { + world = getWorldObj(); + } + catch(NullPointerException e){ + makeo.gadomancy.common.log.error("fatal error, world == null! at InfusionClaw"); + return; + } + } + AdvancedFakePlayer fakePlayer = new AdvancedFakePlayer((WorldServer) world, FAKE_UUID); loadResearch(fakePlayer); @@ -246,6 +257,11 @@ public class TileInfusionClaw extends SynchronizedTileEntity implements IInvento im.setWorld((WorldServer) world); } + if(fakePlayer == null){ + makeo.gadomancy.common.log.warn("Infusion Claw was build inside of a protected area! You need to allow FakePlayers here!"); + return; + } + fakePlayer.setHeldItem(wandStack); this.im.activateBlockOrUseItem(fakePlayer, world, wandStack, x, y, z, ForgeDirection.UP.ordinal(), 0.5F, 0.5F, 0.5F); addInstability(behavior);