virtual public Flota SloziFlotu(int redaka, int stupaca, int[] duljineBrodova)
        {
            // sve cemo pokusati par puta za slucaj da naletimo na gresku ako brodovi ne stanu na mrezu
            int count = 5;

            while (count > 0)
            {
                try {
                    Flota flota = new Flota();
                    this.Mreza = new Mreza(redaka, stupaca);

                    // Gradimo brodove pocevsi od najduljeg -> da se ne upucamo u nogu i
                    // zauzmemo previse slobodnih polja s malim brodovima pa veliki ne stanu nigdje
                    Array.Sort(duljineBrodova);
                    duljineBrodova.Reverse();
                    foreach (int duljina in duljineBrodova)
                    {
                        Brod b = SagradiBrod(duljina);
                        flota.DodajBrod(b);
                        PostaviBrodNaMrezu(b);
                    }
                    return(flota);
                }
                catch (Exception) {
                    count--;
                }
            }
            return(null);
        }
        public TaktikaUnistavanjeRazmak(AITemplate.Zapovijedi zap, Mreza mreza, List <int> flota)
            : base(zap, mreza, flota)
        {
            //    ako smjer jos nije odredjen, racunamo ga iz pogodaka
            Polje prviPogodak   = zap.trenutnaMeta.First();
            Polje zadnjiPogodak = zap.trenutnaMeta.Last();

            if (zap.pronadjeniSmjer == smjer.nepoznato)
            {
                zap.pronadjeniSmjer = OdrediSmjer(prviPogodak, zadnjiPogodak);
            }
        }
 public TaktikaTemplate(AITemplate.Zapovijedi zap, Mreza mreza, List <int> flota)
 {
     this.zap   = zap;
     this.mreza = mreza;
     this.flota = flota;
 }
 public TaktikaTrazenjeSmjeraRazmak(AITemplate.Zapovijedi zap, Mreza mreza, List <int> flota)
     : base(zap, mreza, flota)
 {
 }
Ejemplo n.º 5
0
 public TaktikaNapipavanjeRazmak(AITemplate.Zapovijedi zap, Mreza mreza, List <int> flota)
     : base(zap, mreza, flota)
 {
 }