Implement Horse API. Adds BUKKIT-4424

API has been added to interface with Horses and to modify their inventories. Horse entities will now be recognized with the type EntityType.HORSE, and will no longer be UNKNOWN.

HorseJumpEvent, EntityDamageEvent, and EntityTameEvent are all correctly fired for horses.

This commit fixes BUKKIT-4393.
This commit is contained in:
h31ix
2013-07-10 11:58:18 -04:00
committed by mbax
parent a192775f0f
commit f9d58bf481
7 changed files with 210 additions and 48 deletions

View File

@@ -1,25 +1,28 @@
package org.bukkit.craftbukkit.inventory;
import net.minecraft.server.IInventory;
import org.bukkit.inventory.HorseInventory;
import org.bukkit.inventory.ItemStack;
public class CraftInventoryHorse extends CraftInventory {
private final IInventory resultInventory = null;
public class CraftInventoryHorse extends CraftInventory implements HorseInventory {
public CraftInventoryHorse(IInventory inventory) {
super(inventory);
}
public IInventory getResultInventory() {
return resultInventory;
public ItemStack getSaddle() {
return getItem(0);
}
public IInventory getIngredientsInventory() {
return inventory;
public ItemStack getArmor() {
return getItem(1);
}
@Override
public int getSize() {
//return getResultInventory().getSize() + getIngredientsInventory().getSize();
return getIngredientsInventory().getSize();
public void setSaddle(ItemStack stack) {
setItem(0, stack);
}
public void setArmor(ItemStack stack) {
setItem(1, stack);
}
}