Skip to content

Commit

Permalink
allow nonstandard folder paths for world flags
Browse files Browse the repository at this point in the history
  • Loading branch information
mcmonkey4eva committed Jun 16, 2021
1 parent bc766d1 commit 2c09b69
Showing 1 changed file with 7 additions and 3 deletions.
Expand Up @@ -30,7 +30,7 @@ public void init() {
public void saveAll() {
for (Map.Entry<String, SavableMapFlagTracker> flagTracker : worldFlagTrackers.entrySet()) {
if (flagTracker.getValue().modified) {
flagTracker.getValue().saveToFile("./" + flagTracker.getKey() + "/denizen_flags");
flagTracker.getValue().saveToFile(flagPathFor(flagTracker.getKey()));
flagTracker.getValue().modified = false;
}
}
Expand All @@ -41,11 +41,15 @@ public void shutdown() {
worldFlagTrackers.clear();
}

public static String flagPathFor(String worldName) {
return Bukkit.getWorldContainer().getPath() + "/" + worldName + "/denizen_flags";
}

public static void loadWorldFlags(World world) {
if (worldFlagTrackers.containsKey(world.getName())) {
return;
}
worldFlagTrackers.put(world.getName(), SavableMapFlagTracker.loadFlagFile("./" + world.getName() + "/denizen_flags"));
worldFlagTrackers.put(world.getName(), SavableMapFlagTracker.loadFlagFile(flagPathFor(world.getName())));
}

@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
Expand All @@ -58,7 +62,7 @@ public void onWorldUnload(WorldUnloadEvent event) {
SavableMapFlagTracker flags = worldFlagTrackers.remove(event.getWorld().getName());
if (flags != null && flags.modified) {
flags.modified = false;
flags.saveToFile("./" + event.getWorld().getName() + "/denizen_flags");
flags.saveToFile(flagPathFor(event.getWorld().getName()));
}
}
}

0 comments on commit 2c09b69

Please sign in to comment.