diff options
author | feildmaster <admin@feildmaster.com> | 2012-12-09 00:09:48 -0600 |
---|---|---|
committer | feildmaster <admin@feildmaster.com> | 2012-12-10 19:01:50 -0600 |
commit | 430d352a5a3d1f8d83276f0af43065b49e3b9822 (patch) | |
tree | 6759e3d728c1c799a688eea7b3bffc772be4c1a1 /src/main/java/net | |
parent | 684ba31c39560bc43d475332cda2a183e0ffa63a (diff) | |
download | craftbukkit-430d352a5a3d1f8d83276f0af43065b49e3b9822.tar craftbukkit-430d352a5a3d1f8d83276f0af43065b49e3b9822.tar.gz craftbukkit-430d352a5a3d1f8d83276f0af43065b49e3b9822.tar.lz craftbukkit-430d352a5a3d1f8d83276f0af43065b49e3b9822.tar.xz craftbukkit-430d352a5a3d1f8d83276f0af43065b49e3b9822.zip |
Add EntityEquipment API. Adds BUKKIT-3103
Adds:
- Getting/Setting equipment
- getting/setting drop rates
- getting/setting ability to pick up items
-- As an added feature, players with this flag start off with a canceled PlayerPickupItemEvent
Diffstat (limited to 'src/main/java/net')
-rw-r--r-- | src/main/java/net/minecraft/server/EntityArrow.java | 1 | ||||
-rw-r--r-- | src/main/java/net/minecraft/server/EntityItem.java | 1 | ||||
-rw-r--r-- | src/main/java/net/minecraft/server/EntityLiving.java | 4 |
3 files changed, 4 insertions, 2 deletions
diff --git a/src/main/java/net/minecraft/server/EntityArrow.java b/src/main/java/net/minecraft/server/EntityArrow.java index 8b39b7ba..fdad5657 100644 --- a/src/main/java/net/minecraft/server/EntityArrow.java +++ b/src/main/java/net/minecraft/server/EntityArrow.java @@ -370,6 +370,7 @@ public class EntityArrow extends Entity implements IProjectile { 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(), this, item), 0); + event.setCancelled(!entityhuman.canPickUpLoot); this.world.getServer().getPluginManager().callEvent(event); if (event.isCancelled()) { diff --git a/src/main/java/net/minecraft/server/EntityItem.java b/src/main/java/net/minecraft/server/EntityItem.java index 93f93863..a1dca162 100644 --- a/src/main/java/net/minecraft/server/EntityItem.java +++ b/src/main/java/net/minecraft/server/EntityItem.java @@ -204,6 +204,7 @@ public class EntityItem extends Entity { if (this.pickupDelay <= 0 && canHold > 0) { this.itemStack.count = canHold; PlayerPickupItemEvent event = new PlayerPickupItemEvent((org.bukkit.entity.Player) entityhuman.getBukkitEntity(), (org.bukkit.entity.Item) this.getBukkitEntity(), remaining); + event.setCancelled(!entityhuman.canPickUpLoot); this.world.getServer().getPluginManager().callEvent(event); this.itemStack.count = canHold + remaining; diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java index c36c25b2..458e44f0 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java +++ b/src/main/java/net/minecraft/server/EntityLiving.java @@ -82,11 +82,11 @@ public abstract class EntityLiving extends Entity { private ChunkCoordinates bP = new ChunkCoordinates(0, 0, 0); private float bQ = -1.0F; private ItemStack[] equipment = new ItemStack[5]; - protected float[] dropChances = new float[5]; + public float[] dropChances = new float[5]; // CraftBukkit - protected -> public private ItemStack[] bS = new ItemStack[5]; public boolean bp = false; public int bq = 0; - protected boolean canPickUpLoot = false; + public boolean canPickUpLoot = false; // CraftBukkit - protected -> public public boolean persistent = !this.bj(); // CraftBukkit - private -> public, change value protected int bs; protected double bt; |