9
0
mirror of https://github.com/WiIIiam278/HuskSync.git synced 2025-12-28 02:59:13 +00:00

Fix unsynced players having data saved on world save / death

This commit is contained in:
William
2022-12-27 19:31:14 +00:00
parent 70323fb2e2
commit 101e0c11d7

View File

@@ -180,8 +180,11 @@ public abstract class EventListener {
if (disabling || !plugin.getSettings().saveOnWorldSave) {
return;
}
usersInWorld.forEach(user -> user.getUserData(plugin.getLoggingAdapter(), plugin.getSettings()).join().ifPresent(
userData -> plugin.getDatabase().setUserData(user, userData, DataSaveCause.WORLD_SAVE).join()));
usersInWorld.stream()
.filter(user -> !lockedPlayers.contains(user.uuid))
.forEach(user -> user.getUserData(plugin.getLoggingAdapter(), plugin.getSettings())
.thenAccept(data -> data.ifPresent(userData -> plugin.getDatabase()
.setUserData(user, userData, DataSaveCause.WORLD_SAVE))));
}
/**
@@ -191,7 +194,7 @@ public abstract class EventListener {
* @param drops The items that this user would have dropped
*/
protected void saveOnPlayerDeath(@NotNull OnlineUser user, @NotNull ItemData drops) {
if (disabling || !plugin.getSettings().saveOnDeath) {
if (disabling || !plugin.getSettings().saveOnDeath || lockedPlayers.contains(user.uuid)) {
return;
}