diff --git a/core/src/main/java/de/erethon/dungeonsxl/dungeon/DungeonConfig.java b/core/src/main/java/de/erethon/dungeonsxl/dungeon/DungeonConfig.java index abd73970..016e0985 100644 --- a/core/src/main/java/de/erethon/dungeonsxl/dungeon/DungeonConfig.java +++ b/core/src/main/java/de/erethon/dungeonsxl/dungeon/DungeonConfig.java @@ -23,7 +23,6 @@ import de.erethon.dungeonsxl.world.WorldConfig; import java.io.File; import java.util.ArrayList; import java.util.List; -import org.bukkit.configuration.ConfigurationSection; /** * Represents a dungeon script. See {@link de.erethon.dungeonsxl.dungeon.DDungeon}. @@ -128,18 +127,8 @@ public class DungeonConfig extends DREConfig { floorCount = config.getInt("floorCount", floors.size() + 2); removeWhenPlayed = config.getBoolean("removeWhenPlayed", removeWhenPlayed); - ConfigurationSection overrideSection = config.getConfigurationSection("overrideValues"); - if (overrideSection != null) { - overrideValues = new WorldConfig(plugin, overrideSection); - } else { - overrideValues = new WorldConfig(plugin); - } - ConfigurationSection defaultSection = config.getConfigurationSection("defaultValues"); - if (defaultValues != null) { - defaultValues = new WorldConfig(plugin, defaultSection); - } else { - defaultValues = new WorldConfig(plugin); - } + overrideValues = new WorldConfig(plugin, config.getConfigurationSection("overrideValues")); + defaultValues = new WorldConfig(plugin, config.getConfigurationSection("defaultValues")); } @Override diff --git a/core/src/main/java/de/erethon/dungeonsxl/world/DResourceWorld.java b/core/src/main/java/de/erethon/dungeonsxl/world/DResourceWorld.java index b8a88e6b..69ce3c7e 100644 --- a/core/src/main/java/de/erethon/dungeonsxl/world/DResourceWorld.java +++ b/core/src/main/java/de/erethon/dungeonsxl/world/DResourceWorld.java @@ -133,11 +133,7 @@ public class DResourceWorld implements ResourceWorld { @Override public void addInvitedPlayer(OfflinePlayer player) { - if (config == null) { - config = new WorldConfig(plugin); - } - - config.addInvitedPlayer(player.getUniqueId().toString()); + getConfig(true).addInvitedPlayer(player.getUniqueId().toString()); config.save(); } diff --git a/core/src/main/java/de/erethon/dungeonsxl/world/WorldConfig.java b/core/src/main/java/de/erethon/dungeonsxl/world/WorldConfig.java index d2283413..f9d60614 100644 --- a/core/src/main/java/de/erethon/dungeonsxl/world/WorldConfig.java +++ b/core/src/main/java/de/erethon/dungeonsxl/world/WorldConfig.java @@ -47,21 +47,18 @@ public class WorldConfig extends GameRuleContainer { private List invitedPlayers = new ArrayList<>(); private Environment worldEnvironment; - public WorldConfig(DungeonsXL plugin) { - this.plugin = plugin; - } - public WorldConfig(DungeonsXL plugin, File file) { - this(plugin); - + this.plugin = plugin; this.file = file; config = YamlConfiguration.loadConfiguration(file); load(); } public WorldConfig(DungeonsXL plugin, ConfigurationSection config) { - this(plugin); - + this.plugin = plugin; + if (config == null) { + config = new YamlConfiguration(); + } this.config = config; load(); }