package com.intellectualcrafters.plot.util; import com.intellectualcrafters.plot.PS; import com.intellectualcrafters.plot.object.ConsolePlayer; import com.intellectualcrafters.plot.object.OfflinePlotPlayer; import com.intellectualcrafters.plot.object.PlotPlayer; public abstract class EconHandler { public static EconHandler manager; private static boolean initialized; public static EconHandler getEconHandler() { if (initialized) { return manager; } initialized = true; return manager = PS.get().IMP.getEconomyHandler(); } public double getMoney(PlotPlayer player) { if (player instanceof ConsolePlayer) { return Double.MAX_VALUE; } return getBalance(player); } public abstract double getBalance(PlotPlayer player); public abstract void withdrawMoney(PlotPlayer player, double amount); public abstract void depositMoney(PlotPlayer player, double amount); public abstract void depositMoney(OfflinePlotPlayer player, double amount); public abstract boolean hasPermission(String world, String player, String perm); public boolean hasPermission(String player, String perm) { return hasPermission(null, player, perm); } }