王国之争1.0版本

有bug私聊我

花了我114514秒

#include <bits/stdc++.h>
#include <windows.h>
#include <conio.h>
using namespace std;
//▲●◆■★█▌━┃┍┓┗┛
int a=1,m=1,c=1,f=1,dr[114514],u,num,x,y,xx,yy;
double CD,DCD;
char b,d,e,g;
//主角
int xueliang=100,xueliang2=10000;
void HC(){
	CONSOLE_CURSOR_INFO cur={1,0};
	SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE),&cur);
}
void G(int a114514,int b1919810){
	COORD pos = {1,0};
	HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);
	SetConsoleCursorPosition(hOut,pos);
}
void S(int ForgC, int BackC) {
	WORD wColor = ((BackC & 0x0F) << 4) + (ForgC & 0x0F);
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), wColor);
}
//19*30 
void t1(){
	xueliang=100,xueliang2=10000,CD=3.0,x=10,y=3,xx=10,yy=29,DCD=15.0;
    system("mode con cols=70 lines=30");
	system("cls");
	long long u=time(0);
	while(xueliang>0&&xueliang2>0){
		cout << "\n";
		for(int i=1;i <= 19;i++){
			for(int j=1;j <= 30;j++){
				if(i==1||i==19||j==1||j==30){
					S(8,0);
					cout << "■";
					S(15,0);
				}else if(i==x&&j==y){
					S(11,0);
					cout << "●";
					S(15,0);
				}else if(i==xx&&j==yy){
					S(14,0);
					cout << "●";
					S(15,0);
				}else{
					cout << "  ";
				}
			}
			cout << endl;
		}
		cout << "\n我方血量:";
		S(12,0);
		for(int i=1;i <= xueliang/10;i++) cout << "█";
		if(xueliang2%10 > 5) cout << "█";
		if(xueliang%10 == 5 && xueliang != 0) cout << "▌";
		cout << "   " << xueliang<<"               ";
		S(15,0);
		cout << "\n\n敌方血量:";
		S(12,0);
		for(int i=1;i <= xueliang2/500;i++) cout << "█";
		if(xueliang2%500 > 250) cout << "█";
		else if(xueliang2%500 <= 250&& xueliang2%5!=0&& xueliang2 != 0) cout << "▌";
		cout << "   " << xueliang2<<"               ";
		S(15,0);
		if(CD < 0) CD=0.0;
		if(DCD < 0) DCD=0.0;
		cout << "\n\nCD:";
		printf("%.1lf",CD);
		cout << "\n\nDCD:";
		printf("%.1lf",DCD);
		cout << "     ";
		if(u%30==0&&(x==xx||(xx-1)==x||(xx-2)==x||(xx+1)==x||(xx+2)==x||(xx+3)==x||(xx-3)==x)&&((yy==y||(yy-1)==y||(yy-2)==y||(yy+1)==y||(yy+2)==y||(yy+3)==y||(yy-3)==y))) xueliang-=15; 
		if(GetAsyncKeyState('A'))if(y>2)y--;
		if(GetAsyncKeyState('D'))if(y<29)y++;
		if(GetAsyncKeyState('W'))if(x>2)x--;
		if(GetAsyncKeyState('S'))if(x<18)x++;
		if(GetAsyncKeyState(VK_SPACE)&&CD==0.0){
			CD=5.0;
			if((x==xx||(x-1)==xx||(x-2)==xx||(x+1)==xx||(x+2)==xx)&&((y==yy||(y-1)==yy||(y-2)==yy||(y+1)==yy||(y+2)==yy))) xueliang2-=100;
		}
		if(GetAsyncKeyState('X')&&DCD==0.0){
			DCD=15.0;
			if((x==xx||(x-1)==xx||(x-2)==xx||(x+1)==xx||(x+2)==xx||(x+3)==xx||(x-3)==xx)&&((y==yy||(y-1)==yy||(y-2)==yy||(y+1)==yy||(y+2)==yy||(y+3)==yy||(y-3)==yy))) xueliang2-=1500;
		}
		if(xx==x&&yy==y){
			system("cls");
			xueliang-=5,xueliang2-=10;
		}
		int uuu=rand()%4+1;
		if(uuu==2&&xx<18)xx++;
		else if(uuu==1&&xx>2)xx--;
		else if(uuu==4&&yy<29)yy++;
		else if(uuu==3&&yy>2)yy--;
		G(0,0);
		Sleep(5);
		CD -= 0.05;DCD -= 0.05;
	}
	system("cls");
	cout << endl;
	num = time(0)-u;
	if(xueliang2 <= 0) cout << "恭喜你,你赢了\n\n";
	else cout << "很遗憾,你输了\n\n";
	cout << "总用时" << num << "秒\n\n";
	cout << "等级:";
	if(num <= 200&&xueliang!=0) cout << "★★★★★\n\n";
	else if(num <= 300&&xueliang!=0) cout <<"★★★★☆\n\n";
	else if(num <= 500&&xueliang!=0) cout <<"★★★☆☆\n\n";
	else if(num <= 700&&xueliang!=0) cout << "★★☆☆☆\n\n";
	else if(num <= 1000&&xueliang!=0) cout << "★☆☆☆☆\n\n";
	else cout << "☆☆☆☆☆\n\n";	
	Sleep(5000);
}
void t2(){
    system("mode con cols=70 lines=30");
	system("cls");
	long long u=time(0);
	while(xueliang>0&&xueliang2>0){
		cout << "\n";
		for(int i=1;i <= 19;i++){
			for(int j=1;j <= 30;j++){
				if(i==1||i==19||j==1||j==30){
					S(9,0);
					cout << "■";
					S(15,0);
				}else if(i==x&&j==y){
					S(11,0);
					cout << "●";
					S(15,0);
				}else if(i==xx&&j==yy){
					S(14,0);
					cout << "●";
					S(15,0);
				}else{
					cout << "  ";
				}
			}
			cout << endl;
		}
		cout << "\n我方血量:";
		S(12,0);
		for(int i=1;i <= xueliang/10;i++) cout << "█";
		if(xueliang2%10 > 5) cout << "█";
		if(xueliang%10 == 5 && xueliang != 0) cout << "▌";
		cout << "   " << xueliang<<"               ";
		S(15,0);
		cout << "\n\n敌方血量:";
		S(12,0);
		for(int i=1;i <= xueliang2/500;i++) cout << "█";
		if(xueliang2%500 > 250) cout << "█";
		else if(xueliang2%500 <= 250&& xueliang2%5!=0&& xueliang2 != 0) cout << "▌";
		cout << "   " << xueliang2<<"               ";
		S(15,0);
		if(CD < 0) CD=0.0;
		if(DCD < 0) DCD=0.0;
		cout << "\n\nCD:";
		printf("%.1lf",CD);
		cout << "\n\nDCD:";
		printf("%.1lf",DCD);
		if(GetAsyncKeyState('A'))if(y>2)y--;
		if(GetAsyncKeyState('D'))if(y<29)y++;
		if(GetAsyncKeyState('W'))if(x>2)x--;
		if(GetAsyncKeyState('S'))if(x<18)x++;
		if(GetAsyncKeyState(VK_SPACE)&&CD==0.0){
			CD=5.0;
			if((x==xx||(x-1)==xx||(x-2)==xx||(x+1)==xx||(x+2)==xx)&&((y==yy||(y-1)==yy||(y-2)==yy||(y+1)==yy||(y+2)==yy))) xueliang2-=100;
		}
		if(GetAsyncKeyState('X')&&DCD==0.0){
			DCD=15.0;
			if((x==xx||(x-1)==xx||(x-2)==xx||(x+1)==xx||(x+2)==xx||(x+3)==xx||(x-3)==xx)&&((y==yy||(y-1)==yy||(y-2)==yy||(y+1)==yy||(y+2)==yy||(y+3)==yy||(y-3)==yy))) xueliang2-=1500;
		}
		if(xx==x&&yy==y){
			system("cls");
			xueliang-=5,xueliang2-=10;
		}
		int uuu=rand()%4+1;
		if(uuu==2&&xx<18)xx++;
		else if(uuu==1&&xx>2)xx--;
		else if(uuu==4&&yy<29)yy++;
		else if(uuu==3&&yy>2)yy--;
		G(0,0);
		Sleep(5);
		CD -= 0.05;DCD -= 0.05;
	}
	system("cls");
	cout << endl;
	num = time(0)-u;
	if(xueliang2 <= 0) cout << "恭喜你,你赢了\n\n";
	else cout << "很遗憾,你输了\n\n";
	cout << "总用时" << num << "秒\n\n";
	cout << "等级:";
	if(num <= 200&&xueliang!=0) cout << "★★★★★\n\n";
	else if(num <= 300&&xueliang!=0) cout <<"★★★★☆\n\n";
	else if(num <= 500&&xueliang!=0) cout <<"★★★☆☆\n\n";
	else if(num <= 700&&xueliang!=0) cout << "★★☆☆☆\n\n";
	else if(num <= 1000&&xueliang!=0) cout << "★☆☆☆☆\n\n";
	else cout << "☆☆☆☆☆\n\n";	
	Sleep(5000);
}
void t3(){
    system("mode con cols=70 lines=30");
	system("cls");
	long long u=time(0);
	while(xueliang>0&&xueliang2>0){
		cout << "\n";
		for(int i=1;i <= 19;i++){
			for(int j=1;j <= 30;j++){
				if(i==1||i==19||j==1||j==30){
					S(10,0);
					cout << "■";
					S(15,0);
				}else if(i==x&&j==y){
					S(11,0);
					cout << "●";
					S(15,0);
				}else if(i==xx&&j==yy){
					S(14,0);
					cout << "●";
					S(15,0);
				}else{
					cout << "  ";
				}
			}
			cout << endl;
		}
		cout << "\n我方血量:";
		S(12,0);
		for(int i=1;i <= xueliang/10;i++) cout << "█";
		if(xueliang2%10 > 5) cout << "█";
		if(xueliang%10 == 5 && xueliang != 0) cout << "▌";
		cout << "   " << xueliang<<"               ";
		S(15,0);
		cout << "\n\n敌方血量:";
		S(12,0);
		for(int i=1;i <= xueliang2/500;i++) cout << "█";
		if(xueliang2%500 > 250) cout << "█";
		else if(xueliang2%500 <= 250&& xueliang2%5!=0&& xueliang2 != 0) cout << "▌";
		cout << "   " << xueliang2<<"               ";
		S(15,0);
		if(CD < 0) CD=0.0;
		if(DCD < 0) DCD=0.0;
		cout << "\n\nCD:";
		printf("%.1lf",CD);
		cout << "\n\nDCD:";
		printf("%.1lf",DCD);
		if(GetAsyncKeyState('A'))if(y>2)y--;
		if(GetAsyncKeyState('D'))if(y<29)y++;
		if(GetAsyncKeyState('W'))if(x>2)x--;
		if(GetAsyncKeyState('S'))if(x<18)x++;
		if(GetAsyncKeyState(VK_SPACE)&&CD==0.0){
			CD=5.0;
			if((x==xx||(x-1)==xx||(x-2)==xx||(x+1)==xx||(x+2)==xx)&&((y==yy||(y-1)==yy||(y-2)==yy||(y+1)==yy||(y+2)==yy))) xueliang2-=100;
		}
		if(GetAsyncKeyState('X')&&DCD==0.0){
			DCD=15.0;
			if((x==xx||(x-1)==xx||(x-2)==xx||(x+1)==xx||(x+2)==xx||(x+3)==xx||(x-3)==xx)&&((y==yy||(y-1)==yy||(y-2)==yy||(y+1)==yy||(y+2)==yy||(y+3)==yy||(y-3)==yy))) xueliang2-=1500;
		}
		if(xx==x&&yy==y){
			system("cls");
			xueliang-=5,xueliang2-=10;
		}
		int uuu=rand()%4+1;
		if(uuu==2&&xx<18)xx++;
		else if(uuu==1&&xx>2)xx--;
		else if(uuu==4&&yy<29)yy++;
		else if(uuu==3&&yy>2)yy--;
		G(0,0);
		Sleep(5);
		CD -= 0.05;DCD -= 0.05;
	}
	system("cls");
	cout << endl;
	num = time(0)-u;
	if(xueliang2 <= 0) cout << "恭喜你,你赢了\n\n";
	else cout << "很遗憾,你输了\n\n";
	cout << "总用时" << num << "秒\n\n";
	cout << "等级:";
	if(num <= 200&&xueliang!=0) cout << "★★★★★\n\n";
	else if(num <= 300&&xueliang!=0) cout <<"★★★★☆\n\n";
	else if(num <= 500&&xueliang!=0) cout <<"★★★☆☆\n\n";
	else if(num <= 700&&xueliang!=0) cout << "★★☆☆☆\n\n";
	else if(num <= 1000&&xueliang!=0) cout << "★☆☆☆☆\n\n";
	else cout << "☆☆☆☆☆\n\n";	
	Sleep(5000);
}
void GAME(){
	system("cls");
	while(1){
    	system("mode con cols=46 lines=40");
		if(c==1){
			cout << "\n----------------- 请选择地图 -----------------\n\n\n";
			S(10,0);
			cout << "             ┍1━━━━━━━━┓\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┃    高山险地     ┃\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┗━━━━━━━━1┛\n";
			S(15,0);
			cout << "             ┍2━━━━━━━━┓\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┃    冰天雪地     ┃\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┗━━━━━━━━2┛\n";
			cout << "             ┍3━━━━━━━━┓\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┃    热带雨林     ┃\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┗━━━━━━━━3┛\n";
			cout << "             ┍4━━━━━━━━┓\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┃      退出       ┃\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┗━━━━━━━━4┛\n";
		}else if(c==2){
			cout << "\n----------------- 请选择地图 -----------------\n\n\n";
			cout << "             ┍1━━━━━━━━┓\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┃    高山险地     ┃\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┗━━━━━━━━1┛\n";
			S(10,0);
			cout << "             ┍2━━━━━━━━┓\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┃    冰天雪地     ┃\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┗━━━━━━━━2┛\n";
			S(15,0);
			cout << "             ┍3━━━━━━━━┓\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┃    热带雨林     ┃\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┗━━━━━━━━3┛\n";
			cout << "             ┍4━━━━━━━━┓\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┃      退出       ┃\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┗━━━━━━━━4┛\n";
		}else if(c==3){
			cout << "\n----------------- 请选择地图 -----------------\n\n\n";
			cout << "             ┍1━━━━━━━━┓\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┃    高山险地     ┃\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┗━━━━━━━━1┛\n";
			cout << "             ┍2━━━━━━━━┓\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┃    冰天雪地     ┃\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┗━━━━━━━━2┛\n";
			S(10,0);
			cout << "             ┍3━━━━━━━━┓\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┃    热带雨林     ┃\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┗━━━━━━━━3┛\n";
			S(15,0);
			cout << "             ┍4━━━━━━━━┓\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┃      退出       ┃\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┗━━━━━━━━4┛\n";
		}else if(c==4){
			cout << "\n----------------- 请选择地图 -----------------\n\n\n";
			cout << "             ┍1━━━━━━━━┓\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┃    高山险地     ┃\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┗━━━━━━━━1┛\n";
			cout << "             ┍2━━━━━━━━┓\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┃    冰天雪地     ┃\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┗━━━━━━━━2┛\n";
			cout << "             ┍3━━━━━━━━┓\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┃    热带雨林     ┃\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┗━━━━━━━━3┛\n";
			S(10,0);
			cout << "             ┍4━━━━━━━━┓\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┃      退出       ┃\n";
			cout << "             ┃                 ┃\n";
			cout << "             ┗━━━━━━━━4┛\n";
			S(15,0);
		}
		d = _getch();
		if(d==72){
			if(c==1) c=4;
			else c--;
		}
		if(d==80){
			if(c==4) c=1;
			else c++;
		}
		if(c==1&&d==32){
			t1();
		system("cls");
		}else if(c==2&&d==32){
			t2();
		system("cls");
		}else if(c==3&&d==32){
			t3();
		system("cls");
		}else if(c==4&&d==32){
			return ;
		}
		G(0,0);
	}
}
void J(){
	system("cls");
	cout << "\n-----按↑↓移动\n\n";
	cout << "-----一局一共有10条命,当命用完后,游戏失败\n\n";
	cout << "-----当拿到击败对方国王游戏胜利\n\n";
	cout << "-----技能:肘击   CD:5.0秒\n\n";
	cout << "-----技能:臭气弹   CD:15.0秒\n\n";
	cout << "-----200秒:5★\n\n";
	cout << "-----300秒:4★\n\n";
	cout << "-----500秒:3★\n\n";
	cout << "-----700秒:2★\n\n";
	cout << "-----1000秒:1★\n\n";
	cout << "-----1000秒以上:0★\n\n\n";
	cout << "                  按0退出\n\n\n                  ";
	e = _getch();
	if(e==48) return ;
	else J(); 
}
void start(){
    system("mode con cols=46 lines=40");
	while(true){
		cout << "\n----------------- 王国之争 -------------------\n";
		cout << "------------- 作者:ZZBMC无敌! ---------------\n";
		cout << "------------- 洛谷手搓工坊成员 ---------------\n";
		cout << "------------ 有幸请加入我们团队 --------------\n";
		cout << "------- 网站名:luogu.com.cn/team/79951 -------\n\n\n";
		cout << "   1.0版本:\n\n";
		cout << "-----后续有什么建议可私聊我\n\n";
		cout << "-----喜欢的话记得一键三连哦\n\n";
		cout << "-----谢谢您的支持!!!\n\n";
		cout << "-----目前只有3个地图,作者后续会更新\n\n-----";
		S(5,0);
		cout << "不用输入,只需按空格确认\n\n\n";
		S(15,0);
		if(a==1){
			cout << "             ┍━━━━━━━━┓\n";
			cout << "             ┃    ";
			S(10,0);
			cout << "开始游戏";
			S(15,0);
			cout << "    ┃\n";
			cout << "             ┣━━━━━━━━┫\n";
			cout << "             ┃    ";
			cout << "游戏介绍";
			cout << "    ┃\n";
			cout << "             ┣━━━━━━━━┫\n";
			cout << "             ┃    ";
			cout << "退出游戏";
			cout << "    ┃\n";
			cout << "             ┗━━━━━━━━┛\n";
		}else if(a==2){
			cout << "             ┍━━━━━━━━┓\n";
			cout << "             ┃    ";
			cout << "开始游戏";
			cout << "    ┃\n";
			cout << "             ┣━━━━━━━━┫\n";
			cout << "             ┃    ";
			S(10,0);
			cout << "游戏介绍";
			S(15,0);
			cout << "    ┃\n";
			cout << "             ┣━━━━━━━━┫\n";
			cout << "             ┃    ";
			cout << "退出游戏";
			cout << "    ┃\n";
			cout << "             ┗━━━━━━━━┛\n";
		}else if(a==3){
			cout << "             ┍━━━━━━━━┓\n";
			cout << "             ┃    ";
			cout << "开始游戏";
			cout << "    ┃\n";
			cout << "             ┣━━━━━━━━┫\n";
			cout << "             ┃    ";
			cout << "游戏介绍";
			cout << "    ┃\n";
			cout << "             ┣━━━━━━━━┫\n";
			cout << "             ┃    ";
			S(10,0);
			cout << "退出游戏";
			S(15,0);
			cout << "    ┃\n";
			cout << "             ┗━━━━━━━━┛\n";
		}else{
			cout << "\n\n\n                 输入有误,请重试";
			Sleep(1000);
			continue; 
		}
		b = _getch();
		if(b==72){
			if(a==1) a=3;
			else a--;
		}
		if(b==80){
			if(a==3) a=1;
			else a++;
		}
		if(a==1&&b==32){
			c=1;
			GAME();
    		system("cls");
		}else if(a==2&&b==32){
			a=1;
			J();
			system("cls");
		}else if(a==3&&b==32){
			system("cls");
			S(12,0);
			cout << "\n\n\n\n\n\n\n\n\n\n                  GAME OVER!\n\n\n\n\n\n\n\n\n\n";
			return ;
		}
		Sleep(5);
		G(0,0);
	}
}	

int main() {HC();srand(time(NULL));start();return 0;} //梅沙用的man憨猪 

制作不易

喜欢就给个三连吧

万分感谢!!!

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
yuzu是一款开源的Nintendo Switch模拟器,它能够在Linux或Windows平台上模拟Switch平台的大部分游戏。对于性能较好的机器,yuzu可以流畅运行游戏,且没有长时间的加载等待。不过需要注意的是,尽管yuzu可以作为没有Switch的玩家尝鲜的工具,但实际游戏效果体验可能不如使用Switch本体好。,针对《王国之泪》这款游戏,有些玩家在等待正式卡带到货之前,打算先用yuzu模拟器体验一下游戏。 此外,像《超级马力欧:奥德赛》等游戏的开发者们也在游戏开发中费尽心思,采用了一些小技巧来保持游戏体验的流畅度,例如在渲染上进行一些小trick。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [在 Linux 上使用 yuzu 模拟 Nintendo Switch 试玩王国之泪](https://blog.csdn.net/u013360850/article/details/130782281)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [《王国之泪》掉帧严重怎么破?超频Switch教程来了,稳定30帧运行](https://blog.csdn.net/QbitAI/article/details/130737652)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值