예제 #1
0
파일: Program.cs 프로젝트: oliparvu/avioane
        static void Main(string[] args)
        {
            TablaMea     tablaMea     = new TablaMea();
            TablaJucator tablaJucator = new TablaJucator();

            tablaMea.initializare();
            tablaJucator.initializare();
            tablaMea.afisare();
            tablaJucator.afisare();
            Punct pctTempVariable;

            initTablaCost();
            pctTempVariable = cautaLovitura(true);

            while ((tablaMea.getLovituri() < 3) && (tablaJucator.getLovituri() < 3))
            {
                //asteapta sa atace jucatorul
                tablaMea.urmMutare();

                //ataca cu valoarea calculata anterior
                Marcaj mRezultatAtac = tablaJucator.urmMutare(pctTempVariable.x, pctTempVariable.y);
                //update la matrice cost cu rezultatul atacului
                updateMatriceCost(mRezultatAtac, pctTempVariable);

                //cauta next best shot
                pctTempVariable = cautaLovitura(false);


                Console.Clear();
                tablaMea.afisare();
                tablaJucator.afisare();
            }
            Console.WriteLine("Game over");
            Console.Read();
        }
예제 #2
0
        static void Main(string[] args)
        {
            TablaJucator tablaJucator = new TablaJucator();

            tablaMea.initializare();
            tablaJucator.initializare();
            tablaMea.afisare();
            tablaJucator.afisare();
            Punct pctTempVariable;

            initTablaCost();
            pctTempVariable = cautaLovitura();

            while ((tablaMea.getLovituri() < 3) && (tablaJucator.getLovituri() < 3))
            {
                //asteapta sa atace jucatorul
                tablaMea.urmMutare();

                //ataca cu valoarea calculata anterior
                Marcaj mRezultatAtac = tablaJucator.urmMutare(pctTempVariable.x, pctTempVariable.y);

                //update la matrice cost cu rezultatul atacului
                updateMatriceCost(mRezultatAtac, pctTempVariable);

                if ((mRezultatAtac == Marcaj.aer))
                {
                    if (bPlaneHit == true)
                    {
                        pctTempVariable = cautaLovituraMica(lastHits[lastHits.Count - 1], 0);
                    }
                    else
                    {
                        pctTempVariable = cautaLovitura();
                    }
                }

                if ((mRezultatAtac == Marcaj.avion))
                {
                    //lastHit = pctTempVariable;
                    lastHits.Add(pctTempVariable);
                    bPlaneHit       = true;
                    pctTempVariable = cautaLovituraMica(lastHits[lastHits.Count - 1], 0);;
                }

                if ((mRezultatAtac == Marcaj.cabina))
                {
                    bPlaneHit       = false;
                    pctTempVariable = cautaLovitura();
                }



                Console.Clear();
                tablaMea.afisare();
                tablaJucator.afisare();
            }
            Console.WriteLine("Game over");
            Console.Read();
        }
예제 #3
0
        static void Main(string[] args)
        {
            TablaMea     tablaMea     = new TablaMea();
            TablaJucator tablaJucator = new TablaJucator();

            tablaMea.initializare();
            tablaJucator.initializare();
            tablaMea.afisare();
            tablaJucator.afisare();

            while ((tablaMea.getLovituri() < 3) && (tablaJucator.getLovituri() < 3))
            {
                tablaMea.urmMutare();
                tablaJucator.urmMutare();
                Console.Clear();
                tablaMea.afisare();
                tablaJucator.afisare();
            }
            Console.WriteLine("Game over");
            Console.Read();
        }
예제 #4
0
        static void Main(string[] args)
        {
            TablaMea     tablaMea     = new TablaMea();
            TablaJucator tablaJucator = new TablaJucator();
            Punct        pctTempVariable;


            tablaMea.initializare();
            tablaJucator.initializare();
            initMatrice();
            tablaMea.afisare();
            tablaJucator.afisare();


            //genereaza prima lovitura.
            pctTempVariable = cautaLovituraRandom();

            while ((tablaMea.getLovituri() < 3) && (tablaJucator.getLovituri() < 3))
            {
                //asteapta sa atace jucatorul
                tablaMea.urmMutare();

                //ataca cu valoarea calculata anterior
                Marcaj mRezultatAtac = tablaJucator.urmMutare(pctTempVariable.x, pctTempVariable.y);

                //update la matricea cu pozitiile atacate anterior
                updateMatriceAtacuri(pctTempVariable);

                if ((mRezultatAtac == Marcaj.aer))
                {     //atacul curent a nimerit aer
                    if (bPlaneHit == true)
                    { //in zona a fost descoperit un avion
                        pctTempVariable = cautaLovituraInZonaRestransa(lsLlastHits[lsLlastHits.Count - 1], 0);
                    }
                    else
                    {//in zona NU a fost descoperit un avion
                        pctTempVariable = cautaLovituraRandom();
                    }
                }

                if ((mRezultatAtac == Marcaj.avion))
                {                                                                                          //atacul precedent a lovit un avion
                    lsLlastHits.Add(pctTempVariable);                                                      //adaug in lista atacul care a nimerit un avion
                    bPlaneHit       = true;
                    pctTempVariable = cautaLovituraInZonaRestransa(lsLlastHits[lsLlastHits.Count - 1], 0); //cauta urmatoarea lovitura intr`o zona restransa in jurul ultimului atac sucessfull
                }

                if ((mRezultatAtac == Marcaj.cabina))
                {//nimerit cabina. Avion mort
                    bPlaneHit       = false;
                    pctTempVariable = cautaLovituraRandom();
                }



                Console.Clear();
                tablaMea.afisare();
                tablaJucator.afisare();
            }
            Console.WriteLine("Game over");
            Console.Read();
        }