C++ 打怪游戏 小镇5.3.0--怪物狂欢季

小镇5.3.0

小镇5.3.0在这场瘟疫中与大家见面了
博主也很久没有更新游戏了
下一周5.4.0也会写出来
望大家多多支持
注意事项在上个版本已经说得很清楚了

还是那句话
为了你的良好游戏体验请不要修改人物参数
(学习除外 ,感觉没什么可学的)
望大家多多支持

改动

1.部分怪增加技能
2.修改细节
3.修复BUG

小镇其他版本入口

小镇的防线快要撑不住了!!
敌方似乎将一种新型药剂注射进了了部分怪!!
你也显得有点力不从心了…
怎么办?!?!?!
你将目光看向了工作中的工匠

跟以前一样
我会放出两个版本
如果出现存档BUG请私信我,谢谢

存档版

存档版
这是.exe,需要代码的请私信

不可存档版

#include<bits/stdc++.h>//头文件
#include<windows.h>//头文件
#include <conio.h>
#include <cstdio>
#include <fstream>
                                      
void xiaozhen();
void  wuqidian();//武器店
void  yaopindian();//药品店
void maoxian();//冒险
void daguai();//大怪
void xiaoguai();//小怪
void shixuepangzi();//嗜血胖子 
void BOOS(); //boos
void zhuangtai();//状态
void ziliao();//资料
void jiangli();//奖励
void tanbao();//探宝
void ronglu();//熔炉
void gongjiangtai();//工匠台
void fenjiecailiao();//奖励分解材料
void jijia(); //制作机甲
void cailiaoshangren();//材料商人
void wuqizhizuo();//武器制作
void juntuanzhaomu();
void start1();//开始界面 
void start2();//开始界面
void shangdian();//商店 
void gongzuoshi();// 
void chenjiu();
void swcd();
void dqcd();
void xcd(); 
void xuefu();
void zhiyewuqi();

char  a[14][100]= {"| R资源 X大怪 F小大怪 O入口 0你的位置  H分解材料 @传送门 |",
                   "|                                                        |",
                   "|      |X-R-F|-X--FH-X---X-F-H-F-H--|      |-F|-F--H-|   |",
                   "|      H     |       |              |-F|FH-|  |      |   |",
                   "|      X     |-H--X--|FF-R|     |-F-|  |      |-F--H-|   |",
                   "|      |--R--|       |    |--H-X|      |-F|-H-|      |--@|",
                   "|   O0-|             |R-FF|     |-F-|-F|  |   |-F-H--|   |",
                   "|      F--F|--F-H-F--|     |-F-H|   |     |   |      |   |",
                   "|      X   |      |  |     |        |FH|-F|-H-|-F--H-|   |",
                   "|      H   |-X--R-|-X--F-R-|--F-F--H|  |             |   |",
                   "|      F   |               R           F    HHFFFHFF-|   |",
                   "|      RFRF|X---H---X--F-R-|-X-F-HF-RHF|-FHFH            |",
                   "|                                                        |"};
                      
char  b[14][100]= {"|R资源 F小大怪 Q嗜血胖子 H分解材料  G吸血蝙蝠 K路障      |",
                   "|                                                        |",
                   "|      |-FH-FHF-HF-R-RG-F--Q--F-G-F-RFQ-F--GF-RQ-G-H-R  |",
                   "| 返回 F   K                          Q        |     |   |",
                   "|   |  |   HGRR    RGFFF QQRRG ------ R ----GQHQ ----|   |",
                   "|   |  R   G  G-GR GG  F -QGGF ------- -----     ----|   |",
                   "|   O0-|-R-G     | QQ  F --QFF ----------------------|   |",
                   "|      R   GG-G-GR  Q  F HH--- -------    -----------|   |",
                   "|      |   G     |GGR  - RH--- ------ KHHK ----------|   |",
                   "|      Q   H-GRG-R  --G--Q G ------- KRRRRK ---------|   |",
                   "|      F   K               | -----  KRHHHHRK --------|   |",
                   "|      |-H-R-Q-Q-Q-G-Q--G--R ----- KRHHHHHHRK -------|   |",
                   "|                                  怪物宝藏区            |"};
int x=6,y=5,z=6,l=4;
int baoci=0;
int bao=0;

int tj=0,dj=0;
bool xxgj=0,xgj=0,xhs=0,xtk=0,xxj=0;
int shengming=4000,shanghai=1234124312,fangyu=11111,jinbi=999900,jingyan=100,shengmingf=999999999;//主角资料
int Xzj=0;//机甲
int Zzj=0;
int Xsj=0;
int huo=0,jijiubao=5;//药品
int tiekuai=0;//材料
int fenjie=0;//材料
int jingkuai=0;//材料
int yuansujingkuai=0;//材料
int tdjh=0;//天地精华 
int spzx=0;//审判之心 
int bykj=0;
int sy=0,yy=0;
int zhiye=0;
int boosdj=1;
int emzx=0; 
int tsd=0;
int xsd=0;
int spj=0; 

int vip=0;

int c[1000];

int xhp,xsh,xjb,xdj,xfy;//小怪
int dhp,dsh,djb,ddj,dfy;//大怪
int boosHP=30000,boosSH,boosfy;//BOOS

using namespace std;

void dqcd()
{
	ifstream infile;   //输入流
    ofstream outfile;   //输出流
 	int i=1; 
    infile.open("存档.txt"); 
    while (!infile.eof()&&i<=33)            // 若未到文件结束一直循环
    {
        infile >> c[i];
		i++;            
    } 
	tj=c[1];
    dj=c[2];
    xxgj=c[3];
    xgj=c[4];
    xtk=c[5];
    xxj=c[6];
    shengming=c[7];
    shanghai=c[8];
    fangyu=c[9];
    jinbi=c[10];
    jingyan=c[11];
    shengmingf=c[12];
    Xzj=c[13];
    Zzj=c[14];
    Xsj=c[15];
    huo=c[16];
    jijiubao=c[17];
    tiekuai=c[18];
    fenjie=c[19];
    jingkuai=c[20];
    yuansujingkuai=c[21];
    tdjh=c[22];
    spzx=c[23];
    bykj=c[24];
    sy=c[25];
    yy=c[26];
    zhiye=c[27];
    boosdj=c[28];
    xhs=c[29];
    emzx=c[30];
    tsd=c[31];
    xsd=c[32];
    spj=c[33];
}
void swcd()
{
	ofstream outfile[3];//创建一个ofstream对象
    c[1]=tj;
    c[2]=dj;
    c[3]=xxgj;
    c[4]=xgj;
    c[5]=xtk;
    c[6]=xxj;
    c[7]=shengming;
    c[8]=shanghai;
    c[9]=fangyu;
    c[10]=jinbi;
    c[11]=jingyan;
    c[12]=shengmingf;
    c[13]=Xzj;
    c[14]=Zzj;
    c[15]=Xsj;
    c[16]=huo;
    c[17]=jijiubao;
    c[18]=tiekuai;
    c[19]=fenjie;
    c[20]=jingkuai;
    c[21]=yuansujingkuai;
    c[22]=tdjh;
    c[23]=spzx;
    c[24]=bykj;
    c[25]=sy;
    c[26]=yy;
    c[27]=zhiye;
    c[28]=boosdj;
    c[29]=xhs;	
    c[30]=emzx;
    c[31]=tsd;
    c[32]=xsd;
    c[33]=spj;
    outfile[0].open("存档.txt");//创建txt 
    for(int i=1;i<=33;i++)
		outfile[0]<<c[i]<<endl;
}
int main()
{
	start1();
	if(zhiye==0)
    	start2();
    system("cls");
    cout<<"千万不能输入字母或特殊符号,探宝WASD移动"<<endl;
    Sleep(1000);
    system("cls");
	xiaozhen();
}
void start1()
{
	int f=0;
	cout<<"                           [小镇5.3.0怪物狂欢季]\n";
    cout<<"-------------------------------------------------------------------------------\n" ;
	cout<<"请输入账号(没有请随便输入)";
	string a,b;
	cin>>a;
	cout<<endl<<"请输入密码(没有请随便输入)";
	cin>>b;
	if(a=="波斯顿大龙虾"&&b=="绿色健康小清新")
	{
		cout<<">>波斯顿大龙虾<< VIP2 玩家,欢迎你"<<endl;
		vip=2;
	}
	if(a=="200575"&&b=="75")
	{
		cout<<"尊贵的VIP8玩家"<<endl;
		vip=8;
	} 
	if(a=="MC"&&b=="元气")
	{
		cout<<">>MC<< VIP 3 玩家,欢迎你"<<endl;
		vip=3;
	} 
	int l;
	cout<<"输入 1 读取存档"<<endl;	
	cout<<"输入 2 开始新的一局"<<endl;
	cin>>l;
	if(l==1)
	{
		//dqcd();
		if(zhiye==0&&f==0)
			cout<<"普通玩家你好,检测到你没有存档以为你重新开始一局"<<endl;
		if(vip==2&&zhiye==0) 
		{
			cout<<"尊敬的>>波斯顿大龙虾<< VIP2 玩家,检测到当前您没有存档,以为你重新开始一局(VIP2礼包)"<<endl;
			vip=2; 
		}
		if(vip==3&&zhiye==0) 
		{
			cout<<"尊敬的>>MC<< VIP3 玩家,检测到当前您没有存档,以为你重新开始一局(VIP3礼包)"<<endl;
			vip=3; 
		}
		Sleep(3000);
	}
	system("cls"); 
}
void start2()
{
    cout<<"                           [小镇5.3.0怪物狂欢季]\n";
    cout<<"-------------------------------------------------------------------------------\n" ;
    cout<<"                               请选择职业"<<endl;
    cout<<"                                 1.战士"<<endl
		<<"                        生命:5000  伤害:50  防御:20  "<<endl
		<<"                    技能:MAX斩,对怪造成 伤害*2的 伤害无视防御"<<endl 
		<<"                    注:对BOOS防御有效  但造成 伤害*3 的伤害"<<endl<<endl;
    cout<<"                              2.狂热的血战士"<<endl
		<<"                        生命:4000 伤害:100 防御:10 "<<endl
		<<"                            技能:血神盾,无敌三回合 "<<endl<<endl;
	cout<<"                                  3.天使"<<endl
		<<"                         生命:6000 伤害:60 防御:50"<<endl
		<<"      技能:天使救赎与惩戒,恢复500血,并造成 100*怪物等级 伤害,冷却10回合"<<endl;
    int l;
    cin>>l;
    if(l==1)
    {
        shengming=5000,shanghai=50,fangyu=20,jinbi=150,jingyan=100,shengmingf=999999999;//主角资料
        zhiye=1;
        if(vip==3)
        {
        	shanghai+=50;
        	fangyu+=60;
        	tiekuai+=50;
        	fenjie+=100;
        	jinbi+=400;
			Xzj=1; 
		}
		if(vip==2)
		{
			shanghai+=50;
			fangyu+=50;
			jinbi+=300;
			Xzj=1;
		}
		if(vip==8)
		{
			shengming=20000,shanghai=2000,fangyu=2000,jinbi=999900,jingyan=99999,shengmingf=999999999;//主角资料
	        jijiubao=100;
	        Xsj=1;
	        tiekuai=99999;//材料
	        fenjie=5;//材料
	        jingkuai=99999;//材料
	        yuansujingkuai=99999;//材料
	        tdjh=0;
	        spzx=0;
	        tj=1;
	        dj=1;
		}
    }
    else if(l==2) 
    {
        shengming=4000,shanghai=100,fangyu=10,jinbi=150,jingyan=0,shengmingf=999999999;//主角资料
        zhiye=2;
        if(vip==3)
        {
        	shanghai+=50;
        	fangyu+=60;
        	tiekuai+=50;
        	fenjie+=100;
        	jinbi+=400;
			Xzj=1; 
		}
		if(vip==2)
		{
			shanghai+=50;
			fangyu+=50;
			jinbi+=300;
			Xzj=1;
		}
		if(vip==8)
		{
			shengming=20000,shanghai=2000,fangyu=2000,jinbi=999900,jingyan=99999,shengmingf=999999999;//主角资料
	        
	        jijiubao=100;
	        Xsj=1;
	        tiekuai=99999;//材料
	        fenjie=5;//材料
	        jingkuai=99999;//材料
	        yuansujingkuai=99999;//材料
	        tdjh=0;
	        spzx=0;
	        tj=1;
	        dj=1;
		}
    }
    else
    {
    	shengming=6000,shanghai=60,fangyu=50,jinbi=100,jingyan=0,shengmingf=999999999;//主角资料
        zhiye=3;
        if(vip==3)
        {
        	shanghai+=50;
        	fangyu+=60;
        	tiekuai+=50;
        	fenjie+=100;
        	jinbi+=400;
			Xzj=1;  
		}
		if(vip==2)
		{
			shanghai+=50;
			fangyu+=50;
			jinbi+=300;
			Xzj=1;
		}
		if(vip==8)
		{
			shengming=20000,shanghai=2000,fangyu=2000,jinbi=999900,jingyan=99999,shengmingf=999999999;//主角资料
	        
	        jijiubao=100;
	        Xsj=1;
	        tiekuai=99999;//材料
	        fenjie=5;//材料
	        jingkuai=99999;//材料
	        yuansujingkuai=99999;//材料
	        tdjh=0;
	        spzx=0;
	        tj=1;
	        dj=1;
		}
	}
}
void xiaozhen()
{
	swcd();
	int i=0,n=0,l=1;
	while (l)
	{
		
		system("cls");
		cout<<"                           [小镇5.3.0怪物狂欢季]\n";
		cout<<"-------------------------------------------------------------------------------\n" ;
		cout<<"输入 1 冒险"<<endl;
		cout<<"输入 2 探宝"<<endl;
		cout<<"输入 3 商店"<<endl;
		cout<<"输入 4 工作室"<<endl;
		cout<<"输入 5 查看自己状态"<<endl;
		cout<<"输入 6 查看游戏资料"<<endl;
		cout<<"输入 7 查看成就"<<endl;
		cout<<"输入 8 存档(没事按按)"<<endl;
		cout<<"输入 0 结束游戏"<<endl;
		cin>>l;
		switch(l)
		{
			case 1:
				cout<<"-------------------------------------------------------------------------------\n" ;
				maoxian();
				if(Xzj==2)
				{

					shanghai-=300;
					Xzj=1;
				}
				else if(Zzj==2)
				{
					shanghai-=500;
					Zzj=1;
				}
                else if(Xsj==2)
                {
                    shanghai-=500;
                    Xsj=1;
                }
				if(shengming>shengmingf)
				{
					shengming=shengmingf;
					cout<<"机甲增幅已解除"<<endl;
					Sleep(750);
				}
				cout<<"-------------------------------------------------------------------------------\n" ;
				break;
			case 2:
				cout<<"-------------------------------------------------------------------------------\n" ;
				tanbao();
				cout<<"-------------------------------------------------------------------------------\n" ;
				break;
			case 3:
				cout<<"-------------------------------------------------------------------------------\n" ;
				shangdian(); 
				cout<<"-------------------------------------------------------------------------------\n" ;
				break;
			case 4:
				cout<<"-------------------------------------------------------------------------------\n" ;
				gongzuoshi();
				cout<<"-------------------------------------------------------------------------------\n" ;
				break;
			case 5:
				cout<<"-------------------------------------------------------------------------------\n" ;
				zhuangtai();
				cout<<"-------------------------------------------------------------------------------\n" ;
				break;
			case 6:
				cout<<"-------------------------------------------------------------------------------\n" ;
				ziliao();
				cout<<"-------------------------------------------------------------------------------\n" ;
				break; 
			case 7:
				cout<<"-------------------------------------------------------------------------------\n" ;
				chenjiu();
				cout<<"-------------------------------------------------------------------------------\n" ;
				break; 
			case 8:
				//swcd();
				break; 
			case 0:
				//swcd();
				break;
			default:
				cout<<"不要乱输入"<<endl;
		}
		if(Xzj==2)
		{
			shanghai-=300;
			Xzj=1;
		}
		else if(Zzj==2)
		{
			shanghai-=500;
			Zzj=1;
		}
		else if(Xsj==2)
        {
            shanghai-=500;
            Xsj=1;
        }
		if(shengming>shengmingf)
		{
			shengming=shengmingf;
			cout<<"机甲增幅已解除"<<endl;
			Sleep(750);
		}
		if(shengming<=0)
		{
			cout<<"你死了"<<endl;
			return ;
		}
	}
}
void maoxian()
{
	//
	int i=0,n=0,l=1,f1=1;
	if(Zzj==1||Xzj==1||Xsj==1)
	{
		while(n!=1&&n!=2&&n!=3&&f1)
		{
			cout<<"请选择作战机甲"<<endl;
			cout<<"输入 1 选择X原型机"<<endl;
			cout<<"输入 2 选择Z原型机"<<endl;
			cout<<"输入 3 选择X射线机"<<endl;
			cin>>n;
			if(n==1&&Xzj==1)
			{
				Xzj=2;
				cout<<"你已选择X原型机"<<endl;
				shengmingf=shengming;
				shengming+=500;
				shanghai+=200;
				f1=0;
				Sleep(750);
			}
			else if(n==2&&Zzj==1)
			{
				Zzj=2;
				cout<<"你已选择Z原型机"<<endl;
				shengmingf=shengming;
				shengming+=300;
				shanghai+=500;
				f1=0;
				Sleep(750);
			}
			else if(n==3&&Xsj==1)
			{
				Xsj=2;
				cout<<"你已选择X射线机"<<endl;
				shengmingf=shengming;
				shengming+=500;
				shanghai+=700;
				f1=0;
				Sleep(750);
			}
			else
			{
				cout<<"请选择有效机甲"<<endl;
				f1=1;
			}
		}
	}
	while(l)
	{
		system("cls");
		cout<<"-------------------------------------------------------------------------------\n" ;
		if(baoci>10||jingyan/100>7)
		{
			cout<<"*远古骷髅已增强*"<<endl;
		}
		if(baoci>20||jingyan/100>10)
		{
			cout<<"*远古骑士已增强*"<<endl;
		}
		cout<<"输入 1 打远古骷髅"<<endl;
		cout<<"输入 2 打远古骑士"<<endl;
		cout<<"输入 3 打远古凶兽"<<endl; 
		cout<<"输入 4 打吸血蝙蝠"<<endl; 
		cout<<"输入 5 打上古异体"<<endl;
		cout<<"输入 0 返回小镇"<<endl;
		cin>>l;
		switch(l)
		{
			case 1:
				cout<<"-------------------------------------------------------------------------------\n" ;
				xiaoguai();
				cout<<"-------------------------------------------------------------------------------\n" ;
				break;
			case 2:
				cout<<"-------------------------------------------------------------------------------\n" ;
				daguai();
				cout<<"------------------------------------
  • 10
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值