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: PaperMC/Paper@e4f5e1c Bump netty Pufferfish Changes: pufferfish-gg/Pufferfish@a8543a4 #33 Fix anti-xray related crash bug pufferfish-gg/Pufferfish@aefcb1a Updated Upstream (Paper)
62 lines
3.0 KiB
Diff
62 lines
3.0 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: William Blake Galbreath <blake.galbreath@gmail.com>
|
|
Date: Sat, 31 Aug 2019 17:47:11 -0500
|
|
Subject: [PATCH] Rabbit naturally spawn toast and killer
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/entity/animal/Rabbit.java b/src/main/java/net/minecraft/world/entity/animal/Rabbit.java
|
|
index eaf040f10e33fdfb57391b6e7bc6901c87270853..47dc84052f1fb0017ff2e608c3f6d8b92c960cc6 100644
|
|
--- a/src/main/java/net/minecraft/world/entity/animal/Rabbit.java
|
|
+++ b/src/main/java/net/minecraft/world/entity/animal/Rabbit.java
|
|
@@ -436,7 +436,11 @@ public class Rabbit extends Animal {
|
|
if (!this.hasCustomName()) {
|
|
this.setCustomName(Component.translatable(Util.makeDescriptionId("entity", Rabbit.KILLER_BUNNY)));
|
|
}
|
|
+ // Purpur start
|
|
+ } else if (rabbitType == 98) {
|
|
+ setCustomName(Component.translatable("Toast"));
|
|
}
|
|
+ // Purpur end
|
|
|
|
this.entityData.set(Rabbit.DATA_TYPE_ID, rabbitType);
|
|
}
|
|
@@ -457,6 +461,16 @@ public class Rabbit extends Animal {
|
|
}
|
|
|
|
private int getRandomRabbitType(LevelAccessor world) {
|
|
+ // Purpur start
|
|
+ Level level = world.getMinecraftWorld();
|
|
+ if (level.purpurConfig.rabbitNaturalKiller > 0D && random.nextDouble() <= level.purpurConfig.rabbitNaturalKiller) {
|
|
+ return 99;
|
|
+ }
|
|
+ if (level.purpurConfig.rabbitNaturalToast > 0D && random.nextDouble() <= level.purpurConfig.rabbitNaturalToast) {
|
|
+ return 98;
|
|
+ }
|
|
+ // Purpur end
|
|
+
|
|
Holder<Biome> holder = world.getBiome(this.blockPosition());
|
|
int i = world.getRandom().nextInt(100);
|
|
|
|
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
|
index e9b357ac289f7e72b4bbbcfdf71c9eac51b73cbd..a30300602f23001f14ff8e82854f653db2cb1e79 100644
|
|
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
|
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
|
|
@@ -965,6 +965,8 @@ public class PurpurWorldConfig {
|
|
public boolean rabbitRidableInWater = false;
|
|
public boolean rabbitControllable = true;
|
|
public double rabbitMaxHealth = 3.0D;
|
|
+ public double rabbitNaturalToast = 0.0D;
|
|
+ public double rabbitNaturalKiller = 0.0D;
|
|
private void rabbitSettings() {
|
|
rabbitRidable = getBoolean("mobs.rabbit.ridable", rabbitRidable);
|
|
rabbitRidableInWater = getBoolean("mobs.rabbit.ridable-in-water", rabbitRidableInWater);
|
|
@@ -975,6 +977,8 @@ public class PurpurWorldConfig {
|
|
set("mobs.rabbit.attributes.max_health", oldValue);
|
|
}
|
|
rabbitMaxHealth = getDouble("mobs.rabbit.attributes.max_health", rabbitMaxHealth);
|
|
+ rabbitNaturalToast = getDouble("mobs.rabbit.spawn-toast-chance", rabbitNaturalToast);
|
|
+ rabbitNaturalKiller = getDouble("mobs.rabbit.spawn-killer-rabbit-chance", rabbitNaturalKiller);
|
|
}
|
|
|
|
public boolean ravagerRidable = false;
|