summaryrefslogtreecommitdiffstats
path: root/EssentialsiConomyBridge5/src/com/nijiko/coelho
diff options
context:
space:
mode:
authorxeology <xeology@e251c2fe-e539-e718-e476-b85c1f46cddb>2011-05-02 22:54:38 +0000
committerxeology <xeology@e251c2fe-e539-e718-e476-b85c1f46cddb>2011-05-02 22:54:38 +0000
commitb02fea8cbb8f8df85a6e11c6878e119b77102397 (patch)
tree076ccb673017091d1864e348b0940eef6db7a1ea /EssentialsiConomyBridge5/src/com/nijiko/coelho
parentbbf1bef888527d3e19fa846d4f6772abfd2648eb (diff)
downloadEssentials-b02fea8cbb8f8df85a6e11c6878e119b77102397.tar
Essentials-b02fea8cbb8f8df85a6e11c6878e119b77102397.tar.gz
Essentials-b02fea8cbb8f8df85a6e11c6878e119b77102397.tar.lz
Essentials-b02fea8cbb8f8df85a6e11c6878e119b77102397.tar.xz
Essentials-b02fea8cbb8f8df85a6e11c6878e119b77102397.zip
EXPIRIMENTAL Essentials Iconomy Bridge for iConomy 5.0. This has reverse compatability and is tested but unsure of 5.0 API, needs testing but no 5.0 API plugins yet!
git-svn-id: https://svn.java.net/svn/essentials~svn/trunk@1324 e251c2fe-e539-e718-e476-b85c1f46cddb
Diffstat (limited to 'EssentialsiConomyBridge5/src/com/nijiko/coelho')
-rw-r--r--EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/banks.java53
-rw-r--r--EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/existCheck.java26
-rw-r--r--EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/iConomy.java105
-rw-r--r--EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/system/Account.java212
-rw-r--r--EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/system/Bank.java73
-rw-r--r--EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/system/BankAccount.java47
-rw-r--r--EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/system/Holdings.java128
7 files changed, 644 insertions, 0 deletions
diff --git a/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/banks.java b/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/banks.java
new file mode 100644
index 000000000..a85a66587
--- /dev/null
+++ b/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/banks.java
@@ -0,0 +1,53 @@
+
+package com.nijiko.coelho.iConomy;
+
+import com.earth2me.essentials.api.Economy;
+
+
+
+public class banks
+{
+
+
+ public int count(String name){
+ int count=0;
+ int breaker = 0;
+ for (int ctr = 1; breaker != 1; ctr++)
+ {
+ if (ctr == 1)
+ {
+ if (Economy.accountExist(name + "-bank"))
+ {
+ count = count + 1;
+ }
+ else
+ {
+ breaker = 1;
+ }
+ }
+ if (Economy.accountExist(name + "-bank" + Integer.toString(ctr)) && ctr != 1)
+ {
+ count = count + 1;
+ }
+ else
+ {
+ breaker = 1;
+ }
+ }
+
+ return count;
+ }
+
+
+}
+
+
+
+
+
+
+
+
+
+
+
diff --git a/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/existCheck.java b/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/existCheck.java
new file mode 100644
index 000000000..bfc3134de
--- /dev/null
+++ b/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/existCheck.java
@@ -0,0 +1,26 @@
+package com.nijiko.coelho.iConomy;
+
+import java.util.logging.Logger;
+import org.bukkit.Bukkit;
+
+
+public class existCheck
+{
+ private static final Logger logger = Logger.getLogger("Minecraft");
+ //We have to make sure the user exists!
+
+ public static boolean exist(String name)
+ {
+
+ if (name == null)
+ {
+ logger.info("Essentials iConomy Bridge - Whatever plugin is calling for users that are null is BROKEN!");
+ return false;
+ }
+ if (Bukkit.getServer().getPlayer(name) != null)
+ {
+ return true;
+ }
+ return false;
+ }
+} \ No newline at end of file
diff --git a/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/iConomy.java b/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/iConomy.java
new file mode 100644
index 000000000..0641482b7
--- /dev/null
+++ b/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/iConomy.java
@@ -0,0 +1,105 @@
+package com.nijiko.coelho.iConomy;
+
+import com.earth2me.essentials.Essentials;
+import com.earth2me.essentials.api.Economy;
+import com.nijiko.coelho.iConomy.system.Account;
+import org.bukkit.plugin.java.JavaPlugin;
+import com.nijiko.coelho.iConomy.system.Bank;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+import org.bukkit.plugin.Plugin;
+import org.bukkit.plugin.PluginManager;
+
+
+/**
+ * This is not iConomy and I take NO credit for iConomy!
+ * This is FayConomy, a iConomy Essentials Eco bridge!
+ * @author Xeology
+ */
+public class iConomy extends JavaPlugin
+{
+ public static Bank Bank=null;
+ public static boolean Banking = true;
+ public static boolean BankingMultiple = true;
+ private static final Logger logger = Logger.getLogger("Minecraft");
+
+ @Override
+ public void onDisable()
+ {
+ }
+
+ @Override
+ public void onEnable()
+ {
+ Bank=new Bank("hello");
+ PluginManager pm = this.getServer().getPluginManager();
+ Plugin p = pm.getPlugin("Essentials");
+ if (p != null)
+ {
+ if (!pm.isPluginEnabled(p))
+ {
+ pm.enablePlugin(p);
+ }
+ }
+
+ String version = this.getDescription().getDescription().replaceAll(".*: ", "");
+ if (!version.equals(Essentials.getStatic().getDescription().getVersion()))
+ {
+ logger.log(Level.WARNING, "Version mismatch! Please update all Essentials jars to the same version.");
+ }
+ Essentials.getStatic().setIConomyFallback(false);
+
+
+
+ logger.info("Loaded " + this.getDescription().getDescription() + " by " + Essentials.AUTHORS);
+ logger.info("Make sure you don't have iConomy installed, if you use this.");
+ }
+
+ //Fake bank
+ public static Bank getBank()
+ {
+ return Bank;
+ }
+
+ public static String format(String account)
+ {
+ return getAccount(account).getHoldings().toString();
+ }
+
+ public static String format(String bank, String account)
+ {
+ return (new Bank(bank)).getAccount(account).getHoldings().toString();
+ }
+
+ public String format(double amount)
+ {
+ return Economy.format(amount);
+ }
+
+ public static Account getAccount(String name)
+ {
+ Account Account = null;
+ Account = new Account(name);
+ if (!existCheck.exist(name))
+ {
+ if (!Economy.accountExist(name))
+ {
+ Economy.newAccount(name);
+ }
+ }
+ return Account;
+
+ }
+
+ public static boolean hasAccount(String name)
+ {
+ if (!existCheck.exist(name))
+ {
+ if (!Economy.accountExist(name))
+ {
+ Economy.newAccount(name);
+ }
+ }
+ return true;
+ }
+}
diff --git a/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/system/Account.java b/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/system/Account.java
new file mode 100644
index 000000000..0c550b6ef
--- /dev/null
+++ b/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/system/Account.java
@@ -0,0 +1,212 @@
+package com.nijiko.coelho.iConomy.system;
+
+import com.earth2me.essentials.api.Economy;
+import com.nijiko.coelho.iConomy.existCheck;
+import java.util.ArrayList;
+
+
+public class Account
+{
+ private String name;
+
+ public Holdings getHoldings()
+ {
+ return new Holdings(name, this.name);
+ }
+
+ public String getName()
+ {
+ return name;
+ }
+
+ /**
+ * Essentials does not support hidden accounts.
+ * @return false
+ */
+ public boolean setHidden(boolean hidden)
+ {
+ return true;
+ }
+
+ //Simply set the account variable type?
+ public Account(String name)
+ {
+ this.name = name;
+ }
+
+ public double getBalance()
+ {
+ if (!existCheck.exist(name))
+ {
+ if (Economy.accountExist(name))
+ {
+ return Economy.getMoney(name);
+ }
+ return 0;
+ }
+ return Economy.getMoney(name);
+ }
+
+ public void setBalance(double bal)
+ {
+ if (!existCheck.exist(name))
+ {
+ if (Economy.accountExist(name))
+ {
+ Economy.setMoney(name, bal);
+ }
+ return;
+ }
+ Economy.setMoney(name, bal);
+ }
+
+ public void add(double money)
+ {
+ if (!existCheck.exist(name))
+ {
+ if (Economy.accountExist(name))
+ {
+ Economy.add(name, money);
+ }
+ return;
+ }
+ Economy.add(name, money);
+ }
+
+ public void divide(double money)
+ {
+ if (!existCheck.exist(name))
+ {
+ if (Economy.accountExist(name))
+ {
+ Economy.divide(name, money);
+ }
+ return;
+ }
+ Economy.divide(name, money);
+ }
+
+ public ArrayList<Bank> withBanks()
+ {
+ ArrayList<Bank> banks = new ArrayList<Bank>();
+ if (Economy.accountExist(name + "-bank"))
+ {
+ Bank bank = new Bank("EcoBanks");
+ banks.add(bank);
+ return banks;
+ }
+ return null;
+ }
+
+ public ArrayList<Bank> getBankAccounts()
+ {
+ ArrayList<Bank> banks = new ArrayList<Bank>();
+ int breaker = 0;
+ Bank bank;
+ for (int ctr = 1; breaker != 1; ctr++)
+ {
+ if (ctr == 1)
+ {
+ if (Economy.accountExist(name + "-bank"))
+ {
+ bank = new Bank(name + "-bank");
+ banks.add(bank);
+ }
+ else
+ {
+ breaker = 1;
+ }
+ }
+ if (Economy.accountExist(name + "-bank" + Integer.toString(ctr)) && ctr != 1)
+ {
+ bank = new Bank(name + "-bank" + Integer.toString(ctr));
+ banks.add(bank);
+ }
+ else
+ {
+ breaker = 1;
+ }
+ }
+ return null;
+ }
+
+ public void multiply(double money)
+ {
+ if (!existCheck.exist(name))
+ {
+ if (Economy.accountExist(name))
+ {
+ Economy.multiply(name, money);
+ }
+ return;
+ }
+ Economy.multiply(name, money);
+ }
+
+ public void subtract(double money)
+ {
+ if (!existCheck.exist(name))
+ {
+ if (Economy.accountExist(name))
+ {
+ Economy.subtract(name, money);
+ }
+ return;
+ }
+ Economy.subtract(name, money);
+ }
+
+ public void resetBalance()
+ {
+ this.setBalance(0);
+ }
+
+ public boolean hasEnough(double amount)
+ {
+ return amount <= this.getBalance();
+ }
+
+ public boolean hasOver(double amount)
+ {
+ return amount < this.getBalance();
+ }
+
+ /**
+ * Essentials does not support hidden accounts.
+ * @return false
+ */
+ public boolean isHidden()
+ {
+ return false;
+ }
+
+ public boolean isNegative()
+ {
+ return this.getBalance() < 0.0;
+ }
+
+ public Bank getMainBank()
+ {
+ Bank bank = null;
+ if (!Economy.accountExist(name + "-bank"))
+ {
+ Economy.newAccount(name + "-bank");
+ bank = new Bank(name + "-bank");
+ return bank;
+ }
+ bank = new Bank(name + "-bank");
+ return bank;
+
+
+ }
+
+ /**
+ * Because some plugins like to use depricated methods I must save
+ * admins' log from the overflow of dumb
+ */
+ @Deprecated
+ public void save()
+ {
+ }
+;
+}
diff --git a/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/system/Bank.java b/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/system/Bank.java
new file mode 100644
index 000000000..1c94fa311
--- /dev/null
+++ b/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/system/Bank.java
@@ -0,0 +1,73 @@
+package com.nijiko.coelho.iConomy.system;
+
+import com.earth2me.essentials.api.Economy;
+import com.nijiko.coelho.iConomy.existCheck;
+
+
+public class Bank
+{
+ private String id = null;
+ private String name = null;
+
+ public Bank(String name)
+ {
+ this.id = name;
+ this.name = name;
+ }
+ //The fake formatter
+
+ public String format(double amount)
+ {
+ return Economy.format(amount);
+ }
+
+ //Fake currency!
+ public String getCurrency()
+ {
+ return Economy.getCurrency();
+ }
+
+ //Fake "does player have an account?" but essentials eco doesnt need to make one, so TRUE, unless its an NPC.
+ public boolean hasAccount(String account)
+ {
+ if (!existCheck.exist(account))
+ {
+ if (!Economy.accountExist(account))
+ {
+ Economy.newAccount(account);
+ }
+ }
+ return true;
+ }
+
+ //simply switches the name to an account type?
+ public Account getAccount(String name)
+ {
+ Account Account = null;
+ Account = new Account(name);
+ hasAccount(name);
+ return Account;
+ }
+
+ //Fake remove account
+ public void removeAccount(String name)
+ {
+ if (!existCheck.exist(name))
+ {
+ if (Economy.accountExist(name))
+ {
+ Economy.removeAccount(name);
+ }
+ return;
+ }
+ Economy.setMoney(name, 0);
+ }
+
+ public void createAccount(String account)
+ {
+ if (!Economy.accountExist(account))
+ {
+ Economy.newAccount(account);
+ }
+ }
+}
diff --git a/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/system/BankAccount.java b/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/system/BankAccount.java
new file mode 100644
index 000000000..b12298f54
--- /dev/null
+++ b/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/system/BankAccount.java
@@ -0,0 +1,47 @@
+package com.nijiko.coelho.iConomy.system;
+
+import com.earth2me.essentials.api.Economy;
+
+
+public class BankAccount
+{
+ private String BankName;
+ private String BankId;
+ private String AccountName;
+
+ public BankAccount(String BankName, String BankId, String AccountName)
+ {
+ this.BankName = BankName;
+ this.BankId = BankId;
+ this.AccountName = AccountName;
+ }
+
+ public String getBankName()
+ {
+ return this.BankName;
+ }
+
+ public String getBankId()
+ {
+ return this.BankId;
+ }
+
+ public void getAccountName(String AccountName)
+ {
+ this.AccountName = AccountName;
+ }
+
+ public Holdings getHoldings()
+ {
+ return new Holdings(this.BankId, this.AccountName, true);
+ }
+
+ public void remove(String name)
+ {
+ if (Economy.accountExist(BankId))
+ {
+ Economy.removeAccount(BankId);
+ }
+ return;
+ }
+}
diff --git a/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/system/Holdings.java b/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/system/Holdings.java
new file mode 100644
index 000000000..32e86e81f
--- /dev/null
+++ b/EssentialsiConomyBridge5/src/com/nijiko/coelho/iConomy/system/Holdings.java
@@ -0,0 +1,128 @@
+package com.nijiko.coelho.iConomy.system;
+
+import com.earth2me.essentials.api.Economy;
+import com.nijiko.coelho.iConomy.existCheck;
+
+
+public class Holdings
+{
+ private String name = "";
+ private boolean bank = false;
+ private String bankId = null;
+
+ public Holdings(String name)
+ {
+ this.name = name;
+ }
+
+ public Holdings(String id, String name)
+ {
+ this.bankId = id;
+ this.name = name;
+ }
+
+ public Holdings(String id, String name, boolean bank)
+ {
+ this.bank = bank;
+ this.bankId = id;
+ this.name = name;
+ }
+
+ public double get()
+ {
+ if (!existCheck.exist(name))
+ {
+ if (Economy.accountExist(name))
+ {
+ return Economy.getMoney(name);
+ }
+ return 0;
+ }
+ return Economy.getMoney(name);
+ }
+
+ public void set(double bal)
+ {
+ if (!existCheck.exist(name))
+ {
+ if (Economy.accountExist(name))
+ {
+ Economy.setMoney(name, bal);
+ }
+ return;
+ }
+ Economy.setMoney(name, bal);
+ }
+
+ public void add(double money)
+ {
+ if (!existCheck.exist(name))
+ {
+ if (Economy.accountExist(name))
+ {
+ Economy.add(name, money);
+ }
+ return;
+ }
+ Economy.add(name, money);
+ }
+
+ public void divide(double money)
+ {
+ if (!existCheck.exist(name))
+ {
+ if (Economy.accountExist(name))
+ {
+ Economy.divide(name, money);
+ }
+ return;
+ }
+ Economy.divide(name, money);
+ }
+
+ public void multiply(double money)
+ {
+ if (!existCheck.exist(name))
+ {
+ if (Economy.accountExist(name))
+ {
+ Economy.multiply(name, money);
+ }
+ return;
+ }
+ Economy.multiply(name, money);
+ }
+
+ public void subtract(double money)
+ {
+ if (!existCheck.exist(name))
+ {
+ if (Economy.accountExist(name))
+ {
+ Economy.subtract(name, money);
+ }
+ return;
+ }
+ Economy.subtract(name, money);
+ }
+
+ public void reset()
+ {
+ this.set(0);
+ }
+
+ public boolean hasEnough(double amount)
+ {
+ return amount <= this.get();
+ }
+
+ public boolean hasOver(double amount)
+ {
+ return amount < this.get();
+ }
+
+ public boolean isNegative()
+ {
+ return this.get() < 0.0;
+ }
+}