Merge pull request #57 from EoD/fix-advancements-on-brand-new-server

fix advancement restore on brand new servers
This commit is contained in:
mlus 2025-05-03 11:17:18 +08:00 committed by GitHub
commit 162df73189
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -87,9 +87,26 @@ public class VanillaSync {
return;
}
File advancementsDir = advancements.getParentFile();
if (advancementsDir != null && !advancementsDir.exists()) {
PlayerSync.LOGGER.info("Creating advancements directory " + advancementsDir.getPath());
boolean createdDir = advancementsDir.mkdirs();
if (!createdDir) {
PlayerSync.LOGGER.error("Aborting advancements sync. Failed to create advancements "
+ "directory at " + advancementsDir.getPath());
return;
}
}
if (!advancements.exists()) {
advancements.createNewFile();
PlayerSync.LOGGER.info("Creating new advancement file for player " + player_uuid);
try {
PlayerSync.LOGGER.info("Creating new advancement file for player " + player_uuid);
advancements.createNewFile();
} catch (IOException e) {
PlayerSync.LOGGER.error("Aborting advancements sync. Failed to create advancements file at "
+ advancements.getAbsolutePath(), e);
return;
}
}
PlayerSync.LOGGER.debug("Writing advancement file " + advancements.toPath() + " for player " + player_uuid);
PlayerSync.LOGGER.trace("Writing advancement file for player " + player_uuid + ": "