Files
Purpur/patches/server/0106-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch
William Blake Galbreath 8bc19e524a Updated Upstream (Paper & Tuinity)
Upstream has released updates that appears to apply and compile correctly

Paper Changes:
55e2de5c6 Improve per player mob spawning (#3971)
42433c262 Updated Upstream (Bukkit/CraftBukkit) (#3980)
e5ede546a Fix IDE Debug JVM Flag for 1.16 (#3983)
2712c6888 [Auto] Updated Upstream (Bukkit/CraftBukkit)
0901ffd04 Use title packet for actionbar methods (#3959)
2e11235d1 Expand MaterialTags (#3964)
cc25ae47c Amend last commit to fix decompile error forgot to commit
f503db37c Fix AdvancementDataPlayer leak due from quitting early in login
282763b88 Fix SPIGOT-5885 Unable to disable advancements
9b93d122e Fix SPIGOT-5824 Bukkit world-container is not used
bede4d304 Load config files early on

Tuinity Changes:
b0673b3 Merge dev/optimise-notify into ver/1.16
d3dc35c Name craft scheduler threads according to the plugin using them
2020-07-23 15:37:18 -05:00

35 lines
1.9 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
Date: Mon, 13 Jul 2020 11:40:00 -0500
Subject: [PATCH] Add option to teleport to spawn if outside world border
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index ab64c0491..061906a56 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -277,6 +277,7 @@ public abstract class EntityLiving extends Entity {
double d1 = this.world.getWorldBorder().getDamageAmount();
if (d1 > 0.0D) {
+ if (world.purpurConfig.teleportIfOutsideBorder && this instanceof EntityPlayer) teleportTo((WorldServer) world, world.getSpawn()); else // Purpur
this.damageEntity(DamageSource.STUCK, (float) Math.max(1, MathHelper.floor(-d0 * d1)));
}
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 87b863031..63d4cf5c4 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -180,6 +180,11 @@ public class PurpurWorldConfig {
playerInvulnerableWhileAcceptingResourcePack = getBoolean("gameplay-mechanics.player.invulnerable-while-accepting-resource-pack", playerInvulnerableWhileAcceptingResourcePack);
}
+ public boolean teleportIfOutsideBorder = false;
+ private void teleportIfOutsideBorder() {
+ teleportIfOutsideBorder = getBoolean("gameplay-mechanics.player.teleport-if-outside-border", teleportIfOutsideBorder);
+ }
+
public boolean silkTouchEnabled = false;
public List<Item> silkTouchTools = new ArrayList<>();
private void silkTouchSettings() {