Пример #1
0
        //vaihda käännetyt kortit kun painetaan vaihda
        public void vaihdaKortit(Kasi pelaaja)
        {
            //otetaan kortti pois niin indeksointi menee sekaisin
            //katsotaan vaihdettavat indeksit ja vaihdetaan kaikki kerralla
            List <int> vaihdettavatIndeksit = new List <int>();

            for (int i = 0; i < 5; i++)
            {
                if (pelaaja.getKortti(i).korttiOikeinPain() == false)
                {
                    vaihdettavatIndeksit.Add(i);
                }
            }

            for (int i = vaihdettavatIndeksit.Count() - 1; i > -1; i--)
            {
                int temp = vaihdettavatIndeksit.ElementAt(i);
                pelaaja.otaKortti(temp);
            }

            for (int i = 0; i < vaihdettavatIndeksit.Count(); i++)
            {
                pelaaja.lisaaKortti(korttipakka.annaKortti());
            }

            //järjestä kortit suuruusjärjestykseen
            pelaaja.jarjestaKortit();
        }
Пример #2
0
        //klikki funktioille yhteinen toteutus, sama järjestys picboxien indeksit ja käden korttien indeksit ettei mee sekaisin
        private void korttienVaihto(PictureBox p_box, int index, Kasi player)
        {
            //jos ei vaihtoja jäljellä, ei voi vaihtaa enää
            if (pokeripeli.GetVuorojaJaljella() == 0)
            {
                return;
            }


            // jos kortti oikeinpäin
            if (pokeripeli.getKorttiOikeinPain(player, index))
            {
                //picBox tyhjäksi ja kortti väärinpäin kuva, aseta kortti olioon booleani
                p_box.InitialImage = null;
                p_box.Image        = Image.FromFile(korttiVaarinpain);
                pokeripeli.kaannaKortti(player, index);
            }
            else
            {
                //kortti oikein päin, aseta booleani
                p_box.InitialImage = null;
                p_box.Image        = Image.FromFile(pokeripeli.getKortinTiedostonimi(player, index));
                pokeripeli.kaannaKortti(player, index);
            }
        }
Пример #3
0
        //peli päälle, jaa käsi täyteen kortteja (5 kpl)
        public void kaynnistaPeli(Kasi pelaaja1, Kasi pelaaja2)
        {
            while (!pelaaja1.kasiTaynna())
            {
                pelaaja1.lisaaKortti(korttipakka.annaKortti());
            }

            while (!pelaaja2.kasiTaynna())
            {
                pelaaja2.lisaaKortti(korttipakka.annaKortti());
            }

            pelaaja1.jarjestaKortit();
            pelaaja2.jarjestaKortit();
        }
Пример #4
0
        private void peliPaalle()
        {
            //alustaa aina käden ja korttipakan kun aloittaa uuden pelin
            // pakka = null;
            pokeripeli = new Pokeri();
            pelaaja1   = new Kasi();
            pelaaja2   = new Kasi();

            //lisätään pelaajille kortit
            pokeripeli.kaynnistaPeli(pelaaja1, pelaaja2);

            //disabloi uusi peli nappi
            button1.Enabled = false;

            //aktivoi korttien vaihtonappi. vois ehkä myös hidettää kokonaan sen sijaan kuin enable/disable
            button2.Enabled = true;

            //tyhjennä käden arvo label
            kadenArvoLabel.Text  = "";
            kadenArvoLabel2.Text = "";

            //tulosta aloitustilanne
            tulostaKokoKasiAnimaatioAsync();
        }
Пример #5
0
 public bool getKorttiOikeinPain(Kasi pelaaja, int kortinIndex)
 {
     return(pelaaja.getKortti(kortinIndex).korttiOikeinPain());
 }
Пример #6
0
 public string getKortinTiedostonimi(Kasi pelaaja, int kortinIndex)
 {
     return(pelaaja.getKortti(kortinIndex).getTiedostoNimi());
 }
Пример #7
0
 public string getKadenArvo(Kasi pelaaja)
 {
     return(pelaaja.getKadenArvo());
 }
Пример #8
0
 //jos UIssa kääntyy kortti --> kääntyy kortti olion attribuutti
 public void kaannaKortti(Kasi pelaaja, int picBoxIndex)
 {
     pelaaja.getKortti(picBoxIndex).kaannaKortti();
 }