export const BarcoTipo = Object.freeze({
  FRAGATA: 1,
  DESTRUCTOR: 2,
  ACORAZADO: 3,
  PORTAAVIONES: 4,
});

export default class Barco {
  constructor(
    public id: number,
    public x: number,
    public y: number,
    public longitud: number,
    public orientacion: string,
    public impactos: number = 0,
    public destruido: boolean = false,
    public tipoNave: string = '',
  ) {}

  recibirImpacto() {
    this.impactos++;
    if (this.impactos >= this.longitud) {
      this.destruido = true;
    }
  }

  haSidoDestruido(): boolean {
    return this.destruido;
  }

  toJSON() {
    return {
      id:this.id,
      x: this.x,
      y: this.y,
      longitud: this.longitud,
      orientacion: this.orientacion,
      tipoNave: this.tipoNave,
    };
  }
}
