mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 16:37:43 +01:00
Upstream has released updates that appear to apply and compile correctly Paper Changes:06db5d08b0Updated Upstream (Bukkit/CraftBukkit) (#6589)810d200bb4Improve interact distance check (#6591) Airplane Changes:8207533bdfUpstream
50 lines
2.6 KiB
Diff
50 lines
2.6 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Ben Kerllenevich <ben@omega24.dev>
|
|
Date: Sun, 13 Dec 2020 20:40:57 -0500
|
|
Subject: [PATCH] Striders give saddle back
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/entity/monster/Strider.java b/src/main/java/net/minecraft/world/entity/monster/Strider.java
|
|
index 9d314470361b2e17afdadc355c084254e5b03aff..66dab9b4e5ae05deeae11c8588a0b855d8847bdc 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/monster/Strider.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/monster/Strider.java
|
|
@@ -451,6 +451,18 @@ public class Strider extends Animal implements ItemSteerable, Saddleable {
|
|
|
|
if (!flag && this.isSaddled() && !this.isVehicle() && !player.isSecondaryUseActive()) {
|
|
if (!this.level.isClientSide) {
|
|
+ // Purpur start
|
|
+ if (level.purpurConfig.striderGiveSaddleBack && player.isCrouching()) {
|
|
+ this.steering.setSaddle(false);
|
|
+ if (!player.getAbilities().instabuild) {
|
|
+ ItemStack saddle = new ItemStack(Items.SADDLE);
|
|
+ if (!player.getInventory().add(saddle)) {
|
|
+ player.drop(saddle, false);
|
|
+ }
|
|
+ }
|
|
+ return InteractionResult.SUCCESS;
|
|
+ }
|
|
+ // Purpur end
|
|
player.startRiding(this);
|
|
}
|
|
|
|
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
index 8db3f93e13bb6b302fe048c06ae5029bfb7b0c40..870c93b7d0d04b9aebde2d95cfa0ae0ed0b4bc11 100644
|
|
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
@@ -1572,6 +1572,7 @@ public class PurpurWorldConfig {
|
|
public boolean striderRidableInWater = false;
|
|
public double striderMaxHealth = 20.0D;
|
|
public int striderBreedingTicks = 6000;
|
|
+ public boolean striderGiveSaddleBack = false;
|
|
private void striderSettings() {
|
|
striderRidable = getBoolean("mobs.strider.ridable", striderRidable);
|
|
striderRidableInWater = getBoolean("mobs.strider.ridable-in-water", striderRidableInWater);
|
|
@@ -1582,6 +1583,7 @@ public class PurpurWorldConfig {
|
|
}
|
|
striderMaxHealth = getDouble("mobs.strider.attributes.max_health", striderMaxHealth);
|
|
striderBreedingTicks = getInt("mobs.strider.breeding-delay-ticks", striderBreedingTicks);
|
|
+ striderGiveSaddleBack = getBoolean("mobs.strider.give-saddle-back", striderGiveSaddleBack);
|
|
}
|
|
|
|
public boolean traderLlamaRidable = false;
|