From 940a916667b0b71e3327c4b4d05643c89aecf38d Mon Sep 17 00:00:00 2001 From: David Mitchell Date: Fri, 17 Jan 2014 10:37:26 -0500 Subject: [PATCH] InTime2 Support Updated to latest Vault and update to correct version of InTime2 --- README.md | 1 + lib/InTime2.jar | Bin 0 -> 29271 bytes pom.xml | 7 + src/net/milkbowl/vault/Vault.java | 6 +- .../economy/plugins/Economy_InTime2.java | 214 ++++++++++++++++++ 5 files changed, 227 insertions(+), 1 deletion(-) create mode 100644 lib/InTime2.jar create mode 100644 src/net/milkbowl/vault/economy/plugins/Economy_InTime2.java diff --git a/README.md b/README.md index 5a26a2a..8bfa716 100644 --- a/README.md +++ b/README.md @@ -87,6 +87,7 @@ Github and we'll get to it at our convenience. - iConomy 4 (http://forums.bukkit.org/threads/40/) - iConomy 5 (http://forums.bukkit.org/threads/40/) - iConomy 6 (http://forums.bukkit.org/threads/40/) + - InTime2 - McMoney - Miconomy - MineConomy (http://dev.bukkit.org/server-mods/mineconomy/) diff --git a/lib/InTime2.jar b/lib/InTime2.jar new file mode 100644 index 0000000000000000000000000000000000000000..b434e0e88d5f30d20a653fb3d623738b0cdbaefa GIT binary patch literal 29271 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 ${bukkitVersion} + + com.BlackMage.InTime2.InTime2 + InTime2 + 0.3.7 + system + ${project.basedir}/lib/InTime2.jar + com.gmail.bleedobsidian.miconomy MiConomy diff --git a/src/net/milkbowl/vault/Vault.java b/src/net/milkbowl/vault/Vault.java index 43cf97d..037ce20 100644 --- a/src/net/milkbowl/vault/Vault.java +++ b/src/net/milkbowl/vault/Vault.java @@ -56,6 +56,7 @@ import net.milkbowl.vault.economy.plugins.Economy_GoldIsMoney; import net.milkbowl.vault.economy.plugins.Economy_GoldIsMoney2; import net.milkbowl.vault.economy.plugins.Economy_GoldenChestEconomy; import net.milkbowl.vault.economy.plugins.Economy_Gringotts; +import net.milkbowl.vault.economy.plugins.Economy_InTime2; import net.milkbowl.vault.economy.plugins.Economy_McMoney; import net.milkbowl.vault.economy.plugins.Economy_MineConomy; import net.milkbowl.vault.economy.plugins.Economy_MultiCurrency; @@ -255,7 +256,10 @@ public class Vault extends JavaPlugin { 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"); + hookEconomy("MineFaConomy", Economy_Minefaconomy.class, ServicePriority.Normal, "me.coniin.plugins.minefaconomy.Minefaconomy"); + + // Try to load InTime2 + hookEconomy("InTime2", Economy_InTime2.class, ServicePriority.Normal, "com.BlackMage.InTime2.InTime2"); // 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_InTime2.java b/src/net/milkbowl/vault/economy/plugins/Economy_InTime2.java new file mode 100644 index 0000000..344845f --- /dev/null +++ b/src/net/milkbowl/vault/economy/plugins/Economy_InTime2.java @@ -0,0 +1,214 @@ ++ + /* This file is part of Vault. ++ + ++ + Vault is free software: you can redistribute it and/or modify ++ + it under the terms of the GNU Lesser General Public License as published by ++ + the Free Software Foundation, either version 3 of the License, or ++ + (at your option) any later version. ++ + ++ + Vault is distributed in the hope that it will be useful, ++ + but WITHOUT ANY WARRANTY; without even the implied warranty of ++ + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ + GNU Lesser General Public License for more details. ++ + ++ + You should have received a copy of the GNU Lesser General Public License ++ + along with Vault. If not, see . ++ + */ ++ +package net.milkbowl.vault.economy.plugins; ++ + ++ +import java.util.List; ++ +import java.util.logging.Logger; ++ + ++ +import net.milkbowl.vault.economy.Economy; ++ +import net.milkbowl.vault.economy.EconomyResponse; ++ +import net.milkbowl.vault.economy.EconomyResponse.ResponseType; ++ + ++ +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 com.BlackMage.Intime.Intime ++ + ++ +public class Economy_InTime2 implements Economy { ++ + private static final Logger log = Logger.getLogger("Minecraft"); ++ + ++ + private String name = "InTime2"; ++ + private Plugin plugin = null; ++ + protected Main economy = null; ++ + ++ + public Economy_InTime2(Plugin plugin) { ++ + this.plugin = plugin; ++ + Bukkit.getServer().getPluginManager().registerEvents(new EconomyServerListener(this), plugin); ++ + // Load Plugin in case it was loaded before ++ + if (economy == null) { ++ + Plugin ec = plugin.getServer().getPluginManager().getPlugin("InTime2"); ++ + if (ec != null && ec.isEnabled() && ec.getClass().getName().equals("com.BlackMage.InTime2.InTime2")) { ++ + log.info(String.format("[%s][Economy] %s hooked.", plugin.getDescription().getName(), name)); ++ + } ++ + } ++ + } ++ + ++ + @Override ++ + public boolean isEnabled() { ++ + if (economy == null) { ++ + return false; ++ + } else { ++ + return true; ++ + } ++ + } ++ + ++ + @Override ++ + public String getName() { ++ + return name; ++ + } ++ + ++ + @Override ++ + public String format(double amount) { ++ + return Functions.format(amount); ++ + } ++ + ++ + @Override ++ + public String currencyNameSingular() { ++ + return Functions.currencyName(); ++ + } ++ + ++ + @Override ++ + public String currencyNamePlural() { ++ + return Functions.currencyName(); ++ + } ++ + ++ + @Override ++ + public double getBalance(String playerName) { ++ + return (double) Backend.getMoney(playerName); ++ + } ++ + ++ + @Override ++ + public EconomyResponse withdrawPlayer(String playerName, double amount) { ++ + if (amount < 0) { ++ + return new EconomyResponse(0, 0, ResponseType.FAILURE, "Cannot withdraw negative funds"); ++ + } ++ + ++ + if (Backend.hasEnoughMoney(playerName, amount)) { ++ + int newAmount = Backend.getMoney(playerName) - amount; ++ + Backend.setMoney(playerName, newAmount); ++ + return new EconomyResponse(amount, newAmount, ResponseType.SUCCESS, null); ++ + } else { ++ + return new EconomyResponse(0, Backend.getMoney(playerName), ResponseType.FAILURE, "Insufficient funds"); ++ + } ++ + } ++ + ++ + @Override ++ + public EconomyResponse depositPlayer(String playerName, double amount) { ++ + if (amount < 0) { ++ + return new EconomyResponse(0, 0, ResponseType.FAILURE, "Cannot desposit negative funds"); ++ + } ++ + ++ + int newAmount = Backend.getMoney(playerName) + amount; ++ + Backend.setMoney(playerName, newAmount); ++ + return new EconomyResponse(amount, newAmount, ResponseType.SUCCESS, null); ++ + } ++ + ++ + @Override ++ + public boolean has(String playerName, double amount) { ++ + return getBalance(playerName) >= amount; ++ + } ++ + ++ + @Override ++ + public EconomyResponse createBank(String name, String player) { ++ + ++ + return new EconomyResponse(0, 0, ResponseType.FAILURE, "Banks not supported by InTime2!"); ++ + } ++ + ++ + @Override ++ + public EconomyResponse deleteBank(String name) { ++ + return new EconomyResponse(0, 0, ResponseType.FAILURE, "Banks not supported by InTime2!"); ++ + } ++ + ++ + @Override ++ + public EconomyResponse bankHas(String name, double amount) { ++ + return new EconomyResponse(0, 0, ResponseType.FAILURE, "Banks not supported by InTime2!"); ++ + } ++ + ++ + @Override ++ + public EconomyResponse bankWithdraw(String name, double amount) { ++ + return new EconomyResponse(0, 0, ResponseType.FAILURE, "Banks not supported by InTime2!"); ++ + } ++ + ++ + @Override ++ + public EconomyResponse bankDeposit(String name, double amount) { ++ + return new EconomyResponse(0, 0, ResponseType.FAILURE, "Banks not supported by InTime2!"); ++ + } ++ + ++ + @Override ++ + public EconomyResponse isBankOwner(String name, String playerName) { ++ + return new EconomyResponse(0, 0, ResponseType.FAILURE, "Banks not supported by InTime2!"); ++ + } ++ + ++ + @Override ++ + public EconomyResponse isBankMember(String name, String playerName) { ++ + return new EconomyResponse(0, 0, ResponseType.FAILURE, "Banks not supported by InTime2!"); ++ + } ++ + ++ + @Override ++ + public EconomyResponse bankBalance(String name) { ++ + return new EconomyResponse(0, 0, ResponseType.FAILURE, "Banks not supported by InTime2!"); ++ + } ++ + ++ + @Override ++ + public List getBanks() { ++ + throw new UnsupportedOperationException("Banks not supported by InTime2!"); ++ + } ++ + ++ + @Override ++ + public boolean hasBankSupport() { ++ + return false; ++ + } ++ + ++ + @Override ++ + public boolean hasAccount(String playerName) { ++ + return true; // All players have an account ++ + } ++ + ++ + @Override ++ + public boolean createPlayerAccount(String playerName) { ++ + return true; // All players have an account ++ + } ++ + ++ + @Override ++ + public int fractionalDigits() { ++ + return -1; ++ + } ++ + ++ + @Override ++ + public boolean hasAccount(String playerName, String worldName) { ++ + return hasAccount(playerName); ++ + } ++ + ++ + @Override ++ + public double getBalance(String playerName, String world) { ++ + return getBalance(playerName); ++ + } ++ + ++ + @Override ++ + public boolean has(String playerName, String worldName, double amount) { ++ + return has(playerName, amount); ++ + } ++ + ++ + @Override ++ + public EconomyResponse withdrawPlayer(String playerName, String worldName, double amount) { ++ + return withdrawPlayer(playerName, amount); ++ + } ++ + ++ + @Override ++ + public EconomyResponse depositPlayer(String playerName, String worldName, double amount) { ++ + return depositPlayer(playerName, amount); ++ + } ++ + ++ + @Override ++ + public boolean createPlayerAccount(String playerName, String worldName) { ++ + return createPlayerAccount(playerName); ++ + } ++ +}