summaryrefslogtreecommitdiffstats
path: root/src/main/java/net/minecraft/server/WorldNBTStorage.java
diff options
context:
space:
mode:
authorTravis Watkins <amaranth@ubuntu.com>2014-04-10 20:04:38 -0500
committerTravis Watkins <amaranth@ubuntu.com>2014-04-11 22:28:35 -0500
commit8f771c737850130534b0fade70494f7ce3cbc8fd (patch)
treee4180121cdaf4f15b325aa059469b44975fca8a4 /src/main/java/net/minecraft/server/WorldNBTStorage.java
parent0df7555cecff17ffab68b8280dcf8471b10f020c (diff)
downloadcraftbukkit-8f771c737850130534b0fade70494f7ce3cbc8fd.tar
craftbukkit-8f771c737850130534b0fade70494f7ce3cbc8fd.tar.gz
craftbukkit-8f771c737850130534b0fade70494f7ce3cbc8fd.tar.lz
craftbukkit-8f771c737850130534b0fade70494f7ce3cbc8fd.tar.xz
craftbukkit-8f771c737850130534b0fade70494f7ce3cbc8fd.zip
Update CraftBukkit to Minecraft 1.7.8
Diffstat (limited to 'src/main/java/net/minecraft/server/WorldNBTStorage.java')
-rw-r--r--src/main/java/net/minecraft/server/WorldNBTStorage.java21
1 files changed, 16 insertions, 5 deletions
diff --git a/src/main/java/net/minecraft/server/WorldNBTStorage.java b/src/main/java/net/minecraft/server/WorldNBTStorage.java
index f0666a36..fabc72ba 100644
--- a/src/main/java/net/minecraft/server/WorldNBTStorage.java
+++ b/src/main/java/net/minecraft/server/WorldNBTStorage.java
@@ -24,14 +24,14 @@ public class WorldNBTStorage implements IDataManager, IPlayerFileData {
private final File baseDir;
private final File playerDir;
private final File dataDir;
- private final long sessionId = MinecraftServer.aq();
+ private final long sessionId = MinecraftServer.ar();
private final String f;
private UUID uuid = null; // CraftBukkit
public WorldNBTStorage(File file1, String s, boolean flag) {
this.baseDir = new File(file1, s);
this.baseDir.mkdirs();
- this.playerDir = new File(this.baseDir, "players");
+ this.playerDir = new File(this.baseDir, "playerdata");
this.dataDir = new File(this.baseDir, "data");
this.dataDir.mkdirs();
this.f = s;
@@ -177,8 +177,8 @@ public class WorldNBTStorage implements IDataManager, IPlayerFileData {
NBTTagCompound nbttagcompound = new NBTTagCompound();
entityhuman.e(nbttagcompound);
- File file1 = new File(this.playerDir, entityhuman.getName() + ".dat.tmp");
- File file2 = new File(this.playerDir, entityhuman.getName() + ".dat");
+ File file1 = new File(this.playerDir, entityhuman.getUniqueID().toString() + ".dat.tmp");
+ File file2 = new File(this.playerDir, entityhuman.getUniqueID().toString() + ".dat");
NBTCompressedStreamTools.a(nbttagcompound, (OutputStream) (new FileOutputStream(file1)));
if (file2.exists()) {
@@ -192,7 +192,17 @@ public class WorldNBTStorage implements IDataManager, IPlayerFileData {
}
public NBTTagCompound load(EntityHuman entityhuman) {
- NBTTagCompound nbttagcompound = this.getPlayerData(entityhuman.getName());
+ NBTTagCompound nbttagcompound = null;
+
+ try {
+ File file1 = new File(this.playerDir, entityhuman.getUniqueID().toString() + ".dat");
+
+ if (file1.exists() && file1.isFile()) {
+ nbttagcompound = NBTCompressedStreamTools.a((InputStream) (new FileInputStream(file1)));
+ }
+ } catch (Exception exception) {
+ a.warn("Failed to load player data for " + entityhuman.getName());
+ }
if (nbttagcompound != null) {
// CraftBukkit start
@@ -201,6 +211,7 @@ public class WorldNBTStorage implements IDataManager, IPlayerFileData {
player.setFirstPlayed(new File(playerDir, entityhuman.getName() + ".dat").lastModified());
}
// CraftBukkit end
+
entityhuman.f(nbttagcompound);
}