Files
Purpur/patches/server/0041-Pigs-give-saddle-back.patch
jmp b538cd9fba Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
466820160 Upstream Update (#5211)
2a0ee4b65 Add support for hex color codes in console
4e958e229 We're going on an Adventure! (#4842)
1a9735611 Stop loop when flags set to false (#5101)
a5928db4a [Auto] Updated Upstream (CraftBukkit)
2021-02-21 13:46:04 -08:00

46 lines
2.2 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Sun, 12 May 2019 01:14:46 -0500
Subject: [PATCH] Pigs give saddle back
diff --git a/src/main/java/net/minecraft/server/EntityPig.java b/src/main/java/net/minecraft/server/EntityPig.java
index ee94c2827cfc53f7a37e61d8c1c0c30a52374cf8..7f52c39234e69b612b89993ce4503c20690064ed 100644
--- a/src/main/java/net/minecraft/server/EntityPig.java
+++ b/src/main/java/net/minecraft/server/EntityPig.java
@@ -109,6 +109,18 @@ public class EntityPig extends EntityAnimal implements ISteerable, ISaddleable {
if (!flag && this.hasSaddle() && !this.isVehicle() && !entityhuman.eq()) {
if (!this.world.isClientSide) {
+ // Purpur start
+ if (world.purpurConfig.pigGiveSaddleBack && entityhuman.isSneaking()) {
+ this.saddleStorage.setSaddle(false);
+ if (!entityhuman.abilities.canInstantlyBuild) {
+ ItemStack saddle = new ItemStack(Items.SADDLE);
+ if (!entityhuman.inventory.pickup(saddle)) {
+ entityhuman.drop(saddle, false);
+ }
+ }
+ return EnumInteractionResult.SUCCESS;
+ }
+ // Purpur end
entityhuman.startRiding(this);
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 0c841b824a93d5e43bad171d1ca828eca3e891df..24ef91788ff69004eed1b136a0ceb6176db00e76 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -188,6 +188,11 @@ public class PurpurWorldConfig {
ironGolemCanSwim = getBoolean("mobs.iron_golem.can-swim", ironGolemCanSwim);
}
+ public boolean pigGiveSaddleBack = false;
+ private void pigSettings() {
+ pigGiveSaddleBack = getBoolean("mobs.pig.give-saddle-back", pigGiveSaddleBack);
+ }
+
public String polarBearBreedableItemString = "";
public Item polarBearBreedableItem = null;
private void polarBearSettings() {