我想做一个超级马里奥,来当我的毕业作品,可是很无奈,无法用方向键控制,请问有人教一下我吗?
清屏没加
#include <bits/stdc++.h>
#include <unistd.h>
using namespace std;
char a[9][9] =
{
{'#','#','#','#','#','#','#','#','#'},
{'#','y','#',' ','#',' ',' ',' ','#'},
{'#',' ','#',' ',' ',' ','#',' ','#'},
{'#',' ',' ',' ','#','#',' ',' ','#'},
{'#',' ','#','#',' ','#','#',' ','#'},
{'#',' ',' ',' ',' ',' ','#','$','#'},
{'#',' ','#',' ','#',' ','#','#','#'},
{'#',' ',' ',' ','#',' ',' ',' ','#'},
{'#','#','#','#','#','#','#','#','#'},
};
void q()
{
for (int i = 0;i < 9;i++)
{
for (int w = 0;w < 9;w++)
{
cout << a[i][w];
}
cout << endl;
}
}
int x = 1;
int y = 1;
char m;
int main()
{
while (1)
{
q();
cout << "$是终点,y是你" << endl;
cout << "w上 s下 d左 a右" << endl;
if(x == 5&&y == 7)
{
break;
}
cin >> m;
if (m == 'w'||m == 'W')
{
if (a[x - 1][y] != '#')
{
a[x][y] = ' ';
x = x - 1;
a[x][y] = 'o';
}
}
if (m == 's'||m == 'S')
{
if (a[x + 1][y] != '#')
{
a[x][y] = ' ';
x = x + 1;
a[x][y] = 'o';
}
}
if (m == 'd'||m == 'D')
{
if (a[x][y + 1] != '#')
{
a[x][y] = ' ';
y = y + 1;
a[x][y] = 'o';
}
}
if (m == 'a'||m == 'A')
{
if (a[x][y - 1] != '#')
{
a[x][y] = ' ';
y = y - 1;
a[x][y] = 'o';
}
}
}
cout <<"你赢了"<< endl;
cout <<"感谢游玩"<< endl;
return 0;
}
这不很简单