mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-18 17:07:43 +01:00
62 lines
3.0 KiB
Diff
62 lines
3.0 KiB
Diff
From 399f1b7da931b2870effe967a6e5af6a450a5461 Mon Sep 17 00:00:00 2001
|
|
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
|
|
Date: Fri, 7 Feb 2020 04:42:57 -0600
|
|
Subject: [PATCH] Ender dragon always drop egg
|
|
|
|
---
|
|
src/main/java/net/minecraft/server/EnderDragonBattle.java | 5 +++--
|
|
src/main/java/net/pl3x/purpur/PurpurWorldConfig.java | 2 ++
|
|
2 files changed, 5 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/EnderDragonBattle.java b/src/main/java/net/minecraft/server/EnderDragonBattle.java
|
|
index 218c04245..48398aa9f 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 || !wasPreviouslyKilled()) { // Purpur - always place dragon egg
|
|
this.d.setTypeUpdate(this.d.getHighestBlockYAt(HeightMap.Type.MOTION_BLOCKING, WorldGenEndTrophy.a), Blocks.DRAGON_EGG.getBlockData());
|
|
}
|
|
|
|
@@ -439,6 +439,7 @@ public class EnderDragonBattle {
|
|
|
|
}
|
|
|
|
+ public boolean wasPreviouslyKilled() { return d(); } // Purpur - OBFHELPER;
|
|
public boolean d() {
|
|
return this.l;
|
|
}
|
|
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
index 18a512744..77070e618 100644
|
|
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
@@ -200,11 +200,13 @@ public class PurpurWorldConfig {
|
|
public boolean enderDragonRidableInWater = false;
|
|
public boolean enderDragonRequireShiftToMount = true;
|
|
public double enderDragonMaxY = 256D;
|
|
+ public boolean enderDragonAlwaysDropsEggBlock = false;
|
|
private void enderDragonSettings() {
|
|
enderDragonRidable = getBoolean("mobs.ender_dragon.ridable", enderDragonRidable);
|
|
enderDragonRidableInWater = getBoolean("mobs.ender_dragon.ridable-in-water", enderDragonRidableInWater);
|
|
enderDragonRequireShiftToMount = getBoolean("mobs.ender_dragon.require-shift-to-mount", enderDragonRequireShiftToMount);
|
|
enderDragonMaxY = getDouble("mobs.ender_dragon.ridable-max-y", enderDragonMaxY);
|
|
+ enderDragonAlwaysDropsEggBlock = getBoolean("mobs.ender_dragon.always-drop-egg-block", enderDragonAlwaysDropsEggBlock);
|
|
}
|
|
|
|
public boolean endermanRidable = false;
|
|
--
|
|
2.24.0
|
|
|