Search in sources :

Example 1 with Player

use of org.bukkit.entity.Player in project Core by iConomy.

the class Status method perform.

@Override
public boolean perform(CommandSender sender, LinkedHashMap<String, Argument> arguments) throws InvalidUsage {
    if (!hasPermissions(sender, "status"))
        throw new InvalidUsage("You do not have permission to do that.");
    String name = arguments.get("name").getStringValue();
    String tag = template.color(Template.Node.TAG_MONEY);
    boolean self = false;
    if (!isConsole(sender))
        if (((Player) sender).getName().equalsIgnoreCase(name))
            self = true;
    if (name.equals("0"))
        throw new InvalidUsage("Missing <white>name<rose>: /money status <name> (new status)");
    if (!Accounts.exists(name)) {
        template.set(Template.Node.ERROR_ACCOUNT);
        template.add("name", name);
        Messaging.send(sender, tag + template.parse());
        return false;
    }
    Account account = new Account(name);
    if (arguments.get("status").getStringValue().equalsIgnoreCase("empty")) {
        int current = account.getStatus();
        if (self)
            template.set(Template.Node.PERSONAL_STATUS);
        else {
            template.set(Template.Node.PLAYER_STATUS);
            template.add("name", name);
        }
        template.add("status", current);
        Messaging.send(sender, tag + template.parse());
    } else {
        if (!hasPermissions(sender, "status+"))
            throw new InvalidUsage("You do not have permission to do that.");
        int status = arguments.get("status").getIntegerValue();
        account.setStatus(status);
        template.set(Template.Node.ACCOUNTS_STATUS);
        template.add("status", status);
        Messaging.send(sender, tag + template.parse());
    }
    return false;
}
Also used : InvalidUsage(com.iCo6.command.exceptions.InvalidUsage) Account(com.iCo6.system.Account) Player(org.bukkit.entity.Player)

Example 2 with Player

use of org.bukkit.entity.Player in project Core by iConomy.

the class players method onPlayerJoin.

@EventHandler
public void onPlayerJoin(PlayerJoinEvent event) {
    Accounts accounts = new Accounts();
    Player player = event.getPlayer();
    if (player != null)
        if (!accounts.exists(player.getName()))
            accounts.create(player.getName());
}
Also used : Player(org.bukkit.entity.Player) Accounts(com.iCo6.system.Accounts) EventHandler(org.bukkit.event.EventHandler)

Example 3 with Player

use of org.bukkit.entity.Player in project Core by iConomy.

the class Holdings method showBalance.

public void showBalance(CommandSender to) {
    if (to != null) {
        String tag = iConomy.Template.raw(Template.Node.TAG_MONEY);
        Template template = iConomy.Template;
        template.set(Template.Node.PLAYER_BALANCE);
        template.add("name", name);
        template.add("balance", toString());
        Messaging.send(to, tag + template.parse());
        return;
    }
    Player player = iConomy.Server.getPlayer(name);
    String tag = iConomy.Template.color(Template.Node.TAG_MONEY);
    if (iConomy.Server.getPlayer(name) == null)
        return;
    Template template = iConomy.Template;
    template.set(Template.Node.PERSONAL_BALANCE);
    template.add("balance", toString());
    Messaging.send(player, tag + template.parse());
}
Also used : Player(org.bukkit.entity.Player) Template(com.iCo6.util.Template)

Example 4 with Player

use of org.bukkit.entity.Player in project Core by iConomy.

the class Money method perform.

@Override
public boolean perform(CommandSender sender, LinkedHashMap<String, Argument> arguments) throws InvalidUsage {
    if (Constants.Nodes.useHoldingsPermission.getBoolean())
        if (!hasPermissions(sender, "money"))
            throw new InvalidUsage("You do not have permission to do that.");
    String name = arguments.get("name").getStringValue();
    String tag = template.color(Template.Node.TAG_MONEY);
    if (name.equals("0")) {
        if (isConsole(sender)) {
            Messaging.send(sender, "`rCannot check money on non-living organism.");
            return false;
        }
        Player player = (Player) sender;
        if (player == null)
            return false;
        Account account = new Account(player.getName());
        account.getHoldings().showBalance(null);
        return false;
    }
    if (!hasPermissions(sender, "money+"))
        throw new InvalidUsage("You do not have permission to do that.");
    if (!Accounts.exists(name)) {
        template.set(Template.Node.ERROR_ACCOUNT);
        template.add("name", name);
        Messaging.send(sender, tag + template.parse());
        return false;
    }
    Account account = new Account(name);
    account.getHoldings().showBalance(sender);
    return false;
}
Also used : InvalidUsage(com.iCo6.command.exceptions.InvalidUsage) Account(com.iCo6.system.Account) Player(org.bukkit.entity.Player)

Example 5 with Player

use of org.bukkit.entity.Player in project Core by iConomy.

the class MoneyComparator method setBalance.

static void setBalance(String name, double balance) {
    double original = 0.0, gain = 0.0, loss = 0.0;
    if (Constants.Nodes.Logging.getBoolean()) {
        original = getBalance(name);
        gain = balance - original;
        loss = original - balance;
    }
    if (!hasAccount(name)) {
        createAccount(name, balance, 0);
        if (Constants.Nodes.Logging.getBoolean()) {
            if (gain < 0.0)
                gain = 0.0;
            if (loss < 0.0)
                loss = 0.0;
            Transactions.insert(new Transaction("setBalance", "System", name).setFromBalance(original).setToBalance(balance).setGain(gain).setLoss(loss).setSet(balance));
        }
        return;
    }
    if (useMiniDB() || useInventoryDB() || useOrbDB()) {
        if (useInventoryDB())
            if (inventory.dataExists(name)) {
                inventory.setBalance(name, balance);
                return;
            }
        if (useOrbDB()) {
            Player gainer = iConomy.Server.getPlayer(name);
            if (gainer != null)
                if (balance < gainer.getTotalExperience()) {
                    int amount = (int) (gainer.getTotalExperience() - balance);
                    for (int i = 0; i < amount; i++) {
                        if (gainer.getExp() > 0)
                            gainer.setExp(gainer.getExp() - 1);
                        else if (gainer.getTotalExperience() > 0)
                            gainer.setTotalExperience(gainer.getTotalExperience() - 1);
                        else
                            break;
                    }
                } else {
                    int amount = (int) (balance - gainer.getTotalExperience());
                    for (int i = 0; i < amount; i++) gainer.setExp(gainer.getExp() + 1);
                }
            return;
        }
        if (database.hasIndex(name)) {
            database.setArgument(name, "balance", balance);
            database.update();
        }
        return;
    }
    try {
        QueryRunner run = new QueryRunner();
        Connection c = iConomy.Database.getConnection();
        try {
            String t = Constants.Nodes.DatabaseTable.toString();
            int update = run.update(c, "UPDATE " + t + " SET balance=? WHERE username=?", balance, name.toLowerCase());
        } catch (SQLException ex) {
            System.out.println("[iConomy] Error issueing SQL query: " + ex);
        } finally {
            DbUtils.close(c);
        }
    } catch (SQLException ex) {
        System.out.println("[iConomy] Database Error: " + ex);
    }
}
Also used : Player(org.bukkit.entity.Player) SQLException(java.sql.SQLException) Connection(java.sql.Connection) QueryRunner(com.iCo6.util.org.apache.commons.dbutils.QueryRunner)

Aggregations

Player (org.bukkit.entity.Player)2896 EventHandler (org.bukkit.event.EventHandler)795 Location (org.bukkit.Location)374 Test (org.junit.Test)318 ItemStack (org.bukkit.inventory.ItemStack)311 Entity (org.bukkit.entity.Entity)264 ArrayList (java.util.ArrayList)224 LivingEntity (org.bukkit.entity.LivingEntity)176 UUID (java.util.UUID)146 Block (org.bukkit.block.Block)146 OfflinePlayer (org.bukkit.OfflinePlayer)123 CoreStateInitException (com.solinia.solinia.Exceptions.CoreStateInitException)117 World (org.bukkit.World)115 MyPetPlayer (de.Keyle.MyPet.api.player.MyPetPlayer)106 CommandSender (org.bukkit.command.CommandSender)100 BukkitRunnable (org.bukkit.scheduler.BukkitRunnable)88 Inventory (org.bukkit.inventory.Inventory)81 List (java.util.List)80 ISoliniaPlayer (com.solinia.solinia.Interfaces.ISoliniaPlayer)79 Region (br.net.fabiozumbi12.RedProtect.Bukkit.Region)68