SPIGOT-354: Fix the version being incorrect for level.dat

This commit is contained in:
Thinkofdeath 2015-01-04 19:54:51 +00:00
parent 08996835da
commit ff66a9a65c

View file

@ -1,5 +1,5 @@
--- ../work/decompile-8eb82bde//net/minecraft/server/WorldServer.java 2014-12-28 14:56:08.716418303 +0000
+++ src/main/java/net/minecraft/server/WorldServer.java 2014-12-28 14:56:08.720418303 +0000
--- ../work/decompile-8eb82bde//net/minecraft/server/WorldServer.java 2015-01-04 19:54:26.537675427 +0000
+++ src/main/java/net/minecraft/server/WorldServer.java 2015-01-04 19:54:26.541675427 +0000
@@ -16,6 +16,20 @@
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@ -445,25 +445,21 @@
this.checkSession();
this.worldData.a(this.af().h());
this.worldData.d(this.af().f());
@@ -691,8 +904,15 @@
@@ -691,8 +904,12 @@
this.worldData.k(this.af().p());
this.worldData.b(this.af().j());
this.worldData.e(this.af().i());
- this.dataManager.saveWorldData(this.worldData, this.server.getPlayerList().u());
- this.worldMaps.a();
+ // CraftBukkit start - save worldMaps once, rather than once per shared world
+ // Only save players for the primary world.
+ if (!(this instanceof SecondaryWorldServer)) {
+ this.worldMaps.a();
+ this.dataManager.saveWorldData(this.worldData);
+ } else {
+ this.dataManager.saveWorldData(this.worldData, this.server.getPlayerList().u());
+ }
this.dataManager.saveWorldData(this.worldData, this.server.getPlayerList().u());
- this.worldMaps.a();
+ // CraftBukkit end
}
protected void a(Entity entity) {
@@ -724,8 +944,16 @@
@@ -724,8 +941,16 @@
}
public boolean strikeLightning(Entity entity) {
@ -481,7 +477,7 @@
return true;
} else {
return false;
@@ -737,10 +965,20 @@
@@ -737,10 +962,20 @@
}
public Explosion createExplosion(Entity entity, double d0, double d1, double d2, float f, boolean flag, boolean flag1) {
@ -502,7 +498,7 @@
if (!flag1) {
explosion.clearBlocks();
}
@@ -786,7 +1024,8 @@
@@ -786,7 +1021,8 @@
BlockActionData blockactiondata = (BlockActionData) iterator.next();
if (this.a(blockactiondata)) {
@ -512,7 +508,7 @@
}
}
@@ -809,6 +1048,7 @@
@@ -809,6 +1045,7 @@
boolean flag = this.S();
super.p();
@ -520,7 +516,7 @@
if (this.o != this.p) {
this.server.getPlayerList().a(new PacketPlayOutGameStateChange(7, this.p), this.worldProvider.getDimension());
}
@@ -827,7 +1067,21 @@
@@ -827,7 +1064,21 @@
this.server.getPlayerList().sendAll(new PacketPlayOutGameStateChange(7, this.p));
this.server.getPlayerList().sendAll(new PacketPlayOutGameStateChange(8, this.r));
}
@ -543,7 +539,7 @@
}
protected int q() {
@@ -855,10 +1109,17 @@
@@ -855,10 +1106,17 @@
}
public void a(EnumParticle enumparticle, boolean flag, double d0, double d1, double d2, int i, double d3, double d4, double d5, double d6, int... aint) {