Mam listę 40 pozycji na planszy, i chciałbym zaimplementować ruch pionka "Pionekg1", zczytuje sobie ilość wyrzuconych oczek np.12 i chciałbym pionkem przenieść się na pole 12 w liście, jak to zaimplementować?
Kod: Zaznacz cały
class Pozycja
{
public Pozycja(int nrPola, int pozX, int pozY)
{
NrPola = nrPola;
pozX = PozX;
pozY = PozY;
}
public int NrPola { get; set; }
public int PozX { get; set; }
public int PozY { get; set; }
}
class Gra
{
private readonly Kostka _kostka;
private readonly Form1 _form1;
List<Pozycja> pozycje = null;
public Gra()
{
//pozycje = new List<int>();
//pozycje.Add(new Pozycja(nr, x, y));
pozycje.Add(new Pozycja(1, 582, 577));
pozycje.Add(new Pozycja(2, 511, 577));
pozycje.Add(new Pozycja(3, 459, 577));
pozycje.Add(new Pozycja(4, 408, 577));
pozycje.Add(new Pozycja(5, 356, 577));
pozycje.Add(new Pozycja(6, 305, 577));
pozycje.Add(new Pozycja(7, 253, 577));
pozycje.Add(new Pozycja(8, 199, 577));
pozycje.Add(new Pozycja(9, 147, 577));
pozycje.Add(new Pozycja(10, 94, 577));
pozycje.Add(new Pozycja(11, 17, 577));
pozycje.Add(new Pozycja(12, 17, 504));
pozycje.Add(new Pozycja(13, 17, 454));
pozycje.Add(new Pozycja(14, 17, 403));
pozycje.Add(new Pozycja(15, 17, 351));
pozycje.Add(new Pozycja(16, 17, 299));
pozycje.Add(new Pozycja(17, 17, 248));
pozycje.Add(new Pozycja(18, 17, 196));
pozycje.Add(new Pozycja(19, 17, 147));
pozycje.Add(new Pozycja(20, 17, 94));
pozycje.Add(new Pozycja(21, 17, 19));
pozycje.Add(new Pozycja(22, 94, 19));
pozycje.Add(new Pozycja(23, 146, 19));
pozycje.Add(new Pozycja(24, 198, 19));
pozycje.Add(new Pozycja(25, 250, 19));
pozycje.Add(new Pozycja(26, 302, 19));
pozycje.Add(new Pozycja(27, 356, 19));
pozycje.Add(new Pozycja(28, 409, 19));
pozycje.Add(new Pozycja(29, 461, 19));
pozycje.Add(new Pozycja(30, 512, 19));
pozycje.Add(new Pozycja(31, 590, 19));
pozycje.Add(new Pozycja(32, 590, 95));
pozycje.Add(new Pozycja(33, 590, 147));
pozycje.Add(new Pozycja(34, 590, 198));
pozycje.Add(new Pozycja(35, 590, 248));
pozycje.Add(new Pozycja(36, 590, 301));
pozycje.Add(new Pozycja(37, 590, 351));
pozycje.Add(new Pozycja(38, 590, 404));
pozycje.Add(new Pozycja(39, 590, 453));
pozycje.Add(new Pozycja(40, 590, 505));
}
public void RuchPionka()
{
if ((_kostka.AktualnieWylosowano + _kostka.AktualnieWylosowano2) > 0) //jeżeli to co jest wylosowane na kostkach jest > 0 to gracz sie przesuwa o wylosowana ilosc pozycji
{
Pozycja pole = pozycje.Find(x => x.NrPola == (_kostka.AktualnieWylosowano + _kostka.AktualnieWylosowano2));
_form1.Pionekg1.Location=??????????????;
}
}