From 3fbdccbd4020dc0d2a1889c54e8a8ec4cbcc0ebf Mon Sep 17 00:00:00 2001 From: Alastair Date: Thu, 7 Apr 2016 14:35:48 +0100 Subject: [PATCH] Fixed bug for standing on portals --- .../advancedportals/listeners/Listeners.java | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/com/sekwah/advancedportals/listeners/Listeners.java b/src/com/sekwah/advancedportals/listeners/Listeners.java index e6ff8685..3e01f7ef 100644 --- a/src/com/sekwah/advancedportals/listeners/Listeners.java +++ b/src/com/sekwah/advancedportals/listeners/Listeners.java @@ -1,14 +1,19 @@ package com.sekwah.advancedportals.listeners; import com.avaje.ebeaninternal.server.transaction.RemoteTransactionEvent; +import com.google.common.base.Optional; import com.sekwah.advancedportals.AdvancedPortalsPlugin; import com.sekwah.advancedportals.ConfigAccessor; import com.sekwah.advancedportals.events.WarpEvent; import com.sekwah.advancedportals.portals.AdvancedPortal; import com.sekwah.advancedportals.portals.Portal; import com.sun.org.apache.regexp.internal.RE; +import net.minecraft.server.v1_9_R1.DataWatcherObject; +import net.minecraft.server.v1_9_R1.EntityItem; +import net.minecraft.server.v1_9_R1.ItemStack; import org.bukkit.*; import org.bukkit.block.Block; +import org.bukkit.craftbukkit.v1_9_R1.CraftWorld; import org.bukkit.entity.Entity; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; @@ -24,6 +29,7 @@ import org.bukkit.event.player.PlayerTeleportEvent; import org.bukkit.event.world.ChunkUnloadEvent; import org.bukkit.metadata.FixedMetadataValue; +import java.lang.reflect.Field; import java.util.HashMap; public class Listeners implements Listener { @@ -262,6 +268,16 @@ public class Listeners implements Listener { } } + EntityItem item = new EntityItem(((CraftWorld)loc.getWorld()).getHandle()); +try { + Field f = item.getClass().getDeclaredField("c"); + f.setAccessible(true); + DataWatcherObject> ITEM_DATA = (DataWatcherObject>) f.get(item); +} catch (NoSuchFieldException e) { + e.printStackTrace(); +} catch (IllegalAccessException e) { + e.printStackTrace(); +} }