diff --git a/src/com/massivecraft/factions/P.java b/src/com/massivecraft/factions/P.java index aa18d0db..90e3e243 100644 --- a/src/com/massivecraft/factions/P.java +++ b/src/com/massivecraft/factions/P.java @@ -94,8 +94,7 @@ public class P extends MPlugin //setupPermissions(); integrateEssentialsChat(); setupSpout(this); - Econ.doSetup(); - Econ.oldMoneyDoTransfer(); + Econ.initialSetup(this); CapiFeatures.setup(); setupLWC(); diff --git a/src/com/massivecraft/factions/integration/Econ.java b/src/com/massivecraft/factions/integration/Econ.java index bdf74f6d..407619ac 100644 --- a/src/com/massivecraft/factions/integration/Econ.java +++ b/src/com/massivecraft/factions/integration/Econ.java @@ -33,7 +33,26 @@ public class Econ { return econ != null; } - + + public static void initialSetup(P p) + { + if (Bukkit.getServer().getPluginManager().getPlugin("Vault") == null) + { + P.p.log("Economy integration is "+(Conf.econEnabled ? "enabled, but" : "disabled, and")+" the plugin \"Vault\" is not installed."); + return; + } + + p.getServer().getScheduler().scheduleSyncDelayedTask(p, new Runnable() + { + @Override + public void run() + { + doSetup(); + oldMoneyDoTransfer(); + } + }, 1); + } + public static void doSetup() { if (isSetup()) return; @@ -41,6 +60,11 @@ public class Econ if (Bukkit.getServer().getPluginManager().getPlugin("Vault") != null) { RegisteredServiceProvider rsp = Bukkit.getServer().getServicesManager().getRegistration(Economy.class); + if (rsp == null) + { + P.p.log("Economy integration is "+(Conf.econEnabled ? "enabled" : "disabled")+", but the plugin \"Vault\" is not hooked into an economy plugin."); + return; + } econ = rsp.getProvider(); P.p.log("Economy integration through Vault plugin successful."); @@ -48,10 +72,6 @@ public class Econ if ( ! Conf.econEnabled) P.p.log("NOTE: Economy is disabled. Enable with command: f config econEnabled true"); } - else - { - P.p.log("Economy integration is "+(Conf.econEnabled ? "enabled, but" : "disabled, and")+" the plugin \"Vault\" is not installed."); - } P.p.cmdBase.cmdHelp.updateHelp(); }