Witam,
Piszę prostą grę, polegającą m.in. na poruszaniu się po "planszy" (tablicy dwuwymiarowej). Wszystko działa dobrze do pewnego momentu- kiedy pójdę zbytnio w lewo, a dokładniej jestem na polu przed skrajnym polem- pojawia się także 'O' w linijce wyżej na samym końcu... (O- położenie; V- tam gdzie się już było)
char ruch;
cout << "Gdzie chcesz isc? L - Lewo, P - Prawo, G - Gora, D - Dol" << endl;
cin >> ruch;
switch(ruch){
case 'D':
{
if(*k==10){
cout << "Nie mozesz isc na dol" << endl;
Sleep(1000);
system("cls");
break;
}
else{
plansza[*k][*l]='V';
*k=*k+1;
plansza[*k][*l]='O';
break;
}
}
case 'G':
{
if(*k==0){
cout << "Nie mozesz isc do gory" << endl;
Sleep(1000);
system("cls");
break;
}
else{
plansza[*k][*l]='V';
*k=*k-1;
plansza[*k][*l]='O';
break;
}
}
case 'P':
if(*l==10){
cout << "Nie mozesz isc w prawo" << endl;
Sleep(1000);
system("cls");
break;
}
else{
plansza[*k][*l]='V';
*l=*l+1;
plansza[*k][*l]='O';
break;
}
case 'L':
if(*l==0){
cout << "Nie mozesz isc w lewo" << endl;
Sleep(1000);
system("cls");
break;
}
else{
plansza[*k][*l]='V';
*l=*l-1;
plansza[*k][*l]='O';
break;
}
default: cout <<"Nie ma takiej opcji" << endl;