Beispiel #1
0
        public Igra(int redaka, int stupaca, int[] duljineBrodova)
        {
            Brodograditelj bg = new Brodograditelj();

            kompovaFlota     = bg.SložiFlotu(redaka, stupaca, duljineBrodova);
            kompovoTopništvo = new Topništvo(redaka, stupaca, duljineBrodova);
        }
Beispiel #2
0
        public void Topništvo_TaktikaGađanjaNakonPotonućaJeNapipavanje()
        {
            Topništvo t = new Topništvo(10, 10, duljineBrodova);

            t.ObradiGađanje(RezultatGađanja.Potonuće);
            Assert.AreEqual(TaktikaGađanja.Napipavanje, t.TrenutnaTaktika);
        }
Beispiel #3
0
        public void Topništvo_TaktikaGađanjaNakonPrvogPogotkaJeOkruživanje()
        {
            Topništvo t = new Topništvo(10, 10, duljineBrodova);

            t.ObradiGađanje(RezultatGađanja.Pogodak);
            Assert.AreEqual(TaktikaGađanja.Okruživanje, t.TrenutnaTaktika);
        }
Beispiel #4
0
        public void Topništvo_NapipavanjeDajeBiloKojePoljeNaPraznojMreži()
        {
            Topništvo t = new Topništvo(10, 10, duljineBrodova);

            t.ObradiGađanje(RezultatGađanja.Promašaj);
            Assert.IsTrue(new Mreža(10, 10).DajSlobodnaPolja().Contains(t.UputiPucanj()));
        }
Beispiel #5
0
        public void Topništvo_TaktikaGađanjaNakonDrugogPogotkaJeSustavnoUništavanje()
        {
            Topništvo t = new Topništvo(10, 10, duljineBrodova);

            t.ObradiGađanje(RezultatGađanja.Pogodak);
            t.ObradiGađanje(RezultatGađanja.Pogodak);
            Assert.AreEqual(TaktikaGađanja.SustavnoUništavanje, t.TrenutnaTaktika);
        }
Beispiel #6
0
        public void Topništvo_NaPočetkuJeTaktikaNasumična()
        {
            int redaka  = 5;
            int stupaca = 5;

            int[]     duljineBrodova = new int[] { 3, 2, 1 };
            Topništvo t = new Topništvo(redaka, stupaca, duljineBrodova);

            Assert.AreEqual(TaktikaGađanja.Nasumično, t.TaktikaGađanja);
        }
        public Igra(int redaka, int stupaca, int[] duljineBrodova)
        {
            Brodograditelj brodograditelj = new Brodograditelj();

            flota             = brodograditelj.SložiFlotu(redaka, stupaca, duljineBrodova);
            topništvo         = new Topništvo(redaka, stupaca, duljineBrodova);
            brojRedaka        = redaka;
            brojStupaca       = stupaca;
            ukupanBrojBrodova = duljineBrodova.Length;
        }
Beispiel #8
0
        public void Topništvo_NakonPrvogPogotkaTaktikaPrelaziUKružnu()
        {
            int redaka  = 5;
            int stupaca = 5;

            int[]     duljineBrodova = new int[] { 3, 2, 1 };
            Topništvo t = new Topništvo(redaka, stupaca, duljineBrodova);

            t.Gađaj();
            t.ObradiGađanje(RezultatGađanja.Pogodak);
            Assert.AreEqual(TaktikaGađanja.Kružno, t.TaktikaGađanja);
        }
Beispiel #9
0
        public void Topništvo_NasumičnaTaktikaNakonPotapanjaOstajeNasumična()
        {
            int redaka  = 5;
            int stupaca = 5;

            int[]     duljineBrodova = new int[] { 3, 2, 1 };
            Topništvo t = new Topništvo(redaka, stupaca, duljineBrodova);

            t.Gađaj();
            t.ObradiGađanje(RezultatGađanja.Potopljen);
            Assert.AreEqual(TaktikaGađanja.Nasumično, t.TaktikaGađanja);
        }
Beispiel #10
0
        public void Topništvo_TaktikaGađanjaNakonPromašajaSeNeMijenja()
        {
            Topništvo t = new Topništvo(10, 10, duljineBrodova);

            t.ObradiGađanje(RezultatGađanja.Promašaj);
            Assert.AreEqual(TaktikaGađanja.Napipavanje, t.TrenutnaTaktika);
            t.ObradiGađanje(RezultatGađanja.Pogodak);
            t.ObradiGađanje(RezultatGađanja.Promašaj);
            Assert.AreEqual(TaktikaGađanja.Okruživanje, t.TrenutnaTaktika);
            t.ObradiGađanje(RezultatGađanja.Pogodak);
            t.ObradiGađanje(RezultatGađanja.Promašaj);
            Assert.AreEqual(TaktikaGađanja.SustavnoUništavanje, t.TrenutnaTaktika);
        }
Beispiel #11
0
        public void Topništvo_KružnoGađanjeNakonPotonućaPrelaziUNasumično()
        {
            int redaka  = 5;
            int stupaca = 5;

            int[]     duljineBrodova = new int[] { 3, 2, 1 };
            Topništvo t = new Topništvo(redaka, stupaca, duljineBrodova);

            t.Gađaj();
            t.ObradiGađanje(RezultatGađanja.Pogodak);
            t.Gađaj();
            t.ObradiGađanje(RezultatGađanja.Potopljen);
            Assert.AreEqual(TaktikaGađanja.Nasumično, t.TaktikaGađanja);
        }
Beispiel #12
0
        public void Topništvo_KružnoGađanjeNakonPromašajaOstajeKružno()
        {
            int redaka  = 5;
            int stupaca = 5;

            int[]     duljineBrodova = new int[] { 3, 2, 1 };
            Topništvo t = new Topništvo(redaka, stupaca, duljineBrodova);

            t.Gađaj();
            t.ObradiGađanje(RezultatGađanja.Pogodak);
            t.Gađaj();
            t.ObradiGađanje(RezultatGađanja.Promašaj);
            Assert.AreEqual(TaktikaGađanja.Kružno, t.TaktikaGađanja);
        }
Beispiel #13
0
        public void Topništvo_LinijskoGađanjeNakonPotapanjaPostajeNasumično()
        {
            int redaka  = 5;
            int stupaca = 5;

            int[]     duljineBrodova = new int[] { 3, 2, 1 };
            Topništvo t    = new Topništvo(redaka, stupaca, duljineBrodova);
            Polje     prvo = t.Gađaj();

            t.ObradiGađanje(RezultatGađanja.Pogodak);
            Polje drugo = t.Gađaj();

            t.ObradiGađanje(RezultatGađanja.Pogodak);
            Polje treće = t.Gađaj();

            t.ObradiGađanje(RezultatGađanja.Potopljen);
            Assert.AreEqual(TaktikaGađanja.Nasumično, t.TaktikaGađanja);
        }
        public void Topništvo_TaktikaGađanjaNakonPromašajaSeNeMijenja()
        {
            Topništvo t = new Topništvo(10, 10, duljineBrodova);

            t.UputiPucanj();
            // inicijalno je Napipavanje
            t.ObradiGađanje(RezultatGađanja.Promašaj);
            Assert.AreEqual(TaktikaGađanja.Napipavanje, t.TrenutnaTaktika);
            t.UputiPucanj();
            t.ObradiGađanje(RezultatGađanja.Pogodak);
            // nakon prvog pogotka je Okruživanje
            t.UputiPucanj();
            t.ObradiGađanje(RezultatGađanja.Promašaj);
            Assert.AreEqual(TaktikaGađanja.Okruživanje, t.TrenutnaTaktika);
            t.UputiPucanj();
            t.ObradiGađanje(RezultatGađanja.Pogodak);
            // nakon drugog pogotka je SustavnoUništavanje
            t.UputiPucanj();
            t.ObradiGađanje(RezultatGađanja.Promašaj);
            Assert.AreEqual(TaktikaGađanja.SustavnoUništavanje, t.TrenutnaTaktika);
        }
        public void Topništvo_PočetnaTaktikaGađanjaJeNapipavanje()
        {
            Topništvo t = new Topništvo(10, 10, duljineBrodova);

            Assert.AreEqual(TaktikaGađanja.Napipavanje, t.TrenutnaTaktika);
        }