Esempio n. 1
0
        /// <summary>
        /// Siirretään haluttu nappula haluttuun paikkaan, jos mahdollista
        /// </summary>
        /// <param name="valittuPaikka">paikka jonne siirretään</param>
        /// <param name="valittuNappula">nappula joka siirretään</param>
        /// <returns>true jos siirto onnistui, false jos ei onnistunut tai jos peli päättyi</returns>
        protected bool siirra(Paikka valittuPaikka, Nappula valittuNappula)
        {
            Grid   control    = (Grid)valittuNappula.Parent;
            Paikka alkuPaikka = valittuNappula.annaPaikka();

            control.Children.Remove(valittuNappula); //Poistetaan nappula vanhalta paikaltaan
            alkuPaikka.OnkoTyhja = true;
            if (!valittuPaikka.OnkoTyhja)            //Jos valitussa paikassa on jo nappula niin se poistetaan
            {
                valittuPaikka.annaNappula().Syoty = true;
                valittuPaikka.poistaNappula();
            }
            valittuPaikka.lisaaNappula(valittuNappula);
            alkuPaikka.poistaNappula();;
            if (!onkoJaljella()) //jos kaikki vastustajan nappulat syöty
            {
                Paaty();
                return(false);
            }
            if (onkoPaadyssa(valittuNappula)) //jos nappula saapui pelilaudan päätyyn
            {
                Paaty();
                return(false); // Jos voittoehdot täyttyvät
            }
            return(true);
        }
Esempio n. 2
0
        /// <summary>
        /// Katsoo onko jollakin pelipaikalla oleva nappula vastustajan, eli sen pelaajan, jonka vuoro ei ole tällä hetkellä
        /// </summary>
        /// <param name="sender">Paikka jonka nappula tarkistetaan</param>
        /// <returns>true jos vasustajan, false jos ei ole</returns>
        public bool onkoVastustaja(Paikka sender)
        {
            Nappula paikalla = sender.annaNappula();

            if (paikalla == null)
            {
                return(false);
            }
            if (paikalla.ympyra.Fill == nappuloidenVari1 && pelaajanVuoro == 1)
            {
                return(true);
            }
            if (paikalla.ympyra.Fill == nappuloidenVari2 && pelaajanVuoro == -1)
            {
                return(true);
            }
            return(false);
        }