private String getOnlineUser() { String s = "{\"player\":["; Player[] players = Bukkit.getOnlinePlayers(); int count = 1; for (Player player : players) { s += "{\"name\": \"" + player.getName() + "\",\"onlinetime\":\"" + player.getPlayerTime() + "\",\"level\":\"" + player.getLevel() + "\"}"; if (count++ < players.length) { s += ","; } } s += "]}"; return s; }
@Command( aliases = {"playertime"}, usage = "[filter] <time|\"current\">", desc = "Get/change a player's time", flags = "rsw", min = 0, max = 2) public void playertime(CommandContext args, CommandSender sender) throws CommandException { Iterable<Player> players = null; String timeStr = "current"; boolean included = false; boolean reset = args.hasFlag('r'); if (args.argsLength() < 2) { if (args.argsLength() == 1) { timeStr = args.getString(0); if (reset) { players = PlayerUtil.matchPlayers(sender, timeStr); } } if (players == null) { players = PlayerUtil.matchPlayers(PlayerUtil.checkPlayer(sender)); } } else { players = PlayerUtil.matchPlayers(sender, args.getString(0)); timeStr = args.getString(1); } for (Player player : players) { if (player != sender) { CommandBook.inst().checkPermission(sender, "commandbook.time.player.other"); break; } else { CommandBook.inst().checkPermission(sender, "commandbook.time.player"); } } if (args.hasFlag('r')) { for (Player player : players) { player.resetPlayerTime(); if (!args.hasFlag('s')) { player.sendMessage(ChatColor.YELLOW + "Your time was reset to world time"); } if (sender instanceof Player && sender.equals(player)) { included = true; } } if (!included) { sender.sendMessage(ChatColor.YELLOW + "Player times reset"); } return; } if (timeStr.equalsIgnoreCase("current") || timeStr.equalsIgnoreCase("cur") || timeStr.equalsIgnoreCase("now")) { CommandBook.inst().checkPermission(sender, "commandbook.time.player.check"); sender.sendMessage( ChatColor.YELLOW + "Player Time: " + CommandBookUtil.getTimeString( PlayerUtil.matchSinglePlayer( sender, args.getString(0, PlayerUtil.checkPlayer(sender).getName())) .getPlayerTime())); return; } for (Player player : players) { if (!player.equals(sender)) { player.sendMessage( ChatColor.YELLOW + "Your time set to " + CommandBookUtil.getTimeString(player.getPlayerTime())); } else { player.sendMessage( ChatColor.YELLOW + "Your time set to " + CommandBookUtil.getTimeString(player.getPlayerTime())); included = true; } player.setPlayerTime( args.hasFlag('w') ? Integer.parseInt(timeStr) : matchTime(timeStr), args.hasFlag('w')); } if (!included) { sender.sendMessage( ChatColor.YELLOW + "Player times set to " + CommandBookUtil.getTimeString(matchTime(timeStr))); } }
@Override public long getPlayerTime() { return caller.getPlayerTime(); }