update 2025/10/15 upd
update:0
This commit is contained in:
@@ -40,8 +40,15 @@ public class AccountManager {
|
||||
for (String key : accountsConfig.getKeys(false)) {
|
||||
try {
|
||||
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);
|
||||
}
|
||||
} catch (IllegalArgumentException e) {
|
||||
@@ -52,9 +59,14 @@ public class AccountManager {
|
||||
|
||||
public void saveAccounts() {
|
||||
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 {
|
||||
accountsConfig.save(accountsFile);
|
||||
} catch (IOException e) {
|
||||
|
||||
Reference in New Issue
Block a user