DEVC++ 游戏 抢滩登陆

“抢滩登陆”是一款非常有趣的C++游戏,让两名玩家可以一起玩耍,抵抗敌对方的进攻。下面是对这款游戏的介绍:

游戏背景:
在游戏中,两名玩家在海滩上抵抗对抗对方的进攻。玩家需要抵挡对方攻击,消灭对方水晶即胜利。

游戏玩法:
两名玩家需要对抗对方,使用武器抵抗对方的攻击。每个玩家都有自己的武器,同时还可以保护自己。

游戏特色:

  1. 双人合作模式:游戏增加了双人模式,让两名玩家可以一起合作,互相协作,共同完成任务。
  2. 多样的敌人:游戏中有着多种不同的敌人,包括步兵、坦克和飞机等,每种敌人都有不同的攻击方式和弱点,玩家需要根据不同的敌人选择不同的战术。
  3. 武器和防御:游戏中的武器和防御非常丰富,包括枪、和炮等武器,以及防御障碍物等防御。

总之,“抢滩登陆”是一款非常有趣的游戏,下面是代码。

#include<bits/stdc++.h>
#include<conio.h>
#include<windows.h> 
using namespace std;
string a[210]={
	"############################################################",
	"#           #       #                  #       #           #",
	"#          #@#      #         #        #      #&#          #",
	"#                   #         #        #                   #",
	"#           @       #                  #       &           #",
	"#               #   #### #      #      ###                 #",
	"#           @            #      #      #       &           #",
	"#                   #    #       #   ###                   #",
	"#0          @       #    #   #            #    &          1#",
	"#0   *          #             #  #                    $   1#",
	"#0          @       ######           ###       &          1#",
	"#                   #       #   #      #    #              #",
	"#           @       #           #      #       &           #",
	"#                   #        #           #                 #",
	"#           @    #       #   #  #   ####       &           #",
	"#                   #    #          #                      #",
	"#           @       #    #      #   #          &           #",
	"#                        #      #   #                      #",
	"#          #@#        ####          #         #&#          #",
	"#           #                                  #           #",
	"############################################################",
	"wasd,ijkl上下左右移动,x,n攻击,o退出",
	"1号玩家:XXXXX",
	"2号玩家:XXXXX", 
	"1号基地水晶:XXXXXXXXXXXX", 
	"2号基地水晶:XXXXXXXXXXXX",
};
string a1[6]={
	"1号玩家:XXXXX",
	"1号玩家:XXXX",
	"1号玩家:XXX",
	"1号玩家:XX",
	"1号玩家:X",
	"1号玩家:阵亡",
};
string a2[6]={
	"2号玩家:XXXXX",
	"2号玩家:XXXX",
	"2号玩家:XXX",
	"2号玩家:XX",
	"2号玩家:X",
	"2号玩家:阵亡",
};
string b2[13]={
	"2号基地水晶:XXXXXXXXXXXX",
	"2号基地水晶:XXXXXXXXXXX 【侵入】",
	"2号基地水晶:XXXXXXXXXX",
	"2号基地水晶:XXXXXXXXX",
	"2号基地水晶:XXXXXXXX",
	"2号基地水晶:XXXXXXX",
	"2号基地水晶:XXXXXX",
	"2号基地水晶:XXXXX",
	"2号基地水晶:XXXX",
	"2号基地水晶:XXX",
	"2号基地水晶:XX",
	"2号基地水晶:X",
	"2号基地水晶:阵亡",
};
string b1[13]={
	"2号基地水晶:XXXXXXXXXXXX",
	"2号基地水晶:XXXXXXXXXXX 【侵入】",
	"1号基地水晶:XXXXXXXXXX",
	"1号基地水晶:XXXXXXXXX",
	"1号基地水晶:XXXXXXXX",
	"1号基地水晶:XXXXXXX",
	"1号基地水晶:XXXXXX",
	"1号基地水晶:XXXXX",
	"1号基地水晶:XXXX",
	"1号基地水晶:XXX",
	"1号基地水晶:XX",
	"1号基地水晶:X",
	"1号基地水晶:阵亡",
};
int main()
{
	//system("color F8");
	system("title 双人抢滩登陆1.0版本");//标题 
	system("mode con cols=60 lines=37");//设置窗口大小
	string s="|                     双 人 抢 滩 登 陆                    |";
	string s1="|                        开 始 游 戏                       |";
	string s2="|                        玩 法 说 明                       |";
	string s3="|                        更 换 皮 肤                       |"; 
	cout<<"@==========================================================@"<<endl;
	cout<<"|                                                          |"<<endl;
	cout<<"|                                                          |"<<endl;
	for(int i=0;i<s.size();i++){
		cout<<s[i];
		Sleep(10);//Sleep函数延长时间 
	}
	cout<<endl;
	cout<<"|                                                          |"<<endl;
	for(int i=0;i<s1.size();i++){
		cout<<s1[i];
		Sleep(10);
	}
	cout<<endl;
	cout<<"|                                                          |"<<endl;
	for(int i=0;i<s2.size();i++){
		cout<<s2[i];
		Sleep(10);
	}
	cout<<endl;
	cout<<"|                                                          |"<<endl;
	for(int i=0;i<s3.size();i++){
		cout<<s3[i];
		Sleep(10);
	}
	cout<<endl;
	cout<<"|                                                          |"<<endl;
	cout<<"|                                                          |"<<endl;
	cout<<"|                                                          |"<<endl;
	cout<<"|(按‘k’开始游戏,按‘b’看玩法说明,按‘d’换皮肤)        |"<<endl;
	cout<<"@==========================================================@"<<endl;
	char ch;
	ch=getch();//提取键盘指令 
	if(ch=='b'){
		system("cls");
		string c="使用wasd控制‘*’(玩家1)移动,ijkl控制‘$’(玩家2)移动,‘#’为边界,‘x’玩家一攻击,‘n’玩家二攻击,‘0,1’水晶";
		string c1="玩家目标是通过战斗对方,击碎对方水晶,即可胜利。";
		string c2="说明:此为抢滩登陆1.0版本。";
		string c3="更新:增加了换肤功能。";
		cout<<"版本:1.0"<<endl;
		cout<<"按1直接显示所有内容,否则按2。"<<endl;
		int q;
		q=getch();
		if(q=='1'){
			cout<<c3<<endl<<c<<endl<<c1<<endl<<c2<<endl;
		} 
		if(q=='2'){
			for(int i=0;i<c3.size();i++){
				cout<<c3[i];
				Sleep(100);//延时 
			} 
			cout<<endl;
			for(int i=0;i<c.size();i++){
				cout<<c[i];
				Sleep(100);
			} 
			cout<<endl;
			for(int i=0;i<c1.size();i++){
				cout<<c1[i];
				Sleep(100);
			} 
			cout<<endl;
			for(int i=0;i<c2.size();i++){
				cout<<c2[i];
				Sleep(100);
			} 
			cout<<endl;
		}
		cout<<"按y开始游戏。按e换皮肤。"; 
		ch=getch();
	}
	if(ch=='d'||ch=='e'){
		system("cls");
		cout<<"请选择皮肤:"<<endl;
		cout<<"1.【日间色】"<<endl<<"2.【夜间色】"<<endl<<"3.【黑客】"<<endl<<"4.【科幻】"<<endl<<"5.【紫水晶】"<<endl;
		cout<<"开始游戏请按q,换肤请输入序号。";
		char sh;
		while(1){
			sh=getch();
			if(sh-'0'==1)
					system("color f0");
			else if(sh-'0'==2)
					system("color 0f");
			else if(sh-'0'==3)
					system("color 0a");
			else if(sh-'0'==4)
					system("color 09");
			else if(sh-'0'==5)
					system("color 01");
			else if(sh=='q'){
				ch='q';
				break;
			}
		}
	}
	if(ch=='k'||ch=='y'||ch=='q'){
		system("cls");//清屏 
		cout<<"加载代码中";
		Sleep(2000);
		system("cls");
		cout<<"加载代码中 ◎         20%";
		Sleep(2000);
		system("cls");
		cout<<"加载地图中 ◎◎       40%";
		Sleep(2000);
		system("cls");
		cout<<"加载地图中 ◎◎◎     60%";
		Sleep(2000);
		system("cls");
		cout<<"生成地图中 ◎◎◎◎   80%";
		Sleep(2000);
		system("cls");
		cout<<"生成地图中 ◎◎◎◎◎ 100%";
		Sleep(2000);
		system("cls");
		cout<<"完成!!!";
		Sleep(2000);
		system("cls");
		for(int i=0;i<=25;i++){
			cout<<a[i]<<endl;//将地图一行一行输出 
		}
		char b;
		int x=8,y=6,ex=8,ey=53,blooda=3,bloodb=3,blood1=10,blood0=10;//玩家初始坐标 
		//wasd移动 
		while(1){//重复运动 
			b=getch();
			if(b=='a'){ 
				if(a[x][y-1]!='#'&&a[x][y-1]!='@'&&a[x][y-1]!='&'&&a[x][y-1]!='$'&&a[x][y-1]!='0'&&a[x][y-1]!='1'){
					a[x][y]=' ';
					y--;
					a[x][y]='*'; 
				}
			}
			else if(b=='s'){
				if(a[x+1][y]!='#'&&a[x+1][y]!='@'&&a[x+1][y]!='&'&&a[x+1][y]!='$'&&a[x+1][y]!='0'&&a[x+1][y]!='1'){
					a[x][y]=' ';
					x++;
					a[x][y]='*';
				}
			}
			else if(b=='d'){
				if(a[x][y+1]!='#'&&a[x][y+1]!='@'&&a[x][y+1]!='&'&&a[x][y+1]!='$'&&a[x][y+1]!='0'&&a[x][y+1]!='1'){
					a[x][y]=' ';
					y++;
					a[x][y]='*';
				}
			}
			else if(b=='w'){
				if(a[x-1][y]!='#'&&a[x-1][y]!='@'&&a[x-1][y]!='&'&&a[x-1][y]!='$'&&a[x-1][y]!='0'&&a[x-1][y]!='1'){
					a[x][y]=' ';
					x--;
					a[x][y]='*';
				}
			}
			else if(b=='j'){ 
				if(a[ex][ey-1]!='#'&&a[ex][ey-1]!='@'&&a[ex][ey-1]!='&'&&a[ex][ey-1]!='*'&&a[ex][ey-1]!='0'&&a[ex][ey-1]!='1'){
					a[ex][ey]=' ';
					ey--;
					a[ex][ey]='$'; 
				}
			}
			else if(b=='k'){
				if(a[ex+1][ey]!='#'&&a[ex+1][ey]!='@'&&a[ex+1][ey]!='&'&&a[ex+1][ey]!='*'&&a[ex+1][ey]!='0'&&a[ex+1][ey]!='1'){
					a[ex][ey]=' ';
					ex++;
					a[ex][ey]='$';
				}
			}
			else if(b=='l'){
				if(a[ex][ey+1]!='#'&&a[ex][ey+1]!='@'&&a[ex][ey+1]!='&'&&a[ex][ey+1]!='*'&&a[ex][ey+1]!='0'&&a[ex][ey+1]!='1'){
					a[ex][ey]=' ';
					ey++;
					a[ex][ey]='$';
				}
			}
			else if(b=='i'){
				if(a[ex-1][ey]!='#'&&a[ex-1][ey]!='@'&&a[ex-1][ey]!='&'&&a[ex-1][ey]!='*'&&a[ex-1][ey]!='0'&&a[ex-1][ey]!='1'){
					a[ex][ey]=' ';
					ex--;
					a[ex][ey]='$';
				}
			}
			else if(b=='x'){
				if(a[x-1][y]=='$'||a[x][y-1]=='$'||a[x][y+1]=='$'){
					bloodb--;
					a[23]=a2[3-bloodb];
					if(bloodb==0){
						a[ex][ey]=' ';
						ex=8;
						ey=53;
						a[ex][ey]='$';
						bloodb=3;
						a[23]=a2[0];
					}
				}
				else if(a[x-1][y]=='1'||a[x][y-1]=='1'||a[x][y+1]=='1'){
					blood1--;
					a[25]=b2[10-blood1];
					if(blood1==0){
						system("cls");
						cout<<"1号玩家抢占了2号玩家基地,1号玩家胜利!";
						return 0;
					}
				}
			}
			else if(b=='n'){
				if(a[ex-1][ey]=='*'||a[ex][ey-1]=='*'||a[ex][ey+1]=='*'){
					blooda--;
					a[22]=a1[3-blooda];
					if(blooda==0){
						a[x][y]=' ';
						x=8;
						y=6;
						a[x][y]='*';
						blooda=3;
						a[22]=a1[0];
					}
				}
				else if(a[ex-1][ey]=='0'||a[ex][ey-1]=='0'||a[ex][ey+1]=='0'){
					blood0--;
					a[24]=b1[10-blood0];
					if(blood0==0){
						system("cls");
						cout<<"2号玩家抢占了1号玩家基地,2号玩家胜利!";
						return 0;
					}
				}
			}
			if(b=='o'){//退出 
				return 0;
			}
			system("cls");
			for(int i=0;i<=25;i++){
				cout<<a[i]<<endl;
			}
		}
	}
	return 0;
}

记得点赞和关注。 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值