Files
Purpur/patches/server/0228-Shearing-jeb-produces-random-color-wool.patch
2023-06-08 19:58:32 -07:00

40 lines
2.5 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: BillyGalbreath <blake.galbreath@gmail.com>
Date: Fri, 31 Dec 2021 06:03:12 -0600
Subject: [PATCH] Shearing jeb produces random color wool
diff --git a/src/main/java/net/minecraft/world/entity/animal/Sheep.java b/src/main/java/net/minecraft/world/entity/animal/Sheep.java
index 8c6aa82746720f6cc404531a94a02b52bc42278b..5d7f86140a9c5475e450026d0b7bddc5e049f6d4 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Sheep.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Sheep.java
@@ -315,7 +315,7 @@ public class Sheep extends Animal implements Shearable {
for (int j = 0; j < i; ++j) {
this.forceDrops = true; // CraftBukkit
- ItemEntity entityitem = this.spawnAtLocation((ItemLike) Sheep.ITEM_BY_DYE.get(this.getColor()), 1);
+ ItemEntity entityitem = this.spawnAtLocation((ItemLike) Sheep.ITEM_BY_DYE.get(this.level.purpurConfig.sheepShearJebRandomColor && hasCustomName() && getCustomName().getString().equals("jeb_") ? DyeColor.random(this.level.random) : this.getColor()), 1); // Purpur
this.forceDrops = false; // CraftBukkit
if (entityitem != null) {
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 2e3f957d2c056ce1b43e8b2b39e0eaece3d6da9b..73ea4baa63a9c0b9d1eff81a701cb52534bdf972 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1962,6 +1962,7 @@ public class PurpurWorldConfig {
public boolean sheepBypassMobGriefing = false;
public boolean sheepTakeDamageFromWater = false;
public boolean sheepAlwaysDropExp = false;
+ public boolean sheepShearJebRandomColor = false;
private void sheepSettings() {
if (PurpurConfig.version < 10) {
double oldValue = getDouble("mobs.sheep.attributes.max-health", sheepMaxHealth);
@@ -1973,6 +1974,7 @@ public class PurpurWorldConfig {
sheepBypassMobGriefing = getBoolean("mobs.sheep.bypass-mob-griefing", sheepBypassMobGriefing);
sheepTakeDamageFromWater = getBoolean("mobs.sheep.takes-damage-from-water", sheepTakeDamageFromWater);
sheepAlwaysDropExp = getBoolean("mobs.sheep.always-drop-exp", sheepAlwaysDropExp);
+ sheepShearJebRandomColor = getBoolean("mobs.sheep.jeb-shear-random-color", sheepShearJebRandomColor);
}
public double shulkerMaxHealth = 30.0D;