4 gewinnt diagonale Abfrage C#
Hey Leute, ich bin gerade dabei ein 4 gewinnt zu programmieren in C#. Nun kommt ich bei der diagonalen Abfrage ob jemand gewonnen hat nicht weiter. Horizontal und vertikal habe ich jeweils 2 for Schleifen benutzt:
for (int y = 0; y < 7; y++)
{
for (int x = 0; x < 8; x++)
{
if (gespWert == spielfeld[x, y] && spielfeld[x, y] != 0)
{
++counter;
}
else
{
counter = 0;
}
gespWert = spielfeld[x, y];
if (counter == 3)
{
MessageBox.Show("Sie haben gewonnen!");
finish = true;
break;
}
}
}
Nun wollte ich die diagonale Abfrage mit 2 while Schleifen machen, die eben dem x und dem y Wert im Array immer 1 hinzu addieren und das ganze dann mit einem break beendet wird. Zudem muss ich ja auch noch eine if Abfrage machen ob sich der abgefragte Bereich überhaupt noch im Array befindet, oder?
Könnt ihr mir ein bisschen auf die Sprünge helfen?
Danke schonmal im Vorraus!