forked from Upstream/mmocore
SQL & Yaml data loading/saving.
This commit is contained in:
parent
fd436a7953
commit
fe1507925c
@ -94,6 +94,9 @@ public class MMOCoreDataSynchronizer extends SQLDataSynchronizer<PlayerData> {
|
||||
MMOCoreUtils.jsonArrayToList(result.getString("friends")).forEach(str -> getData().getFriends().add(UUID.fromString(str)));
|
||||
if (!isEmpty(result.getString("last_spawn_point")))
|
||||
getData().setLastSpawnPointContext(new SpawnPointContext(new JsonParser().parseString(result.getString("last_spawn_point")).getAsJsonObject()));
|
||||
if (!isEmpty(result.getString("last_used_spawn_point")))
|
||||
getData().setLastUsedSpawnPointContext(new SpawnPointContext(new JsonParser().parseString(result.getString("last_spawn_point")).getAsJsonObject()));
|
||||
|
||||
getData().setShouldTeleportWhenJoin(result.getBoolean("should_teleport_when_join"));
|
||||
getData().setupSpawnPoint();
|
||||
|
||||
|
@ -34,6 +34,7 @@ public class SQLDataHandler extends SQLSynchronizedDataHandler<PlayerData, Offli
|
||||
"stamina", "FLOAT",
|
||||
"stellium", "FLOAT",
|
||||
"last_spawn_point", "LONGTEXT",
|
||||
"last_used_spawn_point", "LONGTEXT",
|
||||
"spawn_when_join", "TINYINT"};
|
||||
|
||||
@Override
|
||||
@ -68,6 +69,7 @@ public class SQLDataHandler extends SQLSynchronizedDataHandler<PlayerData, Offli
|
||||
"unlocked_items LONGTEXT," +
|
||||
"class_info LONGTEXT," +
|
||||
"last_spawn_point LONGTEXT," +
|
||||
"last_used_spawn_point LONGTEXT," +
|
||||
"spawn_when_join TINYINT," +
|
||||
"is_saved TINYINT," +
|
||||
"PRIMARY KEY (uuid));");
|
||||
@ -125,6 +127,7 @@ public class SQLDataHandler extends SQLSynchronizedDataHandler<PlayerData, Offli
|
||||
updater.addData("quests", data.getQuestData().toJsonString());
|
||||
updater.addData("class_info", createClassInfoData(data).toString());
|
||||
updater.addData("last_spawn_point", data.getLastSpawnPointContext().toJson());
|
||||
updater.addData("last_used_spawn_point", data.getLastUsedSpawnPointContext().toJson());
|
||||
updater.addJSONArray("unlocked_items", data.getUnlockedItems());
|
||||
if (!autosave)
|
||||
updater.addData("is_saved", 1);
|
||||
|
@ -139,6 +139,10 @@ public class YAMLPlayerDataHandler extends YAMLSynchronizedDataHandler<PlayerDat
|
||||
data.setLastSpawnPointContext(new SpawnPointContext(config.getString("last-spawn-point.id"),
|
||||
Optional.ofNullable(config.getString("last-spawn-point.server"))));
|
||||
}
|
||||
if (config.contains("last-used-spawn-point")) {
|
||||
data.setLastUsedSpawnPointContext(new SpawnPointContext(config.getString("last-used-spawn-point.id"),
|
||||
Optional.ofNullable(config.getString("last-used-spawn-point.server"))));
|
||||
}
|
||||
data.setShouldTeleportWhenJoin(config.getBoolean("should-teleport-when-join", false));
|
||||
data.setupSpawnPoint();
|
||||
if (data.isOnline() && !data.getPlayer().isDead())
|
||||
@ -178,7 +182,10 @@ public class YAMLPlayerDataHandler extends YAMLSynchronizedDataHandler<PlayerDat
|
||||
config.set("attribute", null);
|
||||
config.createSection("attribute");
|
||||
data.getAttributes().save(config.getConfigurationSection("attribute"));
|
||||
|
||||
if (data.getLastSpawnPointContext() != null)
|
||||
data.getLastUsedSpawnPointContext().save(config.createSection("last-used-spawn-point"));
|
||||
if (data.getLastUsedSpawnPointContext() != null)
|
||||
data.getLastUsedSpawnPointContext().save(config.createSection("last-used-spawn-point"));
|
||||
config.set("profession", null);
|
||||
config.createSection("profession");
|
||||
data.getCollectionSkills().save(config.getConfigurationSection("profession"));
|
||||
|
Loading…
Reference in New Issue
Block a user