From 495fa5ec158be02adcdcd39f374cbf2b987f526b Mon Sep 17 00:00:00 2001 From: Vasco Lavos Date: Mon, 21 Jul 2014 15:21:47 +0100 Subject: [PATCH] Items that come out of the Elven Portal get asigned an NBT tag to prevent them from going back in. --- MODSRC/vazkii/botania/common/block/tile/TileAlfPortal.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/MODSRC/vazkii/botania/common/block/tile/TileAlfPortal.java b/MODSRC/vazkii/botania/common/block/tile/TileAlfPortal.java index 2b72e3a64..00b0dd9b1 100644 --- a/MODSRC/vazkii/botania/common/block/tile/TileAlfPortal.java +++ b/MODSRC/vazkii/botania/common/block/tile/TileAlfPortal.java @@ -59,6 +59,7 @@ public class TileAlfPortal extends TileMod { private static final String TAG_TICKS_SINCE_LAST_ITEM = "ticksSinceLastItem"; private static final String TAG_STACK_COUNT = "stackCount"; private static final String TAG_STACK = "portalStack"; + private static final String TAG_PORTAL_FLAG = "_elvenPortal"; List stacksIn = new ArrayList(); @@ -110,7 +111,7 @@ public class TileAlfPortal extends TileMod { continue; ItemStack stack = item.getEntityItem(); - if(stack != null && (!(stack.getItem() instanceof IElvenItem) || !((IElvenItem) stack.getItem()).isElvenItem(stack))) { + if(stack != null && (!(stack.getItem() instanceof IElvenItem) || !((IElvenItem) stack.getItem()).isElvenItem(stack)) && !item.getEntityData().hasKey(TAG_PORTAL_FLAG)) { item.setDead(); addItem(stack); ticksSinceLastItem = 0; @@ -201,6 +202,7 @@ public class TileAlfPortal extends TileMod { void spawnItem(ItemStack stack) { EntityItem item = new EntityItem(worldObj, xCoord + 0.5, yCoord + 1.5, zCoord + 0.5, stack); + item.getEntityData().setBoolean(TAG_PORTAL_FLAG, true); worldObj.spawnEntityInWorld(item); ticksSinceLastItem = 0; }