示例#1
0
        private void PromijeniTaktikuUSlučajuPogotka()
        {
            switch (TrenutnaTaktika)
            {
            case TaktikaGađanja.SustavnoUništavanje:
                return;

            case TaktikaGađanja.Napipavanje:
                PromijeniTaktikuUOkruživanje();
                return;

            case TaktikaGađanja.Okruživanje:
                PromijeniTaktikuUSustavnoUništavanje();
                return;

            default:
                Debug.Assert(false, string.Format("Nepodržana taktika {0}", TrenutnaTaktika.ToString()));
                return;
            }
        }
        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;
            }
        }