Files
Purpur/patches/server/0022-Always-place-dragon-egg-when-dragon-is-killed.patch
2020-01-14 20:58:59 -06:00

50 lines
2.3 KiB
Diff

From 306aa7d682962a0ec6bf1b304d839f07481420f2 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Sat, 1 Jun 2019 01:16:35 -0500
Subject: [PATCH] Always place dragon egg when dragon is killed
---
src/main/java/net/minecraft/server/EnderDragonBattle.java | 4 ++--
src/main/java/net/pl3x/purpur/PurpurWorldConfig.java | 5 +++++
2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/src/main/java/net/minecraft/server/EnderDragonBattle.java b/src/main/java/net/minecraft/server/EnderDragonBattle.java
index 218c04245b..a2dfdc23f1 100644
--- a/src/main/java/net/minecraft/server/EnderDragonBattle.java
+++ b/src/main/java/net/minecraft/server/EnderDragonBattle.java
@@ -21,7 +21,7 @@ public class EnderDragonBattle {
private static final Logger LOGGER = LogManager.getLogger();
private static final Predicate<Entity> b = IEntitySelector.a.and(IEntitySelector.a(0.0D, 128.0D, 0.0D, 192.0D));
public final BossBattleServer bossBattle;
- private final WorldServer d;
+ private final WorldServer d; public WorldServer getWorld() { return d; } // Purpur - OBFHELPER
private final List<Integer> e;
private final ShapeDetector f;
private int g;
@@ -358,7 +358,7 @@ public class EnderDragonBattle {
this.bossBattle.setVisible(false);
this.a(true);
this.n();
- if (!this.l) {
+ if (getWorld().purpurConfig.enderDragonAlwaysDropsEggBlock || !this.l) { // Purpur - always place dragon egg
this.d.setTypeUpdate(this.d.getHighestBlockYAt(HeightMap.Type.MOTION_BLOCKING, WorldGenEndTrophy.a), Blocks.DRAGON_EGG.getBlockData());
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 061b02e45a..ea5c898966 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -100,4 +100,9 @@ public class PurpurWorldConfig {
private void allowSignColors() {
allowSignColors = getBoolean("allow-sign-colors", allowSignColors);
}
+
+ public boolean enderDragonAlwaysDropsEggBlock = false;
+ private void enderDragonSettings() {
+ enderDragonAlwaysDropsEggBlock = getBoolean("mobs.ender-dragon.always-drop-egg-block", enderDragonAlwaysDropsEggBlock);
+ }
}
--
2.24.0