Files
Purpur/patches/server/0025-Ender-dragon-always-drop-full-exp.patch
2020-02-27 18:00:18 -06:00

46 lines
2.4 KiB
Diff

From 9a2541adcd16702d7dca91e37e4616eb973339e9 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Sat, 24 Aug 2019 14:42:54 -0500
Subject: [PATCH] Ender dragon always drop full exp
---
src/main/java/net/minecraft/server/EntityEnderDragon.java | 2 +-
src/main/java/net/pl3x/purpur/PurpurWorldConfig.java | 2 ++
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/main/java/net/minecraft/server/EntityEnderDragon.java b/src/main/java/net/minecraft/server/EntityEnderDragon.java
index 9cba1b6c84..5aea402797 100644
--- a/src/main/java/net/minecraft/server/EntityEnderDragon.java
+++ b/src/main/java/net/minecraft/server/EntityEnderDragon.java
@@ -588,7 +588,7 @@ public class EntityEnderDragon extends EntityInsentient implements IMonster {
boolean flag = this.world.getGameRules().getBoolean(GameRules.DO_MOB_LOOT);
short short0 = 500;
- if (this.bN != null && !this.bN.d()) {
+ if (getEnderDragonBattle() != null && (world.purpurConfig.enderDragonAlwaysDropsFullExp || !getEnderDragonBattle().wasPreviouslyKilled())) { // Purpur
short0 = 12000;
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index d69baa858c..5ed5276348 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -201,12 +201,14 @@ public class PurpurWorldConfig {
public boolean enderDragonRequireShiftToMount = true;
public double enderDragonMaxY = 256D;
public boolean enderDragonAlwaysDropsEggBlock = false;
+ public boolean enderDragonAlwaysDropsFullExp = 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);
+ enderDragonAlwaysDropsFullExp = getBoolean("mobs.ender_dragon.always-drop-full-exp", enderDragonAlwaysDropsFullExp);
}
public boolean endermanRidable = false;
--
2.24.0