public List <Move> GetListaMogucihPoteza() //Get the list of possibilities { List <Move> potezi = TrenutnoStanje.GetListaPoteza(NaPotezu); foreach (Move p in potezi) { p.NarednoStanje = new ContextMakao(new Tabla(TrenutnoStanje), NaPotezu); p.PrethodnoStanje = this; ObnovaStanja(p, NaPotezu); int sledeciNaPotezu = NaPotezu; if (sledeciNaPotezu == 1) { sledeciNaPotezu = 2; } else { sledeciNaPotezu = 1; } p.NarednoStanje.NaPotezu = sledeciNaPotezu; TipPoteza n = new TipPoteza(); n = p.Tip; if (p.NarednoStanje.TrenutnoStanje.Ruka.Count() == 0) { n = TipPoteza.Poslednja ^ p.Tip; } p.Tip = n; } if (potezi.Count() == 0) { potezi.Add(new Move(TipPoteza.KupiKartu)); } return(potezi); }
public List <Potez> GetListaMogucihPoteza() { List <Potez> potezi = TrenutnoStanje.GetListaPoteza(); potezi.ForEach(x => { string info; x.PrethodnoStanje = this; x.NarednoStanje = new ContextIksOks(new Tabla(TrenutnoStanje), NaPotezu); x.NarednoStanje.TrenutnoStanje.Potez(NaPotezu, x.x, x.y, out info); x.NarednoStanje.Sledeci(); }); return(potezi); }