summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfeildmaster <admin@feildmaster.com>2012-03-25 20:58:12 -0500
committerWarren Loo <evilseph@gmail.com>2012-03-26 16:36:31 -0400
commitc16bf07e85feb5e7bcb3e4a98048de36fe7859f2 (patch)
tree7a3c9943a2f2c07a37faed7ec73428608a6b5722
parentbdccfd29ec0c6e59e321e474c0b46c790669d343 (diff)
downloadcraftbukkit-c16bf07e85feb5e7bcb3e4a98048de36fe7859f2.tar
craftbukkit-c16bf07e85feb5e7bcb3e4a98048de36fe7859f2.tar.gz
craftbukkit-c16bf07e85feb5e7bcb3e4a98048de36fe7859f2.tar.lz
craftbukkit-c16bf07e85feb5e7bcb3e4a98048de36fe7859f2.tar.xz
craftbukkit-c16bf07e85feb5e7bcb3e4a98048de36fe7859f2.zip
[Bleeding] Allow CraftItem to be backed by non-EntityItems. Fixes BUKKIT-1351
-rw-r--r--src/main/java/net/minecraft/server/EntityArrow.java9
-rw-r--r--src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java14
2 files changed, 11 insertions, 12 deletions
diff --git a/src/main/java/net/minecraft/server/EntityArrow.java b/src/main/java/net/minecraft/server/EntityArrow.java
index a8759c39..2ae8a007 100644
--- a/src/main/java/net/minecraft/server/EntityArrow.java
+++ b/src/main/java/net/minecraft/server/EntityArrow.java
@@ -3,7 +3,6 @@ package net.minecraft.server;
import java.util.List;
// CraftBukkit start
-import org.bukkit.Bukkit;
import org.bukkit.entity.Projectile;
import org.bukkit.event.entity.EntityCombustByEntityEvent;
import org.bukkit.event.entity.ProjectileHitEvent;
@@ -215,7 +214,7 @@ public class EntityArrow extends Entity {
if (movingobjectposition.entity.damageEntity(damagesource, l)) {
if (this.isBurning() && (!(movingobjectposition.entity instanceof EntityPlayer) || this.world.pvpMode)) { // CraftBukkit - abide by pvp setting if destination is a player.
EntityCombustByEntityEvent combustEvent = new EntityCombustByEntityEvent(this.getBukkitEntity(), entity.getBukkitEntity(), 5);
- Bukkit.getPluginManager().callEvent(combustEvent);
+ org.bukkit.Bukkit.getPluginManager().callEvent(combustEvent);
if (!combustEvent.isCancelled()) {
movingobjectposition.entity.setOnFire(combustEvent.getDuration());
@@ -345,11 +344,11 @@ public class EntityArrow extends Entity {
public void a_(EntityHuman entityhuman) {
if (!this.world.isStatic) {
// CraftBukkit start
- ItemStack itemstack = new ItemStack(Item.ARROW, 1);
+ ItemStack itemstack = new ItemStack(Item.ARROW);
if (this.inGround && this.fromPlayer && this.shake <= 0 && entityhuman.inventory.canHold(itemstack) > 0) {
- net.minecraft.server.EntityItem item = new net.minecraft.server.EntityItem(this.world, this.locX, this.locY, this.locZ, itemstack);
+ EntityItem item = new EntityItem(this.world, this.locX, this.locY, this.locZ, itemstack);
- PlayerPickupItemEvent event = new PlayerPickupItemEvent((org.bukkit.entity.Player) entityhuman.getBukkitEntity(), new org.bukkit.craftbukkit.entity.CraftItem(this.world.getServer(), item), 0);
+ PlayerPickupItemEvent event = new PlayerPickupItemEvent((org.bukkit.entity.Player) entityhuman.getBukkitEntity(), new org.bukkit.craftbukkit.entity.CraftItem(this.world.getServer(), this, item), 0);
this.world.getServer().getPluginManager().callEvent(event);
if (event.isCancelled()) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java
index 36143dba..1612cc4b 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftItem.java
@@ -1,5 +1,6 @@
package org.bukkit.craftbukkit.entity;
+import net.minecraft.server.Entity;
import net.minecraft.server.EntityItem;
import org.bukkit.entity.EntityType;
@@ -11,9 +12,13 @@ import org.bukkit.craftbukkit.CraftServer;
public class CraftItem extends CraftEntity implements Item {
private EntityItem item;
- public CraftItem(CraftServer server, EntityItem entity) {
+ public CraftItem(CraftServer server, Entity entity, EntityItem item) {
super(server, entity);
- this.item = entity;
+ this.item = item;
+ }
+
+ public CraftItem(CraftServer server, EntityItem entity) {
+ this(server, entity, entity);
}
public ItemStack getItemStack() {
@@ -33,11 +38,6 @@ public class CraftItem extends CraftEntity implements Item {
}
@Override
- public EntityItem getHandle() {
- return (EntityItem) entity;
- }
-
- @Override
public String toString() {
return "CraftItem";
}