package regalowl.hyperconomy; import org.bukkit.GameMode; import org.bukkit.entity.Player; public class Sell { HyperConomy hc; Sell(String args[], Player player, String playerecon) { hc = HyperConomy.hc; HyperEconomy he = hc.getEconomyManager().getEconomy(playerecon); LanguageFile L = hc.getLanguageFile(); EconomyManager em = hc.getEconomyManager(); try { if (player.getGameMode() == GameMode.CREATIVE && hc.gYH().gQFC("config").gB("block-selling-in-creative-mode")) { player.sendMessage(L.get("CANT_SELL_CREATIVE")); return; } if (em.inAnyShop(player)) { if (em.getHyperPlayer(player).hasSellPermission(em.getShop(player))) { String name = he.fixName(args[0]); HyperObject ho = he.getHyperObject(name, em.getShop(player)); int amount = 0; if (ho instanceof HyperItem) { HyperItem hi = he.getHyperItem(name, em.getShop(player)); if (args.length == 1) { amount = 1; } else { try { amount = Integer.parseInt(args[1]); if (amount > 10000) { amount = 10000; } } catch (Exception e) { String max = args[1]; if (max.equalsIgnoreCase("max")) { amount = hi.count(player.getInventory()); } else { player.sendMessage(L.get("SELL_INVALID")); return; } } } Shop s = em.getShop(player); if (!s.isBanned(name)) { PlayerTransaction pt = new PlayerTransaction(TransactionType.SELL); pt.setHyperObject(ho); pt.setAmount(amount); pt.setTradePartner(s.getOwner()); TransactionResponse response = em.getHyperPlayer(player).processTransaction(pt); response.sendMessages(); } else { player.sendMessage(L.get("CANT_BE_TRADED")); return; } } else if (ho instanceof HyperXP) { HyperXP xp = he.getHyperXP(em.getShop(player)); if (args.length == 1) { amount = 1; } else { try { amount = Integer.parseInt(args[1]); if (amount > 100000) { amount = 100000; } } catch (Exception e) { String max = args[1]; if (max.equalsIgnoreCase("max")) { amount = xp.getTotalXpPoints(player); } else { player.sendMessage(L.get("SELL_INVALID")); return; } } } Shop s = em.getShop(player); if (s.isStocked(name)) { PlayerTransaction pt = new PlayerTransaction(TransactionType.SELL); pt.setHyperObject(ho); pt.setAmount(amount); pt.setTradePartner(s.getOwner()); TransactionResponse response = em.getHyperPlayer(player).processTransaction(pt); response.sendMessages(); } else { player.sendMessage(L.get("CANT_BE_TRADED")); return; } } else { player.sendMessage(L.get("INVALID_ITEM_NAME")); return; } } else { player.sendMessage(L.get("NO_TRADE_PERMISSION")); return; } } else { player.sendMessage(L.get("MUST_BE_IN_SHOP")); return; } } catch (Exception e) { player.sendMessage(L.get("SELL_INVALID")); return; } } }