mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-22 22:45:31 +01:00
8fd4e70db7
This is done by returning the center location of the chunk at the height of the input location when the target chunk isn't loaded already which is exact enough for most use cases and will get more precise once the player is close enough for the chunk being loaded anyways. As this might lead to less precise locations a config option to enable the sync loading of the chunks is provided.
33 lines
1.9 KiB
Diff
33 lines
1.9 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
|
|
Date: Thu, 26 Nov 2020 11:47:24 +0000
|
|
Subject: [PATCH] Add toggle for always placing the dragon egg
|
|
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
index af7e93cb64eff1448653b27c2c9aea2d278d3ab7..cfe617e1a08b9c6e6c12bfe89bc9effd819eaff1 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperWorldConfig.java
|
|
@@ -796,4 +796,9 @@ public class PaperWorldConfig {
|
|
if (value != -1) entityPerChunkSaveLimits.put(type, value);
|
|
});
|
|
}
|
|
+
|
|
+ public boolean enderDragonsDeathAlwaysPlacesDragonEgg = false;
|
|
+ private void enderDragonsDeathAlwaysPlacesDragonEgg() {
|
|
+ enderDragonsDeathAlwaysPlacesDragonEgg = getBoolean("ender-dragons-death-always-places-dragon-egg", enderDragonsDeathAlwaysPlacesDragonEgg);
|
|
+ }
|
|
}
|
|
diff --git a/src/main/java/net/minecraft/world/level/dimension/end/EnderDragonBattle.java b/src/main/java/net/minecraft/world/level/dimension/end/EnderDragonBattle.java
|
|
index c0a6b340810b8ea4f454290b1ac22316ff0e6e22..80fcceec519ef59d057d27a81fcd0649a20447da 100644
|
|
--- a/src/main/java/net/minecraft/world/level/dimension/end/EnderDragonBattle.java
|
|
+++ b/src/main/java/net/minecraft/world/level/dimension/end/EnderDragonBattle.java
|
|
@@ -400,7 +400,7 @@ public class EnderDragonBattle {
|
|
this.bossBattle.setVisible(false);
|
|
this.generateExitPortal(true);
|
|
this.n();
|
|
- if (!this.previouslyKilled) {
|
|
+ if (this.world.paperConfig.enderDragonsDeathAlwaysPlacesDragonEgg || !this.previouslyKilled) { // Paper - always place dragon egg
|
|
this.world.setTypeUpdate(this.world.getHighestBlockYAt(HeightMap.Type.MOTION_BLOCKING, WorldGenEndTrophy.a), Blocks.DRAGON_EGG.getBlockData());
|
|
}
|
|
|