update 2025/10/15 upd

update:0
This commit is contained in:
2025-10-15 20:23:22 +08:00
parent c5a3b66e5f
commit f8b8065c37

View File

@@ -40,8 +40,15 @@ public class AccountManager {
for (String key : accountsConfig.getKeys(false)) { for (String key : accountsConfig.getKeys(false)) {
try { try {
UUID uuid = UUID.fromString(key); UUID uuid = UUID.fromString(key);
PlayerAccount account = (PlayerAccount) accountsConfig.get(key);
if (account != null) { // 手动读取字段并构建PlayerAccount对象
String name = accountsConfig.getString(key + ".username");
String passwordHash = accountsConfig.getString(key + ".passwordHash");
long lastLoginTime = accountsConfig.getLong(key + ".lastLoginTime", 0);
if (name != null && passwordHash != null) {
PlayerAccount account = new PlayerAccount(name, passwordHash);
account.setLastLoginTime(lastLoginTime);
accounts.put(uuid, account); accounts.put(uuid, account);
} }
} catch (IllegalArgumentException e) { } catch (IllegalArgumentException e) {
@@ -52,9 +59,14 @@ public class AccountManager {
public void saveAccounts() { public void saveAccounts() {
for (Map.Entry<UUID, PlayerAccount> entry : accounts.entrySet()) { for (Map.Entry<UUID, PlayerAccount> entry : accounts.entrySet()) {
accountsConfig.set(entry.getKey().toString(), entry.getValue()); String uuidStr = entry.getKey().toString();
} PlayerAccount account = entry.getValue();
// 手动存储每个字段
accountsConfig.set(uuidStr + ".username", account.getUsername());
accountsConfig.set(uuidStr + ".passwordHash", account.getPasswordHash());
accountsConfig.set(uuidStr + ".lastLoginTime", account.getLastLoginTime());
}
try { try {
accountsConfig.save(accountsFile); accountsConfig.save(accountsFile);
} catch (IOException e) { } catch (IOException e) {