From 14480d651f7af7f213f54907fe076fe93849ba4b Mon Sep 17 00:00:00 2001 From: Coniin Date: Sun, 4 Aug 2013 17:33:17 +0200 Subject: [PATCH] support Minefaconomy 0.2 added needed Files for Minefaconomy Support, and chenges to pom.xml --- lib/Minefaconomy-0.2.jar | Bin 0 -> 32720 bytes pom.xml | 7 + src/net/milkbowl/vault/Vault.java | 6 +- .../economy/plugins/Economy_Minefaconomy.java | 219 ++++++++++++++++++ 4 files changed, 231 insertions(+), 1 deletion(-) create mode 100644 lib/Minefaconomy-0.2.jar create mode 100644 src/net/milkbowl/vault/economy/plugins/Economy_Minefaconomy.java diff --git a/lib/Minefaconomy-0.2.jar b/lib/Minefaconomy-0.2.jar new file mode 100644 index 0000000000000000000000000000000000000000..d8852cf4c2da9914773f998ce185f0892b5d2091 GIT binary patch literal 32720 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 z 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 I)x%%^2c)7QtN;K2 literal 0 HcmV?d00001 diff --git a/pom.xml b/pom.xml index cb9cf83..b7f5f1f 100644 --- a/pom.xml +++ b/pom.xml @@ -81,6 +81,13 @@ Vault currently supports the following: Permissions 3, PEX, GroupManager, bPerms DroxPerms 0.5.0 + + me.coniin.plugins.minefaconomy + MineFaConomy + 0.2 + system + ${project.basedir}/lib/Minefaconomy.jar + net.krinsoft Privileges diff --git a/src/net/milkbowl/vault/Vault.java b/src/net/milkbowl/vault/Vault.java index 2b2873c..c86fc4e 100644 --- a/src/net/milkbowl/vault/Vault.java +++ b/src/net/milkbowl/vault/Vault.java @@ -60,6 +60,7 @@ import net.milkbowl.vault.economy.plugins.Economy_iConomy4; import net.milkbowl.vault.economy.plugins.Economy_iConomy5; import net.milkbowl.vault.economy.plugins.Economy_iConomy6; import net.milkbowl.vault.economy.plugins.Economy_SDFEconomy; +import net.milkbowl.vault.economy.plugins.Economy_Minefaconomy; import net.milkbowl.vault.permission.Permission; import net.milkbowl.vault.permission.plugins.Permission_DroxPerms; import net.milkbowl.vault.permission.plugins.Permission_GroupManager; @@ -202,7 +203,10 @@ public class Vault extends JavaPlugin { private void loadEconomy() { // Try to load MiConomy hookEconomy("MiConomy", Economy_MiConomy.class, ServicePriority.Normal, "com.gmail.bleedobsidian.miconomy.Main"); - + + // Try to load MiFaConomy + hookEconomy("MineFaConomy", Economy_Minefaconomy.class, ServicePriority.Normal, "me.coniin.plugins.minefaconomy.Minefaconomy"); + // Try to load MultiCurrency hookEconomy("MultiCurrency", Economy_MultiCurrency.class, ServicePriority.Normal, "me.ashtheking.currency.Currency", "me.ashtheking.currency.CurrencyList"); diff --git a/src/net/milkbowl/vault/economy/plugins/Economy_Minefaconomy.java b/src/net/milkbowl/vault/economy/plugins/Economy_Minefaconomy.java new file mode 100644 index 0000000..9b1dc70 --- /dev/null +++ b/src/net/milkbowl/vault/economy/plugins/Economy_Minefaconomy.java @@ -0,0 +1,219 @@ +package net.milkbowl.vault.economy.plugins; + +import java.util.List; +import java.util.logging.Logger; + +import org.bukkit.Bukkit; +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.Listener; +import org.bukkit.event.server.PluginDisableEvent; +import org.bukkit.event.server.PluginEnableEvent; +import org.bukkit.plugin.Plugin; + +import me.coniin.plugins.minefaconomy.Minefaconomy; + +import net.milkbowl.vault.economy.Economy; +import net.milkbowl.vault.economy.EconomyResponse; + +public class Economy_Minefaconomy implements Economy { + private static final Logger log = Logger.getLogger("Minecraft"); + + private final String name = "Minefaconomy"; + + private Plugin plugin = null; + private Minefaconomy economy = null; + + public Economy_Minefaconomy(Plugin plugin) { + this.plugin = plugin; + Bukkit.getServer().getPluginManager() + .registerEvents(new EconomyServerListener(this), plugin); + Plugin econ = null; + // Load Plugin in case it was loaded before + if (economy == null) { + econ = plugin.getServer().getPluginManager() + .getPlugin("Minefaconomy"); + log.info("Loading Minefaconomy"); + } + if (econ != null && econ.isEnabled()) { + economy = (Minefaconomy) econ; + log.info(String.format("[%s][Economy] %s hooked.", plugin + .getDescription().getName(), this.name)); + return; + } + log.info("Error Loading Minefaconomy"); + } + + public class EconomyServerListener implements Listener { + Economy_Minefaconomy economy_minefaconomy = null; + + public EconomyServerListener(Economy_Minefaconomy economy_minefaconomy) { + this.economy_minefaconomy = economy_minefaconomy; + } + + @EventHandler(priority = EventPriority.MONITOR) + public void onPluginEnable(PluginEnableEvent event) { + if (economy_minefaconomy.economy == null) { + Plugin mfc = plugin.getServer().getPluginManager().getPlugin("Minefaconomy"); + + if (mfc != null) { + economy_minefaconomy.economy = (Minefaconomy) economy; + log.info(String.format("[%s][Economy] %s hooked.", plugin.getDescription().getName(), economy_minefaconomy.name)); + } + } + } + + @EventHandler(priority = EventPriority.MONITOR) + public void onPluginDisable(PluginDisableEvent event) { + if (economy_minefaconomy.economy != null) { + if (event.getPlugin().getDescription().getName().equals("Minefaconomy")) { + economy_minefaconomy.economy = null; + log.info(String.format("[%s][Economy] %s unhooked.", plugin.getDescription().getName(), economy_minefaconomy.name)); + } + } + } + } + + @Override + public boolean isEnabled() { + return economy != null && economy.isEnabled(); + } + + @Override + public String getName() { + return name; + } + + @Override + public int fractionalDigits() { + return economy.vaultLayer.fractionalDigits(); + } + + @Override + public String format(double amount) { + return economy.vaultLayer.format(amount); + } + + @Override + public String currencyNamePlural() { + return economy.vaultLayer.currencyNamePlural(); + } + + @Override + public String currencyNameSingular() { + return economy.vaultLayer.currencyNameSingular(); + } + + @Override + public boolean hasAccount(String playerName) { + return economy.vaultLayer.hasAccount(playerName); + } + + @Override + public boolean hasAccount(String playerName, String worldName) { + return economy.vaultLayer.hasAccount(playerName); + } + + @Override + public double getBalance(String playerName) { + return economy.vaultLayer.getBalance(playerName); + } + + @Override + public double getBalance(String playerName, String world) { + return economy.vaultLayer.getBalance(playerName); + } + + @Override + public boolean has(String playerName, double amount) { + return economy.vaultLayer.has(playerName, amount); + } + + @Override + public boolean has(String playerName, String worldName, double amount) { + return economy.vaultLayer.has(playerName, amount); + } + + @Override + public EconomyResponse withdrawPlayer(String playerName, double amount) { + return economy.vaultLayer.withdrawPlayer(playerName, amount); + } + + @Override + public EconomyResponse withdrawPlayer(String playerName, String worldName, + double amount) { + return economy.vaultLayer.withdrawPlayer(playerName, amount); + } + + @Override + public EconomyResponse depositPlayer(String playerName, double amount) { + return economy.vaultLayer.depositPlayer(playerName, amount); + } + + @Override + public EconomyResponse depositPlayer(String playerName, String worldName, + double amount) { + return economy.vaultLayer.depositPlayer(playerName, amount); + } + + @Override + public boolean createPlayerAccount(String playerName) { + return economy.vaultLayer.createPlayerAccount(playerName); + } + + @Override + public boolean createPlayerAccount(String playerName, String worldName) { + return economy.vaultLayer.createPlayerAccount(playerName); + } + + @Override + public boolean hasBankSupport() { + return economy.vaultLayer.hasBankSupport(); + } + + @Override + public EconomyResponse createBank(String name, String player) { + return economy.vaultLayer.createBank(name, player); + } + + @Override + public EconomyResponse deleteBank(String name) { + return economy.vaultLayer.deleteBank(name); + } + + @Override + public EconomyResponse bankBalance(String name) { + return economy.vaultLayer.bankBalance(name); + } + + @Override + public EconomyResponse bankHas(String name, double amount) { + return economy.vaultLayer.bankHas(name, amount); + } + + @Override + public EconomyResponse bankWithdraw(String name, double amount) { + return economy.vaultLayer.bankWithdraw(name, amount); + } + + @Override + public EconomyResponse bankDeposit(String name, double amount) { + return economy.vaultLayer.bankDeposit(name, amount); + } + + @Override + public EconomyResponse isBankOwner(String name, String playerName) { + return economy.vaultLayer.isBankOwner(name, playerName); + } + + @Override + public EconomyResponse isBankMember(String name, String playerName) { + return economy.vaultLayer.isBankMember(name, playerName); + } + + @Override + public List getBanks() { + return economy.vaultLayer.getBanks(); + } + +}