cleanup, rename, nbt->cdt "compressed data tree"

This commit is contained in:
Sen 2025-05-28 01:11:46 +02:00
parent 753b4b8b5d
commit 6c55d59f1f
Signed by: sen
GPG key ID: 3AC50A6F47D1B722
181 changed files with 1254 additions and 1664 deletions

View file

@ -184,9 +184,9 @@ public final class Server implements IThreadListener {
cfg.setString(cvar, value.getValue());
}
data.setObject("Config", cfg);
data.setObject("Universe", UniverseRegistry.saveNbt());
File nfile = new File("server.nbt.tmp");
File lfile = new File("server.nbt");
data.setObject("Universe", UniverseRegistry.toTags());
File nfile = new File("server.cdt.tmp");
File lfile = new File("server.cdt");
try {
TagLoader.writeGZip(data, nfile);
if(lfile.exists())
@ -201,9 +201,9 @@ public final class Server implements IThreadListener {
public static long loadServerConfig() {
Config.clear();
UniverseRegistry.clear();
File file = new File("server.nbt");
File file = new File("server.cdt");
if(!file.exists())
file = new File("server.nbt.tmp");
file = new File("server.cdt.tmp");
if(file.exists()) {
try {
TagObject tag = TagLoader.readGZip(file);
@ -211,7 +211,7 @@ public final class Server implements IThreadListener {
for(String key : cfg.getKeySet()) {
Config.set(key, cfg.getString(key), false);
}
UniverseRegistry.loadNbt(tag.getObject("Universe"));
UniverseRegistry.fromTags(tag.getObject("Universe"));
long lastPlayed = tag.getLong("LastAccess");
String version = tag.hasString("Version") ? tag.getString("Version") : null;
version = version != null && version.isEmpty() ? "<unbekannt>" : version;
@ -274,7 +274,7 @@ public final class Server implements IThreadListener {
list = new String[0];
}
for(int i = 0; i < list.length; ++i) {
if(list[i].endsWith(".nbt")) {
if(list[i].endsWith(".cdt")) {
list[i] = list[i].substring(0, list[i].length() - 4);
// Player player = this.getPlayer(list[i]);
// if(player != null)
@ -296,7 +296,7 @@ public final class Server implements IThreadListener {
return null;
TagObject tag = null;
try {
File dat = new File(new File("players"), user + ".nbt");
File dat = new File(new File("players"), user + ".cdt");
if(dat.exists() && dat.isFile()) {
tag = TagLoader.readGZip(dat);
@ -312,8 +312,8 @@ public final class Server implements IThreadListener {
if(this.debug || !IPlayer.isValidUser(user))
return;
try {
File tmp = new File(new File("players"), user + ".nbt.tmp");
File dat = new File(new File("players"), user + ".nbt");
File tmp = new File(new File("players"), user + ".cdt.tmp");
File dat = new File(new File("players"), user + ".cdt");
TagLoader.writeGZip(tag, tmp);
if(dat.exists()) {
dat.delete();
@ -840,7 +840,7 @@ public final class Server implements IThreadListener {
TagObject tag = this.readPlayer(loginUser);
Player conn = new Player(this, connection, loginUser);
if(tag != null)
conn.readFromNBT(tag);
conn.readTags(tag);
if(Config.playerLimit > 0 && this.players.size() >= Config.playerLimit && !conn.isAdmin())
return String.format("Der Server ist voll (%d/%d)!", this.players.size(), Config.playerLimit);
if(conn.getPassword() == null) {
@ -876,7 +876,7 @@ public final class Server implements IThreadListener {
world = world == null ? this.space : world;
EntityNPC player = conn.createPlayer(world, tag == null ? EntityRegistry.getEntityString(EntityHuman.class) : tag.getString("id"));
if(tag != null)
player.readFromNBT(tag);
player.readTags(tag);
else
player.onInitialSpawn(null);
// player.setWorld(world);
@ -939,7 +939,7 @@ public final class Server implements IThreadListener {
return null;
TagObject tag = null;
try {
File dat = new File(new File("players"), user + ".nbt");
File dat = new File(new File("players"), user + ".cdt");
if(dat.exists() && dat.isFile()) {
tag = TagLoader.readGZip(dat);
@ -959,16 +959,14 @@ public final class Server implements IThreadListener {
EntityNPC entity = conn.getPresentEntity();
if(entity != null) {
TagObject etag = new TagObject();
entity.writeToNBT(etag);
entity.writeTags(etag);
etag.setInt("Dimension", entity.worldObj.dimension.getDimensionId());
etag.setString("id", EntityRegistry.getEntityString(entity));
conn.writeCharacter(etag);
}
// else
// etag = new NBTTagCompound();
conn.writeToNBT(tag);
File tmp = new File(new File("players"), conn.getUser() + ".nbt.tmp");
File dat = new File(new File("players"), conn.getUser() + ".nbt");
conn.writeTags(tag);
File tmp = new File(new File("players"), conn.getUser() + ".cdt.tmp");
File dat = new File(new File("players"), conn.getUser() + ".cdt");
TagLoader.writeGZip(tag, tmp);
if(dat.exists()) {
dat.delete();
@ -1049,7 +1047,7 @@ public final class Server implements IThreadListener {
EntityNPC old = conn.getEntity();
old.unmount();
TagObject oldTag = new TagObject();
old.writeToNBT(oldTag);
old.writeTags(oldTag);
oldTag.setInt("Dimension", old.worldObj.dimension.getDimensionId());
oldTag.setString("id", EntityRegistry.getEntityString(old));
@ -1065,7 +1063,7 @@ public final class Server implements IThreadListener {
EntityNPC nplayer = conn.createPlayer(world, tag == null ? EntityRegistry.getEntityString(clazz) : tag.getString("id"));
// conn.sendPacket(new SPacketRespawn(world.dimension, EntityRegistry.getEntityID(nplayer)));
if(tag != null)
nplayer.readFromNBT(tag);
nplayer.readTags(tag);
else
nplayer.onInitialSpawn(null);
// nplayer.clonePlayer(old);