SPIGOT-5901: Improve multiworld support

By: md_5 <git@md-5.net>
This commit is contained in:
CraftBukkit/Spigot
2020-07-17 08:56:56 +10:00
parent f313337709
commit deab30f8b2
3 changed files with 29 additions and 4 deletions

View File

@@ -49,7 +49,7 @@
public EntityPlayer(MinecraftServer minecraftserver, WorldServer worldserver, GameProfile gameprofile, PlayerInteractManager playerinteractmanager) {
super(worldserver, worldserver.getSpawn(), gameprofile);
this.spawnDimension = World.OVERWORLD;
@@ -66,7 +101,51 @@
@@ -66,12 +101,56 @@
this.advancementDataPlayer = minecraftserver.getPlayerList().f(this);
this.G = 1.0F;
this.b(worldserver);
@@ -101,6 +101,12 @@
private void b(WorldServer worldserver) {
BlockPosition blockposition = worldserver.getSpawn();
- if (worldserver.getDimensionManager().hasSkyLight() && worldserver.getMinecraftServer().getSaveData().getGameType() != EnumGamemode.ADVENTURE) {
+ if (worldserver.getDimensionManager().hasSkyLight() && worldserver.worldDataServer.getGameType() != EnumGamemode.ADVENTURE) { // CraftBukkit
int i = Math.max(0, this.server.a(worldserver));
int j = MathHelper.floor(worldserver.getWorldBorder().b((double) blockposition.getX(), (double) blockposition.getZ()));
@@ -137,11 +216,20 @@
if (nbttagcompound.hasKeyOfType("recipeBook", 10)) {
this.recipeBook.a(nbttagcompound.getCompound("recipeBook"), this.server.getCraftingManager());