Bitmap img = new Bitmap(_myForm.ClientRectangle.Width, _myForm.ClientRectangle.Height);//создаем картинку нужных размеров
_myForm.DrawToBitmap(img, _myForm.ClientRectangle);//копируем изображение в img
foreach(var item in map._rectmap)
{
if (_tankPlayer._rectplayer.IntersectsWith(item)) { _stop = true; return; }
else _stop = false;
}
foreach(var item in map._rectmap)
{
if (item.IntersectsWith(_tankPlayer._rectplayer)) _stop = true;
else _stop = false;
}
последний прямоугольник выдаст пересечения, а в противном случае следующий его результат затрёт. А что, если поставить в этот цикл поставить механизм остановки цикла если найден искомый результат?
private void Form1_KeyDown(object sender, KeyEventArgs e)
{
if (kollision._stop != true)
_tankPlayer._player_go(e,_PictureTank, _tankPlayer._stop);
kollision._kollision();
}
public void _kollision()
{
int i = 0;
int j = 0;
foreach(var item in map._rectmap)
{
if (item.IntersectsWith(_tankPlayer._rectplayer)) _stop = true;
else _stop = false;
}
}
_tankPlayer._player_go(e,_PictureTank, _tankPlayer._stop); - метод движения танка, ничего оссобенного