Tworząc mini grę w konsoli napotkałem dziwny problem który wyświetlał dodatkowe znaki pod mapą.
Nie wiem czy jest to spowodowane moim kodem, czy to błąd kompilatora(Code::Blocks).
#include <iostream>
#include <cstdlib>
#include <conio.h>
using namespace std;
int p_x = 2;
int p_y = 2;
int eexit = 0;
char chaar;
int maap[11][20] = {
{176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176},
{176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176},
{176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176},
{176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176},
{176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176},
{176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176},
{176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176},
{176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176},
{176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176},
{176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176},
{176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176}
};
void _display(int playerchar,int playerx,int playery) {
maap[playerx][playery] = playerchar;
for(int x = 0; x <= 11; x++) {
for(int y = 0; y <= 19; y++) {
cout<<(char)maap[x][y];
}
cout<<endl;
}
}
void _mov(char char_) {
switch(char_) {
case 'w':
break;
case 's':
break;
case 'a':
break;
case 'd':
break;
case 'z':
eexit = 1;
break;
}
}
int main() {
while(eexit == 0) {
_display(1, p_x, p_y);
chaar = getch();
_mov(chaar);
system("cls");
}
return 0;
}