mirror of
https://github.com/PaperMC/Paper.git
synced 2024-11-27 04:55:47 +01:00
c0936a71bd
Upstream has released updates that appear to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: 01aa02eb PR-858: Add LivingEntity#playHurtAnimation() 9421320f PR-884: Refinements to new ban API for improved compatibility and correctness 37a60b45 SPIGOT-6455, SPIGOT-7030, PR-750: Improve ban API 4eeb174b All smithing inventories are now the new smithing inventory f2bb168e PR-880: Add methods to get/set FallingBlock CancelDrop e7a807fa PR-879: Add Player#sendHealthUpdate() 692b8e96 SPIGOT-7370: Remove float value conversion in plugin.yml 2d033390 SPIGOT-7403: Add direct API for waxed signs 16a08373 PR-876: Add missing Raider API and 'no action ticks' CraftBukkit Changes: b60a95c8c PR-1189: Add LivingEntity#playHurtAnimation() 95c335c63 PR-1226: Fix VehicleEnterEvent not being called for certain entities 0a0fc3bee PR-1227: Refinements to new ban API for improved compatibility and correctness 0d0b1e5dc Revert bad change to PathfinderGoalSit causing all cats to sit 648196070 SPIGOT-6455, SPIGOT-7030, PR-1054: Improve ban API 31fe848d6 All smithing inventories are now the new smithing inventory 9a919a143 SPIGOT-7416: SmithItemEvent not firing in Smithing Table 9f64f0d22 PR-1221: Add methods to get/set FallingBlock CancelDrop 3be9ac171 PR-1220: Add Player#sendHealthUpdate() c1279f775 PR-1209: Clean up various patches c432e4397 Fix Raider#setCelebrating() implementation 504d96665 SPIGOT-7403: Add direct API for waxed signs c68c1f1b3 PR-1216: Add missing Raider API and 'no action ticks' 85b89c3dd Increase outdated build delay Spigot Changes: 9ebce8af Rebuild patches 64b565e6 Rebuild patches
73 lines
3.7 KiB
Diff
73 lines
3.7 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Owen1212055 <23108066+Owen1212055@users.noreply.github.com>
|
|
Date: Sun, 17 Oct 2021 15:39:48 -0400
|
|
Subject: [PATCH] Add Shearable API
|
|
|
|
|
|
diff --git a/src/main/java/io/papermc/paper/entity/PaperShearable.java b/src/main/java/io/papermc/paper/entity/PaperShearable.java
|
|
new file mode 100644
|
|
index 0000000000000000000000000000000000000000..bcf254e3c81cf1e401bddc850fb24ad29dcc127c
|
|
--- /dev/null
|
|
+++ b/src/main/java/io/papermc/paper/entity/PaperShearable.java
|
|
@@ -0,0 +1,21 @@
|
|
+package io.papermc.paper.entity;
|
|
+
|
|
+import io.papermc.paper.adventure.PaperAdventure;
|
|
+import net.kyori.adventure.sound.Sound;
|
|
+import net.minecraft.world.entity.Shearable;
|
|
+import org.jetbrains.annotations.NotNull;
|
|
+
|
|
+public interface PaperShearable extends io.papermc.paper.entity.Shearable {
|
|
+
|
|
+ Shearable getHandle();
|
|
+
|
|
+ @Override
|
|
+ default boolean readyToBeSheared() {
|
|
+ return this.getHandle().readyForShearing();
|
|
+ }
|
|
+
|
|
+ @Override
|
|
+ default void shear(@NotNull Sound.Source source) {
|
|
+ this.getHandle().shear(PaperAdventure.asVanilla(source));
|
|
+ }
|
|
+}
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftMushroomCow.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftMushroomCow.java
|
|
index 20eaa3424428b8b30fd15591b660983cb7fc4375..4a6aae106de5eeeb80c078c5a167ef0484b13929 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftMushroomCow.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftMushroomCow.java
|
|
@@ -6,7 +6,7 @@ import org.bukkit.entity.EntityType;
|
|
import org.bukkit.entity.MushroomCow;
|
|
import org.bukkit.entity.MushroomCow.Variant;
|
|
|
|
-public class CraftMushroomCow extends CraftCow implements MushroomCow {
|
|
+public class CraftMushroomCow extends CraftCow implements MushroomCow, io.papermc.paper.entity.PaperShearable { // Paper
|
|
public CraftMushroomCow(CraftServer server, net.minecraft.world.entity.animal.MushroomCow entity) {
|
|
super(server, entity);
|
|
}
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftSheep.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftSheep.java
|
|
index ca8e35fbf04a54d60c3612f74be0b5fbf2ab7a56..81ccb4bde315c42409a0c04883f5cb4551398308 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftSheep.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftSheep.java
|
|
@@ -5,7 +5,7 @@ import org.bukkit.craftbukkit.CraftServer;
|
|
import org.bukkit.entity.EntityType;
|
|
import org.bukkit.entity.Sheep;
|
|
|
|
-public class CraftSheep extends CraftAnimals implements Sheep {
|
|
+public class CraftSheep extends CraftAnimals implements Sheep, io.papermc.paper.entity.PaperShearable { // Paper
|
|
public CraftSheep(CraftServer server, net.minecraft.world.entity.animal.Sheep entity) {
|
|
super(server, entity);
|
|
}
|
|
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftSnowman.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftSnowman.java
|
|
index 659e2959c5330e4764ea1edc7f8de9f464f9ff52..42b7058d93fab8cbee49dba130734e1df9910096 100644
|
|
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftSnowman.java
|
|
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftSnowman.java
|
|
@@ -5,7 +5,7 @@ import org.bukkit.craftbukkit.CraftServer;
|
|
import org.bukkit.entity.EntityType;
|
|
import org.bukkit.entity.Snowman;
|
|
|
|
-public class CraftSnowman extends CraftGolem implements Snowman, com.destroystokyo.paper.entity.CraftRangedEntity<SnowGolem> { // Paper
|
|
+public class CraftSnowman extends CraftGolem implements Snowman, com.destroystokyo.paper.entity.CraftRangedEntity<SnowGolem>, io.papermc.paper.entity.PaperShearable { // Paper
|
|
public CraftSnowman(CraftServer server, SnowGolem entity) {
|
|
super(server, entity);
|
|
}
|