mirror of
https://github.com/MiniDay/HamsterCurrency-Parent.git
synced 2025-08-22 12:15:31 +08:00
修复加载玩家存档时报错的bug
This commit is contained in:
@@ -4,7 +4,7 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
group 'cn.hamster3'
|
group 'cn.hamster3'
|
||||||
version '2.0.9-SNAPSHOT'
|
version '2.0.10-SNAPSHOT'
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
maven {
|
maven {
|
||||||
|
@@ -1,5 +1,6 @@
|
|||||||
package cn.hamster3.currency.data;
|
package cn.hamster3.currency.data;
|
||||||
|
|
||||||
|
import cn.hamster3.service.bukkit.api.ServiceInfoAPI;
|
||||||
import com.google.gson.JsonElement;
|
import com.google.gson.JsonElement;
|
||||||
import com.google.gson.JsonObject;
|
import com.google.gson.JsonObject;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
@@ -30,14 +31,12 @@ public class PlayerData {
|
|||||||
|
|
||||||
public PlayerData(JsonObject object) {
|
public PlayerData(JsonObject object) {
|
||||||
uuid = UUID.fromString(object.get("uuid").getAsString());
|
uuid = UUID.fromString(object.get("uuid").getAsString());
|
||||||
OfflinePlayer player = Bukkit.getOfflinePlayer(uuid);
|
if (object.has("playerName")) {
|
||||||
if (player.getName() != null) {
|
|
||||||
playerName = player.getName();
|
|
||||||
} else if (object.has("playerName") && !object.get("playerName").isJsonNull()) {
|
|
||||||
playerName = object.get("playerName").getAsString();
|
playerName = object.get("playerName").getAsString();
|
||||||
} else {
|
}else {
|
||||||
playerName = null;
|
playerName = ServiceInfoAPI.getPlayerInfo(uuid).getPlayerName();
|
||||||
}
|
}
|
||||||
|
|
||||||
playerCurrencies = new HashMap<>();
|
playerCurrencies = new HashMap<>();
|
||||||
JsonObject playerCurrenciesJson = object.getAsJsonObject("playerCurrencies");
|
JsonObject playerCurrenciesJson = object.getAsJsonObject("playerCurrencies");
|
||||||
for (Map.Entry<String, JsonElement> entry : playerCurrenciesJson.entrySet()) {
|
for (Map.Entry<String, JsonElement> entry : playerCurrenciesJson.entrySet()) {
|
||||||
@@ -63,7 +62,7 @@ public class PlayerData {
|
|||||||
public JsonObject saveToJson() {
|
public JsonObject saveToJson() {
|
||||||
JsonObject object = new JsonObject();
|
JsonObject object = new JsonObject();
|
||||||
object.addProperty("uuid", uuid.toString());
|
object.addProperty("uuid", uuid.toString());
|
||||||
object.addProperty("playerName", playerName.replace("'", "\\'"));
|
object.addProperty("playerName", playerName);
|
||||||
JsonObject playerCurrenciesJson = new JsonObject();
|
JsonObject playerCurrenciesJson = new JsonObject();
|
||||||
for (Map.Entry<String, Double> entry : playerCurrencies.entrySet()) {
|
for (Map.Entry<String, Double> entry : playerCurrencies.entrySet()) {
|
||||||
playerCurrenciesJson.addProperty(entry.getKey(), entry.getValue());
|
playerCurrenciesJson.addProperty(entry.getKey(), entry.getValue());
|
||||||
|
Reference in New Issue
Block a user