|
|
@ -47,24 +47,27 @@ int lose(int realU[N][N], char richtung){ |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
switch (richtung){ |
|
|
|
case 'u': //Ueberpruefe ob eine Bewegung nach oben moeglich ist |
|
|
|
if(realU[ii - 1][jj] != (N* N) + 1 && feldFrei(realU, ii-1, jj) == 1){ |
|
|
|
return 1;break; |
|
|
|
} |
|
|
|
case 'd': //Ueberpruefe ob eine Bewegung nach unten moeglich ist |
|
|
|
if(realU[ii + 1][jj] != N || feldFrei(realU, ii+1, jj) == 1){ |
|
|
|
return 1;break; |
|
|
|
} |
|
|
|
case 'l': //Ueberpruefe ob eine Bewegung nach links moeglich ist |
|
|
|
if(realU[ii][jj-1] != 0 || feldFrei(realU, ii, jj-1) == 1){ |
|
|
|
return 1;break; |
|
|
|
} |
|
|
|
case 'r': //Ueberpruefe ob eine Bewegung nach rechts moeglich ist |
|
|
|
if(realU[ii][jj + 1] > N || feldFrei(realU, ii, jj+1) == 1){ |
|
|
|
return 1;break; |
|
|
|
} |
|
|
|
} |
|
|
|
if (richtung == 'u') { |
|
|
|
if (realU[ii - 1][jj] != (N*N) + 1&& realU[ii - 1][jj] != 0) { |
|
|
|
return 1; |
|
|
|
} |
|
|
|
} |
|
|
|
else if (richtung == 'd') { |
|
|
|
if (realU[ii + 1][jj] != (N*N) + 1 && realU[ii + 1][jj] != 0 || ii == 20) { |
|
|
|
return 1; |
|
|
|
} |
|
|
|
} |
|
|
|
else if (richtung == 'l') { |
|
|
|
if (realU[ii][jj-1] != (N*N) + 1 && realU[ii][jj-1] != 0 || jj == 0) { |
|
|
|
return 1; |
|
|
|
|
|
|
|
} |
|
|
|
} |
|
|
|
else { |
|
|
|
if (realU[ii][jj + 1] != (N*N) + 1 && realU[ii][jj + 1] != 0) { |
|
|
|
return 1; |
|
|
|
} |
|
|
|
} |
|
|
|
return 0; |
|
|
|
} |
|
|
|
|
|
|
|