Files
Purpur/patches/server/0298-Option-Ocelot-Spawn-Under-Sea-Level.patch
granny 642956fe61 Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@850b736 Close PRs opened from orgs or bot accounts (#10281)
PaperMC/Paper@54a2340 check if itemstack is stackable first (#10285)
PaperMC/Paper@9c4bb0d add rich message component support to configuration (#10225)
PaperMC/Paper@8870d22 Fire EntityDamageByEntityEvent for unowned wither skulls patch (#10244)
PaperMC/Paper@bbc03d8 improve BanList types (#10239)
PaperMC/Paper@ce5c8dd Configurable max block/fluid ticks (#10266)
PaperMC/Paper@880fef7 Deprecate extra ban methods with raw BanEntry (#9580)
PaperMC/Paper@60218cd Don't tick empty worlds (#9025)
PaperMC/Paper@b21eb4d add overloads to use suspicious effect entry to mushroom cow and suspicious stew meta (#10245)
PaperMC/Paper@89d51d5 Allow enabling sand duping (#10191)
PaperMC/Paper@6ad63fb Per world ticks per spawn settings (#6891)
2024-03-03 23:38:36 -08:00

40 lines
2.3 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Fri, 21 Jul 2023 11:04:47 -0500
Subject: [PATCH] Option Ocelot Spawn Under Sea Level
diff --git a/src/main/java/net/minecraft/world/entity/animal/Ocelot.java b/src/main/java/net/minecraft/world/entity/animal/Ocelot.java
index af275fc579d66bb098c08e88e4186846a1174c02..3c5f25300d1c7800144a459cc8bf598352a62a35 100644
--- a/src/main/java/net/minecraft/world/entity/animal/Ocelot.java
+++ b/src/main/java/net/minecraft/world/entity/animal/Ocelot.java
@@ -295,7 +295,7 @@ public class Ocelot extends Animal {
if (world.isUnobstructed(this) && !world.containsAnyLiquid(this.getBoundingBox())) {
BlockPos blockposition = this.blockPosition();
- if (blockposition.getY() < world.getSeaLevel()) {
+ if (!level().purpurConfig.ocelotSpawnUnderSeaLevel && blockposition.getY() < world.getSeaLevel()) {
return false;
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index a35837a4d089658b4a19ebf63690e5371e1515cd..43c6f7bfac08c31e19df70fb92cd611fbbe03b30 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -2091,6 +2091,7 @@ public class PurpurWorldConfig {
public int ocelotBreedingTicks = 6000;
public boolean ocelotTakeDamageFromWater = false;
public boolean ocelotAlwaysDropExp = false;
+ public boolean ocelotSpawnUnderSeaLevel = false;
private void ocelotSettings() {
ocelotRidable = getBoolean("mobs.ocelot.ridable", ocelotRidable);
ocelotRidableInWater = getBoolean("mobs.ocelot.ridable-in-water", ocelotRidableInWater);
@@ -2104,6 +2105,7 @@ public class PurpurWorldConfig {
ocelotBreedingTicks = getInt("mobs.ocelot.breeding-delay-ticks", ocelotBreedingTicks);
ocelotTakeDamageFromWater = getBoolean("mobs.ocelot.takes-damage-from-water", ocelotTakeDamageFromWater);
ocelotAlwaysDropExp = getBoolean("mobs.ocelot.always-drop-exp", ocelotAlwaysDropExp);
+ ocelotSpawnUnderSeaLevel = getBoolean("mobs.ocelot.spawn-below-sea-level", ocelotSpawnUnderSeaLevel);
}
public boolean pandaRidable = false;