#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<windows.h>
#include<conio.h>
#include<time.h>
#define UP 72
#define DOWN 80
#define LEFT 75
#define RIGHT 77
using namespace std;
string a[21][20]= {"■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■",
"■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■",
"■","■","□","□","□","□","□","□","□","□","□","□","□","□","□","▓","▓","▲","■","■",
"■","□","□","□","■","■","□","■","□","■","■","■","■","■","■","▓","▓","▓","■","■",
"■","□","□","□","□","□","∷","□","□","■","∷","∷","∷","□","□","□","▓","▓","■","■",
"■","□","■","□","□","□","□","■","□","■","∷","∷","■","□","□","□","■","□","■","■",
"■","□","■","□","□","□","□","■","□","■","∷","■","□","□","□","□","■","□","■","■",
"■","□","□","∷","□","□","□","□","□","■","□","□","□","□","■","∷","■","□","■","■",
"■","□","■","□","■","■","□","□","■","■","□","□","□","■","∷","∷","■","□","■","■",
"■","□","□","□","□","□","□","■","□","□","□","□","□","∷","∷","∷","■","□","■","■",
"■","□","■","■","■","■","■","■","□","■","□","■","■","■","■","■","■","□","■","■",
"■","□","■","∷","∷","∷","□","□","□","□","□","■","□","□","□","□","□","□","■","■",
"■","□","■","∷","∷","■","□","□","□","■","■","□","□","■","■","□","■","□","■","■",
"■","□","■","∷","■","□","□","□","□","■","□","□","□","□","□","∷","□","□","■","■",
"■","□","■","□","□","□","□","■","∷","■","□","■","□","□","□","□","■","□","■","■",
"■","□","■","□","□","□","■","∷","∷","■","□","■","□","□","□","□","■","□","■","■",
"■","▓","▓","□","□","□","∷","∷","∷","■","□","□","∷","□","□","□","□","□","■","■",
"■","▓","▓","▓","■","■","■","■","■","■","□","■","□","■","■","□","□","□","■","■",
"■","●","▓","▓","□","□","□","□","□","□","□","□","□","□","□","□","□","■","■","■",
"■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■",
"■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■","■",
}; //地图
string jz[8]; //用来加载的变量
int xxxx,i,j,lev1=0,lev2=0; //一堆没用的变量=.=
int n1=1000,m1=10,l1=1; //玩家1相关信息
int n2=1000,m2=10,l2=1; //玩家2相关信息
int t,t1,t2,t3,t4; //计算时间的变量
double t5,t6; //计算时间的变量
int x=18,y=1; //玩家1坐标
int p=2,q=17; //玩家2坐标
int p2=2,q2=7; //玩家2辅助坐标
char ch,ch1,ch2; //输入字符,玩家1保留字符,玩家2保留字符
int gbdw1(); //光标定位1函数
int gbdw2(); //光标定位2函数
int gbdw3(); //光标定位3函数
int gbdw4(); //光标定位4函数
int hpzy(); //获取资源函数
int jzz(); //加载中函数
int p1kz(); //玩家1控制函数
int p2kz(); //玩家2控制函数
int zcd(); //主菜单函数
void draw(); //画图函数
void hidden(); //隐藏光标函数
void zanting(); //暂停函数
void renji(); //人机模式
void renji_suiji(); //人机模式(防bug)
void renji_gress(); //吃草
void zanting() {
system("cls");
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
cout<<"■■■■■■■■■■■■■■■■■■■"<<endl;
return;
}
int gbdw1() {
COORD pos = {0, 22};
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);
}
int gbdw2() {
COORD pos = {40, 22};
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);
}
int gbdw3() {
COORD pos = {0, 23};
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);
}
int gbdw4() {
COORD pos = {40, 23};
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);
}
void draw() {
if(n1>=1000) n1=1000;
if(n2>=1000) n2=1000;
if(n1<=0) n1=0;
if(n2<=0) n2=0;
if(m1>=500) m1=500;
if(m2>=500) m2=500;
if(m1<=0) m1=0;
if(m2<=0) m2=0;
if(l1>=20) l1=20;
if(l1>=20) l1=20;
COORD pos = {0, 0};
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_BLUE|FOREGROUND_RED|FOREGROUND_GREEN);
cout<<"Already start "<<((int)time(NULL)-t)/60<<" minute for "<<((int)time(NULL)-t)%60<<" seconds"<<endl;
for(i=1; i<=19; i++) {
for(j=0; j<=18; j++) {
if(a[i][j]=="■") {
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED);
cout<<a[i][j];
}
if(a[i][j]=="∷") {
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_BLUE);
cout<<a[i][j];
}
if(a[i][j]=="▓") {
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN);
cout<<a[i][j];
}
if(a[i][j]=="□") {
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_BLUE|FOREGROUND_GREEN);
cout<<a[i][j];
}
if(a[i][j]=="●"||a[i][j]=="▲") {
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN);
cout<<a[i][j];
}
}
cout<<endl;
}
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_BLUE|FOREGROUND_RED|FOREGROUND_GREEN);
printf("●player 1: ▲player 2:\n");
printf("Lv:%2d HP:%4d mana:%3d Lv:%2d HP:%4d mana:%3d\n",l1,n1,m1,l2,n2,m2);
gbdw1();
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN);
printf("HP: ");
for(j=1; j<=n1/10/8; j++)
printf("█");
xxxx=n1/10%8;
cout<<jz[xxxx];
printf("%d",n1);
printf(" ");
gbdw2();
printf("HP: ");
for(j=1; j<=n2/10/8; j++)
printf("█");
xxxx=n2/10%8;
cout<<jz[xxxx];
printf("%d",n2);
printf(" \n");
gbdw3();
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_BLUE|FOREGROUND_GREEN);
printf("moon:");
for(j=1; j<=m1/5/8; j++)
printf("█");
xxxx=m1/5%8;
cout<<jz[xxxx];
printf("%d",m1);
printf(" ");
gbdw4();
printf("moon:");
for(j=1; j<=m2/5/8; j++)
printf("█");
xxxx=m2/5%8;
cout<<jz[xxxx];
printf("%d",m2);
printf(" \n");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_BLUE|FOREGROUND_RED|FOREGROUND_GREEN);
return;
}
int zcd() {
while(1) {
system("cls");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_BLUE|FOREGROUND_RED|FOREGROUND_GREEN);
system("cls");
printf("Welcome to square in the world!\n");
printf("-------------------------------\n");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED);
printf("S.[Start the game]\n");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED | FOREGROUND_GREEN);
printf("T.[The program diagram]\n");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_BLUE);
printf("H.[Help]\n");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN);
printf("Q.[Quit the game]\n");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_BLUE|FOREGROUND_RED|FOREGROUND_GREEN);
printf("-------------------------------\n");
ch=getch();
if(ch=='s'||ch=='S') {
system("cls");
for(i=1; i<=136; i++) {
xxxx=i%8;
COORD pos = {0, 0};
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_BLUE|FOREGROUND_RED|FOREGROUND_GREEN);
printf("Being parsed~ Loading...\n");
printf("----------------------------------\n");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN);
for(j=1; j<=i/8; j++)
printf("█");
cout<<jz[xxxx]<<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_BLUE|FOREGROUND_RED|FOREGROUND_GREEN);
printf("----------------------------------\n");
}
printf("Initialize the...");
Sleep(1000);
break;
}
if(ch=='t'||ch=='T') {
COORD pos = {0, 0};
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);
printf("┏━━━━━━━━━━━━━━━━┓\n");
printf("┃[square big showdown 4.11]
c++人机大战
最新推荐文章于 2024-12-28 09:19:00 发布