/** Metodo per attaccare */ public void attacca(Settore settore) { LOGGER.log( Level.INFO, String.format( "%s dichiara ATTACCO IN SETTORE [%s,%d]", this.nome(), settore.getColonna(), settore.getRiga())); }
/** Metodo per far annunciare un settore al giocatore */ public void annunciaSettore(Settore settore) { if (!settore.isValidSectorForAnnouncement()) throw new InvalidSectorForAnnouncement("Non si può dichiarare rumore in questo settore"); LOGGER.log( Level.INFO, String.format( "%s dichiara RUMORE IN SETTORE [%s,%d]", this.nome(), settore.getColonna(), settore.getRiga())); }
/** * Crea messaggio che descrive l'evento * * @param player * @param settore * @param morti * @return */ private static String buildMsg(Player player, Settore settore, List<Player> morti) { StringBuilder nomiMorti = new StringBuilder(); for (Player playerMorto : morti) { nomiMorti.append(playerMorto.nome()).append("\n"); } StringBuilder msg = new StringBuilder(); msg.append("Attacco in settore ") .append(settore.getNome()) .append(" effettuato da ") .append(player.nome()) .append("\n"); if (nomiMorti.toString().isEmpty()) { return msg.append("Non ci sono stati morti").toString(); } else { return msg.append("I morti sono stati i seguenti:\n").append(nomiMorti.toString()).toString(); } }