C++ 打怪游戏 原创 小镇5.0正式版--怪物狂欢季

小镇5.0<怪物狂欢季>版本发布,怪物强度显著提升,新增职业选择,包括伤害翻倍的战士和拥有血盾的狂战士。随着代码量增加,考虑使用百度网盘分享.exe文件。作者期待玩家的反馈,并表示将坚持游戏开发。
摘要由CSDN通过智能技术生成

小镇5.0<怪物狂欢季>

Holle,大家好
小镇5.0<怪物狂欢季>
在这里与大家见面了

这个版本怪物会大量加强
所以先加个职业
再做了些微调

代码越来越长了
所以以后考虑用百度网盘直接给.exe
望大家多多支持

你在战场奋勇杀敌的时候
你被一团击中了
你似乎有了选择你自己的能力的机会
面对
*伤害翻倍的战士和拥有血盾的狂战士**
你的选择是…

代码如下

#include<bits/stdc++.h>//头文件
#include<windows.h>//头文件
#include <conio.h>
void xiaozhen();

void  wuqidian();//武器店
void  yaopindian();//药品店
// {
   
void maoxian();//冒险
void daguai();//大怪
void xiaoguai();//小怪
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 start();//开始界面
//}


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资源   X小大怪   F-BOOS    O入口   0你的位置   H军团  |",
                   "|                                                        |",
                   "|      |--------------------- ---------------------------|",
                   "|      |--------------------- -------------H-------------|",
                   "|      |--------------------- ---------------------------|",
                   "|      |----------H---------- ---------------------------|",
                   "|   O0-|--------------------- ------H--------------------|",
                   "|      |------X-------------- ---------------------------|",
                   "|      |-------------------H- ---------------------------|",
                   "|      |----------H---------- ---------------------------|",
                   "|      |--------------------- ---------------------------|",
                   "|      |--------------------- -------H-------------------|",
                   "|                                                        |"};


int x=6,y=5,z=6,l=4;
int baoci=0;
int bao=0;


int tj=0,dj=0;
int xtk=0,xxj=0;
int xxgj=0,xgj=0,xtz=0,xhs=0;

int shengming=4000,shanghai=123412431234,fangyu=11111,jinbi=999900,jingyan=100,shengmingf=999999999;//主角资料

int xhp,xsh,xjb,xdj,xfy;//小怪

int dhp,dsh,djb,ddj,dfy;//大怪

int boosHP=30000,boosSH,boosfy;//BOOS

int huo=0,jijiubao=5;//药品

int tiekuai=30;//材料
int fenjie=5;//材料
int jingkuai=20;//材料
int yuansujingkuai=20;//材料
int tdjh=0;
int spzx=0;

int Xzj=0;//机甲
int Zzj=0;
int Xsj=0;
int bykj=0;

int sy=0,yy=0;

int zhiye=0;

using namespace std;

int main()
{
   
    start();
    system("cls");
    cout<<"千万不能输入字母或特殊符号,探宝WASD移动"<<endl;
    Sleep(1000);
    system("cls");
	xiaozhen();
}
void start()
{
   
    cout<<"				  [小镇5.0正式版]\n";
    cout<<"-------------------------------------------------------------------------------\n" ;
    cout<<"请选择职业(小镇5.0测试运行)"<<endl;
    cout<<"1.战士(生命:1000  伤害:50  防御:20  "<<endl<<"技能:对怪造成 伤害*2的 伤害无视防御  注:对BOOS防御有效  但造成 伤害*3 的伤害)"<<endl;
    cout<<"2.狂热的血战士(生命:400 伤害:120 防御:0 技能:无敌三回合)"<<endl;
    int l;
    cin>>l;
    if(l==1)
    {
   
        shengming=1000,shanghai=50,fangyu=20,jinbi=0,jingyan=100,shengmingf=999999999;//主角资料
        zhiye=1;
    }
    else if(l==2)
    {
   
        shengming=400,shanghai=120,fangyu=0,jinbi=0,jingyan=0,shengmingf=999999999;//主角资料
        zhiye=2;
    }
    else if(l==99)
    {
   
        shengming=1000,shanghai=0,fangyu=0,jinbi=999900,jingyan=99999,shengmingf=999999999;//主角资料
        zhiye=1;
        tiekuai=99999;//材料
        fenjie=5;//材料
        jingkuai=99999;//材料
        yuansujingkuai=99999;//材料
        tdjh=0;
        spzx=0;
    }
    else
    {
   
    	shengming=1000,shanghai=50,fangyu=20,jinbi=0,jingyan=100,shengmingf=999999999;//主角资料
        zhiye=1;
    }
}
void xiaozhen()
{
   
	int i=0,n=0,l=1;
	while (l)
	{
   
		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 xiaozhen();
		}
		system("cls");
		cout<<"				  [小镇5.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<<"输入 9 军团招募(6.0开放)"<<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" ;
				wuqidian();
				cout<<"-------------------------------------------------------------------------------\n" ;
				break;
			case 3:
				cout<<"-------------------------------------------------------------------------------\n" ;
				yaopindian();
				cout<<"-------------------------------------------------------------------------------\n" ;
				break;
			case 4:
				cout<<"-------------------------------------------------------------------------------\n" ;
				zhuangtai();
				cout<<"-------------------------------------------------------------------------------\n" ;
				break;

			case 5:
				cout<<"-------------------------------------------------------------------------------\n" ;
				ziliao();
				cout<<"-------------------------------------------------------------------------------\n" ;
				break;
			case 6:
				cout<<"-------------------------------------------------------------------------------\n" ;
				ronglu();
				cout<<"-------------------------------------------------------------------------------\n" ;
				break;
			case 7:
				cout<<"-------------------------------------------------------------------------------\n" ;

				gongjiangtai();
				cout<<"-------------------------------------------------------------------------------\n" ;
				break;
			case 8:
				cailiaoshangren();
				cout<<"-------------------------------------------------------------------------------\n" ;
				break;
			case 0:
				break;
			default:
				cout<<"不要乱输入"<<endl;
		}
	}
}

void maoxian()
{
   
	//
	int i=0,n=0,l=1;
	if(Zzj==1||Xzj==1||Xsj==1)
	{
   
		while(n!=1&&n!=2&&n!=3)
		{
   
			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;
				Sleep(750);
			}
			else if(n==2&&Zzj==1)
			{
   
				Zzj=2;
				cout<<"你已选择Z原型机"<<endl;
				shengmingf=shengming;
				shengming+=300;
				shanghai+=500;
				Sleep(750);
			}
			else if(n==3&&Xsj==1)
			{
   
				Xsj=2;
				cout<<"你已选择X射线机"<<endl;
				shengmingf=shengming;
				shengming+=500;
				shanghai+=700;
				Sleep(750);
			}
			else
			{
   
				cout<<"请选择有效机甲"<<endl;
			}
		}
	}
	while(l)
	{
   
		system("cls");
		cout<<"-------------------------------------------------------------------------------\n" ;
		if(baoci>10||jingyan/100>7)
		{
   
			cout<<"*小怪已增强*"<<endl;
		}
		if(baoci>20||jingyan/100>10)
		{
   
			cout<<"*大怪已增强*"<<endl;
		}
		cout<<"输入 1 打小怪(1~5级)"<<endl;
		cout<<"输入 2 打大怪(5~10级)"<<endl;
		cout<<"输入 3 打BOOS(15级)"<<endl;
		cout<<"输入 4 探宝"<<endl;
		cout<<"*冒险打怪不能逃跑*"<<endl;
		cout<<"输入 0 返回小镇"<<endl;
		cin>>l;
		switch(l)
		{
   
			case 1:
				cout<<"-------------------------------------------------------------------------------\n" ;
				xiaoguai();
				if(shengming<=0)
				{
   
					break;
				}
				cout<<"-------------------------------------------------------------------------------\n" ;
				break;
			case 2:
				cout<<"-------------------------------------------------------------------------------\n" ;

				if(jingyan/100<3)
				{
   
					cout<<"等级过低,还差"<<300-jingyan<<endl;
					Sleep(750);
					cout<<"-------------------------------------------------------------------------------\n" ;
					break;
				}
				daguai();
				if(shengming<=0)
				{
   
					break;
				}
				cout<<"-------------------------------------------------------------------------------\n" ;
				break;
			case 3:
				cout<<"-------------------------------------------------------------------------------\n" ;
				if(jingyan/100<30)
				{
   
					cout<<"等级过低,还差"<<3000-jingyan<<endl;
					Sleep(750);
					cout<<"-------------------------------------------------------------------------------\n" ;
					break;
				}
				cout<<"-------------------------------------------------------------------------------\n" ;
				BOOS();
				if(boosHP==0) {
   
					break;
				}
				break;
				cout<<"-------------------------------------------------------------------------------\n" ;
			case 4:
				cout<<"-------------------------------------------------------------------------------\n" ;
				tanbao();
				if(shengming<=0)
				{
   
					Sleep(1000);
					break;
				}
				cout<<"-------------------------------------------------------------------------------\n";
				break;
			case 0:
				break;
			default:
				cout<<"不要乱输入"<<endl;
				Sleep(750);
				cout<<"-------------------------------------------------------------------------------\n" ;
		} 
	} 
} 
void zhuangtai(  )
{
   
	system("cls");
	cout<<"你的生命为:"<<shengming<<endl;
	cout<<"你的金币为:"<<"$"<<jinbi<<endl;
	cout<<"你的防御为:"<<fangyu<<endl;
	cout<<"你的伤害为:"<<shanghai<<endl;
	cout<<"你的经验为(100经验=1级):"<<jingyan<<endl;
	cout<<"你的等级为:"<<jingyan/100<<endl;
	cout<<"你拥有的急救包数"<<jijiubao<<endl;
	cout<<"技能MAX斩(无敌,造成2*伤害,boos*3) "<<endl;
	cout<<"分解材料:"<<fenjie<<endl;
	cout<<"铁块:"
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值