void Pacman::Move()
{
Console console;
unsigned int stX=26, stY=11;
console.GotoXY(stX,stY);
const unsigned char tWall=177;
const unsigned char tPassage=32;
while(1)
{
int keys;
keys=getch();
switch(keys)
{
case 75: //left 75
if(tPassage)
{
putchar('\b'); putchar(0); fflush(stdin);
console.GotoXY(stX--,stY); putchar(1);
break;
}
else
{
console.GotoXY(stX,stY);
putchar(1);
break;
}
case 77: //right 77
if(tPassage)
{
putchar('\b'); putchar(0); fflush(stdin);
console.GotoXY(stX++,stY); putchar(1);
break;
}
else
{
console.GotoXY(stX,stY);
putchar(1);
break;
}
case 72: //up 72
if(tPassage)
{
putchar('\b'); putchar(0); fflush(stdin);
console.GotoXY(stX,stY--); putchar(1);
break;
}
else
{
console.GotoXY(stX,stY);
putchar(1);
break;
}
case 80: //down 80
if(tPassage)
{
putchar('\b'); putchar(0); fflush(stdin);
console.GotoXY(stX,stY++);
putchar(1);
break;
}
else
{
console.GotoXY(stX,stY);
putchar(1);
break;
}
}
}
}
проверка на стену C++
не получается его использовать практически(, подскажите как действовать?
сделал для передвижения следующую функцию:
Код:
метод IsWall:
Код:
bool Level::IsWall(unsigned int theI, unsigned int theJ)
{
bool isWall = true;
if ((theI<HEIGHT) && (theJ<WIDTH))
{
map[theI][theJ] = isWall;
}
return isWall;
}
{
bool isWall = true;
if ((theI<HEIGHT) && (theJ<WIDTH))
{
map[theI][theJ] = isWall;
}
return isWall;
}
хотелось бы реализовать передвижение с учетом стенок, заполненных в массиве map, но не могу придумать как(