Ejemplo n.º 1
0
  /**
   * Evalua el estado del huevo: si ha sido incubado, y si debe generar un pollo, o si ha sido
   * chafado.
   */
  @Override
  public void evaluarEstado() {
    Elemento ele = getVecino(Orientacion.ARRIBA);

    // Si la posicion esta libre y esta incubado, colocamos un pollo
    if (ele == null && incubado) {
      Pollo miPollo = new Pollo();
      Escenario esc = getEscenario();
      miPollo.setEscenario(esc);
      esc.setElemento(miPollo, getPosicionX(), getPosicionY() + 1);
      this.desaparecer();
      return;
    }

    // Si ha sido chafado, desaparece
    if (chafado) {
      this.desaparecer();
      return;
    }

    if (ele == null) {
      return;
    } else if (ele.getClass() == Jugador.class) {
      incubado = true;
    } else {
      chafado = true;
    }
  }
  /** @param args the command line arguments */
  public static void main(String[] args) {
    // Vamos a  crear animalitos
    Pollo p1 = new Pollo();
    p1.setNombre("Pollito pio");

    Leon l1 = new Leon();
    l1.setNombre("Timba");

    Leon l2 = new Leon();
    l2.setNombre("Mu-fa-sa");

    Delfin d1 = new Delfin();
    d1.setNombre("Flipper");

    ComportamientoRuido animales[] = new ComportamientoRuido[4];
    animales[0] = p1;
    animales[1] = l1;
    animales[2] = l2;
    animales[3] = d1;

    for (ComportamientoRuido algo : animales) {
      System.out.println(algo.hacerRuido());
    }
  }