PaperMC/Spigot-Server-Patches/0165-Improve-the-Saddle-API-for-Horses.patch

66 lines
2.9 KiB
Diff
Raw Normal View History

From 415781dddbe5dae2d4483881168112c89c3fa53e Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sat, 10 Dec 2016 16:24:06 -0500
Subject: [PATCH] Improve the Saddle API for Horses
Not all horses with Saddles have armor. This lets us break up the horses with saddles
and access their saddle state separately from an interface shared with Armor.
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftAbstractHorse.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftAbstractHorse.java
index 14d041680..e56bef334 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftAbstractHorse.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftAbstractHorse.java
@@ -6,6 +6,7 @@ import net.minecraft.server.EntityHorseAbstract;
import org.apache.commons.lang.Validate;
import org.bukkit.craftbukkit.CraftServer;
2018-02-08 11:07:27 +01:00
import org.bukkit.craftbukkit.inventory.CraftInventoryAbstractHorse;
+import org.bukkit.craftbukkit.inventory.CraftSaddledInventory;
import org.bukkit.entity.AbstractHorse;
import org.bukkit.entity.AnimalTamer;
import org.bukkit.entity.Horse;
@@ -92,6 +93,6 @@ public abstract class CraftAbstractHorse extends CraftAnimals implements Abstrac
@Override
2018-02-08 11:07:27 +01:00
public AbstractHorseInventory getInventory() {
- return new CraftInventoryAbstractHorse(getHandle().inventoryChest);
+ return new CraftSaddledInventory(getHandle().inventoryChest);
}
}
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryHorse.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryHorse.java
index 173818e68..2f6852404 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryHorse.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftInventoryHorse.java
2018-02-08 11:07:27 +01:00
@@ -4,7 +4,7 @@ import net.minecraft.server.IInventory;
import org.bukkit.inventory.HorseInventory;
import org.bukkit.inventory.ItemStack;
2018-02-08 11:07:27 +01:00
-public class CraftInventoryHorse extends CraftInventoryAbstractHorse implements HorseInventory {
+public class CraftInventoryHorse extends CraftSaddledInventory implements HorseInventory {
public CraftInventoryHorse(IInventory inventory) {
super(inventory);
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftSaddledInventory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftSaddledInventory.java
new file mode 100644
index 000000000..99cfbaf90
--- /dev/null
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftSaddledInventory.java
2018-02-08 11:07:27 +01:00
@@ -0,0 +1,15 @@
+package org.bukkit.craftbukkit.inventory;
+
+import net.minecraft.server.IInventory;
2018-02-08 11:07:27 +01:00
+
+import org.bukkit.inventory.AbstractHorseInventory;
+import org.bukkit.inventory.ItemStack;
+import org.bukkit.inventory.SaddledHorseInventory;
+
2018-02-08 11:07:27 +01:00
+public class CraftSaddledInventory extends CraftInventoryAbstractHorse implements SaddledHorseInventory {
+
+ public CraftSaddledInventory(IInventory inventory) {
+ super(inventory);
+ }
+
+}
--
2.21.0