社区讨论
发一个堆灰的游戏。。。
灌水区参与者 12已保存回复 18
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 18 条
- 当前快照
- 1 份
- 快照标识符
- @mi6uu2ja
- 此快照首次捕获于
- 2025/11/20 11:11 4 个月前
- 此快照最后确认于
- 2025/11/20 14:40 4 个月前
本人第一个游戏。
代码很丑,大佬请勿喷。。
CPP#include<iostream>
#include<ctime>
#include<windows.h>
using namespace std;
int Map[1005][1005],ans_way[1005][1005];
int fx[5]={0,1,0};
int fy[5]={0,0,1};
int i,x=1,y=1,n,xx,yy;
int one,two,three,four;
int prx=1,pry=1;
int zgd_way[1005][1005];
int sf=0;
void hide()
{
CONSOLE_CURSOR_INFO cursor_info={1,0};
//SetConsoleCursorInfo(hOut, &cursor_info);
SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE), &cursor_info);
}
void old();
void start();
void AI_PK();
void Pos(int x,int y)//设置光标位置
{
COORD pos;
HANDLE hOutput;
pos.X=x;
pos.Y=y;
hOutput=GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleCursorPosition(hOutput,pos);
}
void print_play_PK()
{
hide();
Pos(0,0);
// cout<<"-----------------------------子漏(→_→) 密码---------------------------"<<endl;
for (int i=1;i<=n+1;i++)
cout<<"===";
cout<<endl;
for (int i=1;i<=n;i++)
{
cout<<"=";
for (int j=1;j<=n;j++)
{
if (Map[i][j]==1) printf("▲ ");
else if (Map[i][j]==0)printf(" ");
else if (Map[i][j]==2)printf("兵 ");
else if (Map[i][j]==3)printf("AI ");
}
cout<<"="<<endl;
}
for (int i=1;i<=n+1;i++)
cout<<"===";
}
void go()
{
if (GetAsyncKeyState(VK_SPACE)&&GetAsyncKeyState(VK_RIGHT))
{
// system("cls");
Map[prx][pry+1]=1;
// print_play_PK();
}
else if (GetAsyncKeyState(VK_SPACE)&&GetAsyncKeyState(VK_LEFT))
{
// system("cls");
Map[prx][pry-1]=1;
// print_play_PK();
}
else if (GetAsyncKeyState(VK_SPACE)&&GetAsyncKeyState(VK_UP))
{
// system("cls");
Map[prx-1][pry]=1;
// print_play_PK();
}
else if (GetAsyncKeyState(VK_SPACE)&&GetAsyncKeyState(VK_DOWN))
{
// system("cls");
Map[prx+1][pry]=1;
// print_play_PK();
}
else if (GetAsyncKeyState(VK_ESCAPE)&&GetAsyncKeyState(VK_SPACE))
{
// system("cls");
memset(Map,0,sizeof(Map));
// print_play_PK();
}
else if (GetAsyncKeyState(VK_ESCAPE)&&GetAsyncKeyState(VK_DOWN))
{
// system("cls");
Map[prx+1][pry]=0;
// print_play_PK();
}
else if (GetAsyncKeyState(VK_ESCAPE)&&GetAsyncKeyState(VK_UP))
{
// system("cls");
Map[prx-1][pry]=0;
// print_play_PK();
}
else if (GetAsyncKeyState(VK_ESCAPE)&&GetAsyncKeyState(VK_RIGHT))
{
// system("cls");
Map[prx][pry+1]=0;
// print_play_PK();
}
else if (GetAsyncKeyState(VK_ESCAPE)&&GetAsyncKeyState(VK_LEFT))
{
// system("cls");
Map[prx][pry-1]=0;
// print_play_PK();
}
else if (GetAsyncKeyState(VK_SPACE)&&GetAsyncKeyState(VK_UP))
{
// system("cls");
Map[prx-1][pry]=1;
// print_play_PK();
}
else if (GetAsyncKeyState(VK_SPACE)&&GetAsyncKeyState(VK_LEFT))
{
// system("cls");
Map[prx][pry-1]=1;
// print_play_PK();
}
else if (GetAsyncKeyState(VK_SPACE)&&GetAsyncKeyState(VK_RIGHT))
{
// system("cls");
Map[prx][pry+1]=1;
// print_play_PK();
}
if(GetAsyncKeyState(VK_DOWN)){
if ((Map[prx+1][pry]==0||Map[prx+1][pry]==3)&&((prx+1)<=n)&&((prx+1)>=1)&&(pry>=1)&&(pry<=n))
{
// system("cls");
//player_way++;
prx++;
Map[prx-1][pry]=0;
Map[prx][pry]=2;
sf=1;
// print_play_PK();
// break;
}
}
else if(GetAsyncKeyState(VK_UP)) {
if ((Map[prx-1][pry]==0||Map[prx-1][pry]==3)&&((prx-1)<=n)&&((prx-1)>=1)&&(pry>=1)&&(pry<=n))
{
// system("cls");
//player_way++;
prx--;
Map[prx+1][pry]=0;
Map[prx][pry]=2;
sf=1;
// print_play_PK();
// break;
}
}
else if(GetAsyncKeyState(VK_RIGHT)) {
if ((Map[prx][pry+1]==0||Map[prx][pry+1]==3)&&(prx<=n)&&(prx>=1)&&((pry+1)>=1)&&((pry+1)<=n))
{
// system("cls");
//player_way++;
pry++;
Map[prx][pry-1]=0;
Map[prx][pry]=2;
sf=1;
// print_play_PK();
// break;
}
}
else if(GetAsyncKeyState(VK_LEFT)) {
if ((Map[prx][pry-1]==0||Map[prx][pry-1]==3)&&(prx<=n)&&(prx>=1)&&((pry-1)>=1)&&((pry-1)<=n))
{
// system("cls");
//player_way++;
pry--;
Map[prx][pry+1]=0;
Map[prx][pry]=2;
sf=1;
// print_play_PK();
// break;
}
}
}
回复
共 18 条回复,欢迎继续交流。
正在加载回复...