/// <summary> /// tworzenie nowej analizy /// </summary> /// <param name="plansza">plansza do analizowania</param> /// <param name="glebokoscAnalizy">glembokosc analizy</param> public Analiza(Plansza plansza, int glebokoscAnalizy) { this.plansza = plansza; this.strona = plansza.StronaGrajaca; this.glebokoscAnalizy = glebokoscAnalizy; RobDzieci(1); }
/// <summary> /// tworzenie bierki goniec /// </summary> /// <param name="pozycja">pozycja startowa bierki</param> /// <param name="kolor">kolor bierki bialy/czarny</param> /// <param name="plansza">plansza na ktorej bierka sie znajduje</param> /// <param name="pierwszyRuch">wartosc logiczna zawierajaca informacje o tym czy bierka wykonala juz jakis ruch</param> public Goniec(Punkt pozycja, Strona kolor, Plansza plansza, bool pierwszyRuch = true) { this.Nazwa = Bierki.Goniec; this.Pozycja = pozycja; this.Kolor = kolor; this.plansza = plansza; this.PierwszyRuch = pierwszyRuch; this.WartoscPunktowa = 3; }
/// <summary> /// tworzenie bierki wieza /// </summary> /// <param name="pozycja">pozycja startowa bierki</param> /// <param name="kolor">kolor bierki bialy/czarny</param> /// <param name="plansza">plansza na ktorej bierka sie znajduje</param> /// <param name="pierwszyRuch">wartosc logiczna zawierajaca informacje o tym czy bierka wykonala juz jakis ruch</param> public Wieza(Punkt pozycja, Strona kolor, Plansza plansza, bool pierwszyRuch = true) { this.Nazwa = Bierki.Wieża; this.Pozycja = pozycja; this.Kolor = kolor; this.plansza = plansza; this.PierwszyRuch = pierwszyRuch; this.WartoscPunktowa = 5; }
/// <summary> /// tworzenie bierki hetman /// </summary> /// <param name="pozycja">pozycja startowa bierki</param> /// <param name="kolor">kolor bierki bialy/czarny</param> /// <param name="plansza">plansza na ktorej bierka sie znajduje</param> /// <param name="pierwszyRuch">wartosc logiczna zawierajaca informacje o tym czy bierka wykonala juz jakis ruch</param> public Hetman(Punkt pozycja, Strona kolor, Plansza plansza, bool pierwszyRuch = true) { this.Nazwa = Bierki.Hetman; this.Pozycja = pozycja; this.Kolor = kolor; this.plansza = plansza; this.PierwszyRuch = pierwszyRuch; this.WartoscPunktowa = 9; }
/// <summary> /// konstruktor do kopiowania /// </summary> /// <param name="pozycja">Pozycja kopiowanej bierki</param> /// <param name="kolor">Kolor bierki</param> /// <param name="plansza">nowa plansza</param> /// <param name="pierwszyRuch">stan zmiennej pierwszy ruch</param> /// <param name="policzoneRuchy">policzone ruchy bierki</param> Goniec(Punkt pozycja, Strona kolor, Plansza plansza, bool pierwszyRuch, List <Punkt> policzoneRuchy, int kolejka) { this.Nazwa = Bierki.Goniec; this.Pozycja = pozycja; this.Kolor = kolor; this.plansza = plansza; this.PierwszyRuch = pierwszyRuch; this.WartoscPunktowa = 3; this.policzoneRuchy = policzoneRuchy; this.Kolejka = kolejka; }
Analiza(Plansza plansza, Strona strona, int analizaNr, int glebokoscAnalizy, Punkt ruchZ, Punkt ruchDo) { void Koniec(Plansza.Status status) { switch (status) { case Plansza.Status.Mat: wartoscAnalizy = decimal.MaxValue; analiza = false; break; case Plansza.Status.Pat: wartoscAnalizy = 1; analiza = false; break; } }
/// <summary> /// Tworzy kopie Gonca /// </summary> internal override Bierka Kopiuj(Plansza plansza) { return(new Goniec(Pozycja, Kolor, plansza, PierwszyRuch, PobMozliweRuchy.ToList(), Kolejka)); }
/// <summary> /// Tworzenie komputerowego przeciwnika /// </summary> /// <param name="plansza">plansza na ktorej bot ma wykonywac ruchy</param> /// <param name="glebokoscAnalizy">ile ruchow do przodu komputer ma przewidywac</param> public KomputerowyPrzeciwnik(Plansza plansza, int glebokoscAnalizy = 1) { this.plansza = plansza; this.glebokoscAnalizy = glebokoscAnalizy; }