@Override public void run() { if (messageIndex >= finalIndex) { Commons.getInstance().getThreadManager().cancelTask(taskId); return; } Player player = Players.getPlayer(playerId); if (messageCooldown.isOnCooldown(player)) { return; } try { String message = messages[messageIndex]; Chat.message(player, message); Sounds.playSound(player, sound); messageCooldown.setOnCooldown(player); messageIndex++; } catch (IndexOutOfBoundsException e) { Commons.getInstance() .debug( "Uh oh! Message index[" + messageIndex + "] doesn't exist!\n" + StringUtil.joinString(messages, "\n")); } }
public DelayedSoundMessageThread( Player player, Sound sound, int secondsDelay, String... messages) { playerId = player.getUniqueId(); this.sound = sound; this.messages = messages; // If there's only one message in the array, attempt to split the string on newline // As per default behaviour ;) if (messages.length == 1) { messages = StringUtil.splitOnNewline(messages[0]); } finalIndex = messages.length - 1; messageCooldown = new Cooldown(secondsDelay); }
public static void loadItem(File file) { String itemName = FilenameUtils.removeExtension(file.getName()); XmlItemStack item = null; try { item = serializer.read(XmlItemStack.class, file); } catch (Exception e) { e.printStackTrace(); } if (item == null) { return; } items.put(itemName, item.getItemStack()); Chat.debug( String.format( "Loaded item %s", StringUtil.joinString(Messages.itemInfo(item.getItemStack()), "\n", 0))); }
/** * Create a custom inventory. * * @param title title to give the inventory (color codes supported with & prefix) * @param rows rows to give the inventory * @return an inventory with the title, and rows. */ public static Inventory makeInventory(String title, int rows) { return Bukkit.getServer().createInventory(null, rows * 9, StringUtil.formatColorCodes(title)); }