From 5042b57fc554d635a0918d9a02b6257d3f5ecbed Mon Sep 17 00:00:00 2001 From: Daniel Saukel Date: Sun, 24 Jul 2016 13:43:40 +0200 Subject: [PATCH] "Sync" reload command with new features --- abstract/pom.xml | 2 +- core/pom.xml | 2 +- .../github/dre2n/dungeonsxl/DungeonsXL.java | 81 ++++++++++++------- .../dungeonsxl/command/ReloadCommand.java | 20 +---- craftbukkit_1_10_R1/pom.xml | 2 +- craftbukkit_1_9_R1/pom.xml | 2 +- craftbukkit_1_9_R2/pom.xml | 2 +- pom.xml | 2 +- shade/pom.xml | 2 +- 9 files changed, 62 insertions(+), 53 deletions(-) diff --git a/abstract/pom.xml b/abstract/pom.xml index d822a50a..a7936f3d 100644 --- a/abstract/pom.xml +++ b/abstract/pom.xml @@ -8,6 +8,6 @@ io.github.dre2n dungeonsxl - 0.14.3 + 0.14.4 diff --git a/core/pom.xml b/core/pom.xml index af25b0ea..d074bf05 100644 --- a/core/pom.xml +++ b/core/pom.xml @@ -8,7 +8,7 @@ io.github.dre2n dungeonsxl - 0.14.3 + 0.14.4 diff --git a/core/src/main/java/io/github/dre2n/dungeonsxl/DungeonsXL.java b/core/src/main/java/io/github/dre2n/dungeonsxl/DungeonsXL.java index d5a7d9f8..edd5a20a 100644 --- a/core/src/main/java/io/github/dre2n/dungeonsxl/DungeonsXL.java +++ b/core/src/main/java/io/github/dre2n/dungeonsxl/DungeonsXL.java @@ -31,6 +31,7 @@ import io.github.dre2n.dungeonsxl.game.Game; import io.github.dre2n.dungeonsxl.game.GameTypes; import io.github.dre2n.dungeonsxl.global.GlobalProtections; import io.github.dre2n.dungeonsxl.listener.*; +import io.github.dre2n.dungeonsxl.loottable.DLootTables; import io.github.dre2n.dungeonsxl.mob.DMobTypes; import io.github.dre2n.dungeonsxl.mob.ExternalMobProviders; import io.github.dre2n.dungeonsxl.player.DClasses; @@ -73,6 +74,7 @@ public class DungeonsXL extends BRPlugin { public static File SCRIPTS; public static File ANNOUNCERS; public static File CLASSES; + public static File LOOT_TABLES; public static File MOBS; public static File SIGNS; @@ -92,6 +94,7 @@ public class DungeonsXL extends BRPlugin { private DPlayers dPlayers; private Announcers announcers; private DClasses dClasses; + private DLootTables dLootTables; private DMobTypes dMobTypes; private SignScripts signScripts; private DWorlds dWorlds; @@ -128,32 +131,9 @@ public class DungeonsXL extends BRPlugin { public void onEnable() { super.onEnable(); instance = this; - initFolders(); - loadCaliburnAPI(); - // Load Language - loadMessageConfig(new File(LANGUAGES, "english.yml")); - // Load Config - loadGlobalData(new File(getDataFolder(), "data.yml")); - loadMainConfig(new File(getDataFolder(), "config.yml")); - // Load Language 2 - loadMessageConfig(new File(LANGUAGES, mainConfig.getLanguage() + ".yml")); - DPermissions.register(); - loadGameTypes(); - loadRequirementTypes(); - loadRewardTypes(); - loadTriggers(); - loadDSigns(); - loadDungeons(); - loadGlobalProtections(); - loadExternalMobProviders(); - loadDPlayers(); - loadAnnouncers(ANNOUNCERS); - loadDClasses(CLASSES); - loadDMobTypes(MOBS); - loadSignScripts(SIGNS); - loadDWorlds(MAPS); - loadDCommands(); + initFolders(); + loadCore(); manager.registerEvents(new EntityListener(), this); manager.registerEvents(new GUIListener(), this); @@ -166,7 +146,7 @@ public class DungeonsXL extends BRPlugin { } // Load All - loadAll(); + loadData(); // Tasks startAnnouncerTask(mainConfig.getAnnouncmentInterval()); @@ -253,6 +233,11 @@ public class DungeonsXL extends BRPlugin { CLASSES.mkdir(); } + LOOT_TABLES = new File(SCRIPTS, "loottables"); + if (!LOOT_TABLES.exists()) { + LOOT_TABLES.mkdir(); + } + MOBS = new File(SCRIPTS, "mobs"); if (!MOBS.exists()) { MOBS.mkdir(); @@ -264,6 +249,34 @@ public class DungeonsXL extends BRPlugin { } } + public void loadCore() { + loadCaliburnAPI(); + // Load Language + loadMessageConfig(new File(LANGUAGES, "english.yml")); + // Load Config + loadGlobalData(new File(getDataFolder(), "data.yml")); + loadMainConfig(new File(getDataFolder(), "config.yml")); + // Load Language 2 + loadMessageConfig(new File(LANGUAGES, mainConfig.getLanguage() + ".yml")); + DPermissions.register(); + loadGameTypes(); + loadRequirementTypes(); + loadRewardTypes(); + loadTriggers(); + loadDSigns(); + loadDungeons(); + loadGlobalProtections(); + loadExternalMobProviders(); + loadDPlayers(); + loadAnnouncers(ANNOUNCERS); + loadDClasses(CLASSES); + loadDLootTables(LOOT_TABLES); + loadDMobTypes(MOBS); + loadSignScripts(SIGNS); + loadDWorlds(MAPS); + loadDCommands(); + } + // Save and load public void saveData() { protections.saveAll(); @@ -271,7 +284,7 @@ public class DungeonsXL extends BRPlugin { dWorlds.saveAll(); } - public void loadAll() { + public void loadData() { protections.loadAll(); dPlayers.loadAll(); DSavePlayer.load(); @@ -507,6 +520,20 @@ public class DungeonsXL extends BRPlugin { dClasses = new DClasses(file); } + /** + * @return the loaded instance of DLootTables + */ + public DLootTables getDLootTables() { + return dLootTables; + } + + /** + * load / reload a new instance of DLootTables + */ + public void loadDLootTables(File file) { + dLootTables = new DLootTables(file); + } + /** * @return the loaded instance of DMobTypes */ diff --git a/core/src/main/java/io/github/dre2n/dungeonsxl/command/ReloadCommand.java b/core/src/main/java/io/github/dre2n/dungeonsxl/command/ReloadCommand.java index 74bbf18a..ff60988d 100644 --- a/core/src/main/java/io/github/dre2n/dungeonsxl/command/ReloadCommand.java +++ b/core/src/main/java/io/github/dre2n/dungeonsxl/command/ReloadCommand.java @@ -67,25 +67,7 @@ public class ReloadCommand extends BRCommand { plugin.saveData(); plugin.getMessageConfig().save(); - // Load Config - // Load Language - plugin.loadMessageConfig(new File(plugin.getDataFolder(), "languages/en.yml")); - // Load Config - plugin.loadGlobalData(new File(plugin.getDataFolder(), "data.yml")); - plugin.loadMainConfig(new File(plugin.getDataFolder(), "config.yml")); - // Load Language 2 - plugin.loadMessageConfig(new File(plugin.getDataFolder(), "languages/" + plugin.getMainConfig().getLanguage() + ".yml")); - plugin.loadDCommands(); - plugin.loadGameTypes(); - plugin.loadRequirementTypes(); - plugin.loadRewardTypes(); - plugin.loadTriggers(); - plugin.loadDSigns(); - plugin.loadDungeons(); - plugin.loadAnnouncers(DungeonsXL.ANNOUNCERS); - plugin.loadDClasses(DungeonsXL.CLASSES); - plugin.loadDMobTypes(DungeonsXL.MOBS); - plugin.loadSignScripts(DungeonsXL.SIGNS); + plugin.loadCore(); MessageUtil.sendPluginTag(sender, plugin); MessageUtil.sendCenteredMessage(sender, DMessages.CMD_RELOAD_DONE.getMessage()); diff --git a/craftbukkit_1_10_R1/pom.xml b/craftbukkit_1_10_R1/pom.xml index 0f9b030d..ea1a5bd9 100644 --- a/craftbukkit_1_10_R1/pom.xml +++ b/craftbukkit_1_10_R1/pom.xml @@ -8,7 +8,7 @@ io.github.dre2n dungeonsxl - 0.14.3 + 0.14.4 diff --git a/craftbukkit_1_9_R1/pom.xml b/craftbukkit_1_9_R1/pom.xml index 9b4408cc..f9edf9f0 100644 --- a/craftbukkit_1_9_R1/pom.xml +++ b/craftbukkit_1_9_R1/pom.xml @@ -8,7 +8,7 @@ io.github.dre2n dungeonsxl - 0.14.3 + 0.14.4 diff --git a/craftbukkit_1_9_R2/pom.xml b/craftbukkit_1_9_R2/pom.xml index 3811c543..99459d94 100644 --- a/craftbukkit_1_9_R2/pom.xml +++ b/craftbukkit_1_9_R2/pom.xml @@ -8,7 +8,7 @@ io.github.dre2n dungeonsxl - 0.14.3 + 0.14.4 diff --git a/pom.xml b/pom.xml index e598dd8e..a6b4dfd8 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 io.github.dre2n dungeonsxl - 0.14.3 + 0.14.4 pom DungeonsXL https://dre2n.github.io diff --git a/shade/pom.xml b/shade/pom.xml index 0362a405..d67cf276 100644 --- a/shade/pom.xml +++ b/shade/pom.xml @@ -8,7 +8,7 @@ io.github.dre2n dungeonsxl - 0.14.3 + 0.14.4 dungeonsxl-${project.version}${buildNo}