package regalowl.hyperconomy; import java.util.ArrayList; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import regalowl.databukkit.CommonFunctions; public class Hcset implements CommandExecutor { public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) { HyperConomy hc = HyperConomy.hc; CommonFunctions cf = hc.gCF(); if (hc.getHyperLock().isLocked(sender)) { hc.getHyperLock().sendLockMessage(sender);; return true; } EconomyManager em = hc.getEconomyManager(); LanguageFile L = hc.getLanguageFile(); InfoSignHandler ih = hc.getInfoSignHandler(); try { String economy = hc.getConsoleSettings().getEconomy(sender); Player p = null; if (sender instanceof Player) { p = (Player)sender; } HyperEconomy he = em.getEconomy(economy); if (args.length == 0) { sender.sendMessage(L.get("HCSET_INVALID")); return true; } if (args[0].equalsIgnoreCase("name")) { try { if (args.length == 3) { String name = args[1]; String newName = args[2]; if (he.objectTest(name)) { he.getHyperObject(name).setName(newName); sender.sendMessage(L.get("NAME_SET")); hc.restart(); } else { sender.sendMessage(L.get("INVALID_NAME")); } } else { sender.sendMessage(L.get("HCSET_NAME_INVALID")); } } catch (Exception e) { sender.sendMessage(L.get("HCSET_NAME_INVALID")); } } if (args[0].equalsIgnoreCase("ceiling")) { try { if (args.length == 3) { String name = args[1]; double ceiling = Double.parseDouble(args[2]); if (he.objectTest(name)) { he.getHyperObject(name).setCeiling(ceiling); sender.sendMessage(L.f(L.get("CEILING_SET"), name)); ih.updateSigns(); } else { sender.sendMessage(L.get("INVALID_NAME")); } } else { sender.sendMessage(L.get("HCSET_CEILING_INVALID")); } } catch (Exception e) { sender.sendMessage(L.get("HCSET_CEILING_INVALID")); } } if (args[0].equalsIgnoreCase("displayname")) { try { String name = args[1]; String newName = args[2]; if (he.objectTest(name)) { HyperObject to = he.getHyperObject(newName); if (to != null) { sender.sendMessage(L.get("NAME_IN_USE")); return true; } he.getHyperObject(name).setDisplayName(newName); sender.sendMessage(L.f(L.get("DISPLAYNAME_SET"), newName)); } else { sender.sendMessage(L.get("INVALID_NAME")); } } catch (Exception e) { sender.sendMessage(L.get("NOT_IMPLEMENTED")); } } if (args[0].equalsIgnoreCase("static")) { try { String name = args[1]; HyperObject ho = he.getHyperObject(name); if (ho == null) { sender.sendMessage(L.get("INVALID_NAME")); return true; } boolean isStatic = Boolean.parseBoolean(ho.getIsstatic()); if (isStatic) { ho.setIsstatic("false"); sender.sendMessage(L.get("NOT_IMPLEMENTED")); } else { ho.setIsstatic("true"); sender.sendMessage(L.get("NOT_IMPLEMENTED")); } } catch (Exception e) { sender.sendMessage(L.get("NOT_IMPLEMENTED")); } } if (args[0].equalsIgnoreCase("stock")) { try { String name = args[1]; HyperObject ho = he.getHyperObject(name); if (ho == null) { sender.sendMessage(L.get("INVALID_NAME")); return true; } Double stock = Double.parseDouble(args[2]); ho.setStock(stock); sender.sendMessage(L.f(L.get("STOCK_SET"), ho.getDisplayName())); } catch (Exception e) { sender.sendMessage(L.get("NOT_IMPLEMENTED")); } } if (args[0].equalsIgnoreCase("startprice")) { try { String name = args[1]; HyperObject ho = he.getHyperObject(name); if (ho == null) { sender.sendMessage(L.get("INVALID_NAME")); return true; } Double price = Double.parseDouble(args[2]); ho.setStartprice(price); sender.sendMessage(L.f(L.get("START_PRICE_SET"), ho.getDisplayName())); } catch (Exception e) { sender.sendMessage(L.get("NOT_IMPLEMENTED")); } } if (args[0].equalsIgnoreCase("staticprice")) { try { String name = args[1]; HyperObject ho = he.getHyperObject(name); if (ho == null) { sender.sendMessage(L.get("INVALID_NAME")); return true; } Double price = Double.parseDouble(args[2]); ho.setStaticprice(price); sender.sendMessage(L.f(L.get("STATIC_PRICE_SET"), ho.getDisplayName())); } catch (Exception e) { sender.sendMessage(L.get("NOT_IMPLEMENTED")); } } if (args[0].equalsIgnoreCase("stockall")) { try { Double newStock = Double.parseDouble(args[1]); ArrayList<HyperObject> hos = he.getHyperObjects(); for (HyperObject ho:hos) { ho.setStock(newStock); } sender.sendMessage(L.get("ALL_STOCKS_SET")); } catch (Exception e) { sender.sendMessage(L.get("NOT_IMPLEMENTED")); } } if (args[0].equalsIgnoreCase("stockmedianall")) { try { if (hc.gYH().gFC("config").getBoolean("config.run-automatic-backups")) { new Backup(); } ArrayList<HyperObject> hos = he.getHyperObjects(); for (HyperObject ho:hos) { if (!(ho instanceof CompositeItem)) { ho.setStock(ho.getMedian()); ho.setInitiation("false"); } } sender.sendMessage(L.get("SETSTOCKMEDIANALL_SUCCESS")); } catch (Exception e) { sender.sendMessage(L.get("NOT_IMPLEMENTED")); } } if (args[0].equalsIgnoreCase("staticall")) { try { Double newStock = Double.parseDouble(args[1]); ArrayList<HyperObject> hos = he.getHyperObjects(); for (HyperObject ho:hos) { ho.setStock(newStock); } sender.sendMessage(L.get("ALL_STOCKS_SET")); } catch (Exception e) { sender.sendMessage(L.get("NOT_IMPLEMENTED")); } } } catch (Exception e) { sender.sendMessage(L.get("HCSET_INVALID")); } return true; } }