Создал шахматное поле и разрабатываю ходы. Поле сделал с помощью грида и заполнил кнопками. Каждая отличающаяся фигура имеет собственный тег. Я понял как в такой системе я могу двигать те же пешки, но вот как двигать фигуры по типу ладьи, ферзя и т.д. Как ограничить их ход, в том плане чтоб они не перепрыгивали через другие фигуры
int x1=Grid.GetRow(sender as Button);
int y1=Grid.GetColumn(sender as Button);
go=Convert.ToInt32(((Button)sender).Tag);
if(pos==1)//пешка
{
if(x1==x+1 && y1==y && go==0)//ход пешки
{
((Button)sender).Content=1.ToString();
((Button)sender).Tag=1;
((Button)vernut).Content="";
((Button)vernut).Tag=0;
}
else if((go==11||go==12||go==13||go==14||go==16||go==15) && ((x1==x+1 && y1==y-1) ||(x1==x+1 && y1==y+1)))//сруб пешки
{
((Button)sender).Content=1.ToString();
((Button)sender).Tag=1;
((Button)vernut).Content="";
((Button)vernut).Tag=0;
int a=Convert.ToInt32(belie.Text);
a+=1;
belie.Text=a.ToString();
}
else
{
MessageBox.Show("Вы не можете ходить по координатам x:"+x1.ToString()+" y:"+y1.ToString());
}
}
else if(pos==2)
{
if((x1==x+1 && y1==y||x1==x+2 && y1==y||x1==x+3 && y1==y||x1==x+4 && y1==y||x1==x+5 && y1==y||x1==x+6 && y1==y||x1==x+7 && y1==y) && go==0)
{
((Button)sender).Content=2.ToString();
((Button)sender).Tag=2;
((Button)vernut).Content="";
((Button)vernut).Tag=0;
}
else if(x1==x+1 && y1==y && go!=0)
{
((Button)sender).Content=2.ToString();
((Button)sender).Tag=2;
((Button)vernut).Content="";
((Button)vernut).Tag=0;
int a=Convert.ToInt32(belie.Text);
a+=1;
belie.Text=a.ToString();
}
}
я вообщем могу тебе помочь я сделал реализацию примерно как и ты. Вообщем я накладываю картинки поверх кнопок и если фигура перемещается то удаляю ее на старом месте и переношу на новое. Пока сделал только ходы для ферзей и пешек. Сейчас думаю над реализацией шаха не можешь помочь? вот ввобщем ссылка на мой проект. https://github.com/AmpilGit/chess-wpf.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Всем привет! Создал консольный проект C#, но после сборки в папке bin/debug лежит папка netcoreapp21
нужна очень помощь, пожалуйстаВ datagridview находится массив слов, который берется с richtextbox
ListDLLs выдаёт текст в консоль при правильных аргументах