예제 #1
0
 /** 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()));
 }
예제 #2
0
 /** 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();
    }
  }