コード例 #1
0
        // starts a game
        private bool PocniIgru(NazivIgre naziv)
        {
            if (ProveriKraj())
            {
                return(false);
            }

            spil.Promesaj();

            for (int i = 0; i < 4; i++)
            {
                igraci[i].Ruka.Clear();

                for (int j = 0; j < 8; j++)
                {
                    igraci[i].DodajKartu(spil.PodeliKartu());
                }

                igraci[i].Sortiraj();
            }

            // sets the current game
            switch (naziv)
            {
            case NazivIgre.StoVise:
                trenutnaIgra = new StoVise(igraci, prviIgra);
                break;

            case NazivIgre.StoManje:
                trenutnaIgra = new StoManje(igraci, prviIgra);
                break;

            case NazivIgre.ZandarTref:
                trenutnaIgra = new ZandarTref(igraci, prviIgra);
                break;

            case NazivIgre.Dame:
                trenutnaIgra = new Dame(igraci, prviIgra);
                break;

            case NazivIgre.KraljHerc:
                trenutnaIgra = new KraljHerc(igraci, prviIgra);
                break;

            case NazivIgre.Hercevi:
                trenutnaIgra = new Hercevi(igraci, prviIgra);
                prviIgra++;
                break;
            }

            return(true);
        }
コード例 #2
0
        public Form1()
        {
            InitializeComponent();
            this.ClientSize     = new Size(800, 560);
            this.DoubleBuffered = true;

            Inicijalizuj();

            if (testMod)
            {
                Ubrzaj();
            }

            rezultat  = new TabelaRezultata(igraci);
            nazivIgre = NazivIgre.StoVise;
            PocniIgru(nazivIgre);
        }
コード例 #3
0
        private void timer2_Tick(object sender, EventArgs e)
        {
            int stepX = ClientRectangle.Width / 20 + 2;
            int stepY = ClientRectangle.Height / 20 + 2;

            switch (trenutnaIgra.TrenutnIgrac)
            {
            case 0:
                odigraneKarte0.Y += stepY;
                odigraneKarte1.Y += stepY;
                odigraneKarte2.Y += stepY;
                odigraneKarte3.Y += stepY;
                break;

            case 1:
                odigraneKarte0.X += stepX;
                odigraneKarte1.X += stepX;
                odigraneKarte2.X += stepX;
                odigraneKarte3.X += stepX;
                break;

            case 2:
                odigraneKarte0.Y -= stepY;
                odigraneKarte1.Y -= stepY;
                odigraneKarte2.Y -= stepY;
                odigraneKarte3.Y -= stepY;
                break;

            case 3:
                odigraneKarte0.X -= stepX;
                odigraneKarte1.X -= stepX;
                odigraneKarte2.X -= stepX;
                odigraneKarte3.X -= stepX;
                break;
            }

            Invalidate();

            if (brojKoraka-- == 0)
            {
                timer2.Stop();

                trenutnaIgra.SledecaRuka();

                if (trenutnaIgra.Zavrsena())
                {
                    rezultat.Ispisi(nazivIgre.ToString(), igra);
                    PrikaziRezultat();

                    for (int i = 0; i < 4; i++)
                    {
                        igraci[i].TrenutniRezultat = 0;
                    }

                    if (nazivIgre == NazivIgre.Hercevi)
                    {
                        nazivIgre = NazivIgre.StoVise;
                    }
                    else
                    {
                        nazivIgre++;
                    }

                    if (!PocniIgru(nazivIgre))
                    {
                        return;
                    }

                    igra++;

                    Invalidate();
                }

                if (trenutnaIgra.TrenutnIgrac == 0 && !testMod)
                {
                    return;
                }

                int brojKarte = trenutnaIgra.TrenutnIgracBacaKartu();
                this.Odigraj(brojKarte);
            }
        }