Files
Purpur/patches/server/0042-Ender-dragon-always-drop-full-exp.patch
BillyGalbreath daeb232e18 Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@2914457 Allow seting custom podium location for ender dragon (#7695)
PaperMC/Paper@11e0dcd Fix NBT pieces overriding a block entity during worldgen deadlock (#7692)
PaperMC/Paper@2f16393 Updated Upstream (CraftBukkit)
PaperMC/Paper@4322c05 Use patched spigot decompiler (#7706)
PaperMC/Paper@f8e8d6c Strip enderpearl owners when they are no longer ticked (#7559)
PaperMC/Paper@e42d683 Fix StructureGrowEvent species for RED_MUSHROOM
PaperMC/Paper@a9ee104 Prevent tile entity copies loading chunks
PaperMC/Paper@d4a712d [CI-SKIP] Remove unused import from last patch
2022-04-13 13:58:39 -05: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: Sat, 24 Aug 2019 14:42:54 -0500
Subject: [PATCH] Ender dragon always drop full exp
diff --git a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
index 63ba8083c4f4a7ead9fec21eb96584f192c5cade..1a454c782391ff906c58cdb71c4345bb15943649 100644
--- a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
+++ b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java
@@ -728,7 +728,7 @@ public class EnderDragon extends Mob implements Enemy {
boolean flag = this.level.getGameRules().getBoolean(GameRules.RULE_DOMOBLOOT);
short short0 = 500;
- if (this.dragonFight != null && !this.dragonFight.hasPreviouslyKilledDragon()) {
+ if (this.dragonFight != null && (level.purpurConfig.enderDragonAlwaysDropsFullExp || !this.dragonFight.hasPreviouslyKilledDragon())) {
short0 = 12000;
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 54c0fe906604b14314125ff35322f75c84c1ee7d..fa3ae133ed06e4b57a4bc3ea2a32b5f1aef2636b 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -423,6 +423,7 @@ public class PurpurWorldConfig {
public boolean enderDragonControllable = true;
public double enderDragonMaxY = 320D;
public double enderDragonMaxHealth = 200.0D;
+ public boolean enderDragonAlwaysDropsFullExp = false;
private void enderDragonSettings() {
enderDragonRidable = getBoolean("mobs.ender_dragon.ridable", enderDragonRidable);
enderDragonRidableInWater = getBoolean("mobs.ender_dragon.ridable-in-water", enderDragonRidableInWater);
@@ -438,6 +439,7 @@ public class PurpurWorldConfig {
set("mobs.ender_dragon.attributes.max_health", oldValue);
}
enderDragonMaxHealth = getDouble("mobs.ender_dragon.attributes.max_health", enderDragonMaxHealth);
+ enderDragonAlwaysDropsFullExp = getBoolean("mobs.ender_dragon.always-drop-full-exp", enderDragonAlwaysDropsFullExp);
}
public boolean endermanRidable = false;