public void ObradiGađanje(RezultatGađanja rezultat) { pucač.EvidentirajRezultat(rezultat); // ovisno o rezultatu treba promijeniti taktiku switch (rezultat) { case RezultatGađanja.Promašaj: return; case RezultatGađanja.Pogodak: PromijeniTaktikuUSlučajuPogotka(); return; case RezultatGađanja.Potonuće: ZabilježiPotopljeniBrod(); EliminirajPoljaOkoBroda(pucač.PogođenaPolja); if (duljineBrodova.Count > 0) { PromijeniTaktikuUNapipavanje(); } return; default: Debug.Assert(false, string.Format("Nepodržani rezultat gađanja {0}", rezultat.ToString())); return; } }
private void JaGađam() { Console.Write("Ti gađaš: "); Polje polje = UnosPolja(); RezultatGađanja rez = kompovaFlota.Gađaj(polje); if (rez == RezultatGađanja.Potonuće) { ++brojPotopljenihBrodova; } Console.WriteLine(rez.ToString()); }
public void ObradiGađanje(RezultatGađanja rezultat) { //DZ da testovi prođu switch (rezultat) { case RezultatGađanja.Potonuće: PromjeniTaktikuUNapipavanje(); break; case RezultatGađanja.Pogodak: switch (TrenutnaTaktika) { case TaktikaGađanja.Napipavanje: PromjeniTaktikuUOkruživanje(); break; case TaktikaGađanja.Okruživanje: PromjeniTaktikuUSustavnoUništavanje(); break; case TaktikaGađanja.SustavnoUništavanje: break; default: Debug.Assert(false, string.Format("Nepodržana taktika {0}", TrenutnaTaktika.ToString())); break; } break; case RezultatGađanja.Promašaj: break; default: Debug.Assert(false, string.Format("Nepodržani rezltat gađanja {0}", rezultat.ToString())); break; } }