首页 > 编程语言 >[C++] 小游戏 斗破苍穹 2.2.1至2.11.5所有版本(下) zty出品

[C++] 小游戏 斗破苍穹 2.2.1至2.11.5所有版本(下) zty出品

时间:2024-06-03 20:02:04浏览次数:15  
标签:color money system C++ break player 斗破 zty printf

2.10.6

#include<stdio.h>
#include<iostream>
#include<ctime>
#include<bits/stdc++.h>
#include<time.h>
#include<windows.h> //SLEEP函数
using namespace std;
int boss1=0,boss2=0;
struct Player {//玩家结构体,并初始化player
char name[21];
int attack;
int defense;
int health;
long int max_health;
int level;
int exp;
int range_exp;
long int max_exp;
} player= {"勇者",100,80,200,200,1,0,0,100};
struct Enemy {//怪的结构体,并初始化各种怪
char name[20];
char wupin[20];
int attack;
int defense;
int health;
int money;
long int exp;
int wupin_sign;
int wupinpro;
int double_attack;
int miss;
}
//怪,拿格伦石人举例
// 怪变量  怪名     掉落的装备 攻   防  血  金币 经验 掉落装备编号 掉落概率 真伤(被防御后的破甲伤害)   不能改
//  gl= {"格伦石人","石铠甲",  30, 150,1000,500, 250,      11,       7,        1,                         0},
    gl= {"格伦石人","石铠甲",30,150,1000,500,250,11,7,1,0},
    zhizhu= {"洞穴蜘蛛","蜘蛛毒剑",140,20,250,400,200,12,5,1,0},
    ymr= {"野蛮人","粗制石剑",20,20,150,100,50,13,5,1,0},
    nz= {"牛仔","战斗马甲",80,20,250,500,250,14,10,1,0},
    strongman= {"森林巨人","传说圣甲",50,50,580,200,100,1,5,1,0},
    witch= {"兽人","重甲",35,55,250,50,50,2,4,1,1},
    xiyi= {"毒蜴","鳞甲",20,25,80,30,35,3,8,2,2},
    big_strongman= {"喷火龙","巨龙晶石",40*5,50*5,200*5,200*5,100*5,4,4,2,0},
    lion= {"皇家士兵","尚方宝剑",100,30,380,200,100,5,5,1,0},
    horse= {"独眼巨人","碧血战锤",50,22,360,50,50,6,5,1,1},
    bee= {"剑客","西洋剑",27,11,60,30,35,7,5,2,2},
    shitu= {"凋零女巫","凋零通行证",1400,500,15000,10000,5000,15,10,1,0},
    dljs= {"凋零巨兽","凋零之心",1200,700,20000,10000,5000,10,7,1,0},
    pika= {"皮卡超人","\0",300,40*8,1000,2000,1000,0,0,1,0},
    dapika= {"雷霆皮卡","雷霆之刃",350,40*10,1500,3000,2000,8,6,6,0},
    cl= {"熔岩飞龙","\0",450,50*10,2000,3500,2500,0,0,1,0},
    jl= {"裂凯金龙","金龙铠",500,40*20,5000,8000,4500,9,6,6,1},
    gst={"凋零共生体","\0",1800,65*10,15000,0,10000,0,0,1,0},
    dlkl= {"凋零骷髅","\0",3000,30*10,12000,0,10000,0,0,1,0},
    dlfb= {".+*凋零风暴*+.","\0",9000,1500,49000,0,500000,17,10,1,0},
    guai= {"\0","\0",0,0,0,0,0,0,0,0,0};
struct Place{
int bar,hotel,forest1,forest2,forest3,grass1,grass2,grass3,te1,te2,te3,te4;
} place= {1,2,3,4,5,6,7,8,9,10,11,12};
int max_exp=0;
int htsr;
int choose_number=0,s=0,strongman_arm=0,battle=0,money=500,place_sign=10;
int cao=3,jijiubao=3,baiyao=3,superbaiyao=3,miansi=1,boom=3,dubiao=2,atom_boom=1;
int fang=0,fang1=10,fang1n=0,fang2=20,fang2n=0,fang3=40,fang3n=0,fang4=100,fang4n=0,fang5=400,fang5n=0,fang6=150,fang6n=0,fang7=60,fang7n=0;
int gong=0,gong1=10,gong1n=0,gong2=20,gong2n=0,gong3=45,gong3n=0,gong4=100,gong4n=0,gong5=300,gong5n=0,gong6=150,gong6n=0,gong7=45,gong7n=0;
int jingyancao=0,jingyanbao=0,jingyanshi=0,htmmcs=5;
int diaolingxinhave=0,diaolingxin=0;
char gongname[20]="无",fangname[20]="无";
char proof;
void AddWupin(int);
int AttackResult();
void BattleAct();  //      ____
void ChooseWupin();  //   /___/|
void DisplayState();  //  |   |/
void OrdinaryAct();     //▔▔
int SuiJi();
int SuiJi100();
void WhetherLevelUp();
void SlowDisplay(char *);
int main(){
MessageBox (NULL, "欢迎来到斗破苍穹 2.10.6 正式版 !", "斗破苍穹 2.10.6 游戏开始提示", MB_OK);
int i=0,j=0,k=0;
char player_name[21];
Sleep(500);
printf("                            _________________________________                    ");system("color 89");
printf("                          /________________________________/|                    ");system("color 89");
printf("                _.+=*^--{|欢迎来到 [斗破苍穹] 2.10.6 正式版|}--^*=+.              ");system("color 89");
printf("                          ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔                      \n");system("color 89");
//如果想使用外挂,名字请输入:“zty ”。
Sleep(500);
printf("这里是斗破苍穹(苍穹世界)! 契晋赫苟国的漓嘉茜公主被神秘人绑架了!\n\n\n 伟大的勇者啊~拿起你的武器,营救公主!\n\n\n输入你的名字: (20个字符)\n\n\n");system("color 89");
scanf("%s",player_name);
Sleep(500);
strncpy(player.name,player_name,20);
if(strcmp(player.name,"zty")==0){
	printf("\n\n\n封印多年的官方血统啊!你终于觉醒了!\n\n\nzty,你成为了天选之人,请你救出公主吧!\n\n\n");
	player.attack=99999;
	player.defense=99999;
	player.health=999999;
	player.max_health=999999;
}
getchar();
OrdinaryAct();
return 0;
}
int SuiJi(){
srand((unsigned)time(NULL));
return rand()%10;
}
int SuiJi100(){
srand((unsigned)time(NULL));
return rand()%100;
}
void ChooseWupin(){//选择物品 并使用
printf("物品: 1,止血草%d个 2,急救包%d个 3,云南白药%d个 4,超级云南白药%d个 5,手雷%d个 6,毒标%d个 7,手抛式原子弹%d个 8,经验草%d个 9,经验包%d个 10,经验石%d个 11,巨龙晶石%d个 12,免死金牌%d个 13,凋零之心%d个 0,返回\n\n\n",cao,jijiubao,baiyao,superbaiyao,boom,dubiao,atom_boom,jingyancao,jingyanbao,jingyanshi,strongman_arm,miansi,diaolingxin);system("color 8A");
switch(scanf("%d",&choose_number),choose_number){
case 1:
if(cao>0){
printf("使用止血草,HP增加120\n\n\n");system("color 8A");
cao--;
if(player.health+120>player.max_health)player.health=player.max_health;
else player.health+=120;
}
else printf("没有止血草了\n\n\n");system("color 8A");
break;
case 2:
if(jijiubao>0){
printf("使用急救包,HP增加180\n\n\n");system("color 8A");
jijiubao--;
if(player.health+180>player.max_health)player.health=player.max_health;
else player.health+=180;
}
else printf("没有急救包了\n\n\n");system("color 8A");
break;
case 3:
if(baiyao>0){
printf("使用云南白药,HP增加240\nz\n\n");system("color 8A");
baiyao--;
if(player.health+240>player.max_health)player.health=player.max_health;
else player.health+=240;
}
else printf("没有云南白药了\n\n\n");system("color 8A");
break;
case 4:
if(superbaiyao>0){
printf("使用超级云南白药,HP增加400\n\n\n");system("color 8A");
superbaiyao--;
if(player.health+400>player.max_health)player.health=player.max_health;
else player.health+=400;
}
else printf("没有超级云南白药了\n\n\n");system("color 8A");
break;
case 5:
if(battle){//在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(boom>0){
printf("使用手雷,敌人HP减少100\n\n\n");system("color 84");
boom--;
guai.health-=100;
AttackResult();
}
}
else printf("非战斗状态,不能使用手雷!\n\n\n");system("color 84");
break;
case 6:
if(battle){ //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(dubiao>0){
printf("使用毒标,敌人HP减少200\n\n\n");system("color 84");
dubiao--;
guai.health-=200;
AttackResult();
}
}
else printf("非战斗状态,不能使用毒标!\n\n\n");system("color 84");
break;
case 7:
if(battle){ //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(atom_boom>0){
printf("使用手抛式原子弹,敌人HP减少1500\n\n\n");system("color 84");
atom_boom--;
guai.health-=1500;
AttackResult();
}
}
else printf("非战斗状态,不能使用手抛式原子弹!\n\n\n");system("color 84");
break;
case 8:
if(jingyancao>0 && player.level<200){
printf("使用经验草,等级增加3级\n\n\n");system("color 8E");
jingyancao--;
player.max_health=player.max_health+60;
player.attack+=9;
player.defense+=6;
player.level+=3;
player.health=player.max_health;
printf("等级:%d\n",player.level);system("color 8E");
}
else    if(jingyancao<1){
printf("没有经验草了\n\n\n");system("color 8E");
}
else printf("等级超过200级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 9:
if(jingyanbao>0 && player.level<200){
if(player.level>197&&player.level<200){
int sheng;
sheng=100-player.level;
player.level+=sheng;
jingyanbao--;
player.max_health=player.max_health+sheng*20;
player.attack+=sheng*3;
player.defense+=sheng*2;
player.health=player.max_health;
printf("使用经验包,等级增加%d级",sheng);system("color 8E");
printf("等级:%d\n",player.level);system("color 8E");
}
else{
printf("使用经验包,等级增加5级\n\n\n");system("color 8E");
jingyanbao--;
player.max_health=player.max_health+100;
player.attack+=15;
player.defense+=10;
player.level+=5;
player.health=player.max_health;
printf("等级:%d\n",player.level);system("color 8E");
}
}
else if(jingyanbao<1){
printf("没有经验包了");system("color 8E");
}
else printf("等级超过200级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 10:
if(jingyanshi>0 && player.level<200){
if(player.level>192&&player.level<200){
int sheng;
sheng=100-player.level;
player.level+=sheng;
player.max_health+=sheng*20;
player.attack+=sheng*3;
player.defense+=sheng*2;
player.health=player.max_health;
printf("使用经验石,等级增加%d级\n",sheng);system("color 8E");
printf("等级:%d\n",player.level);system("color 8E");
}
else{
printf("使用经验石,等级增加10级\n");system("color 8E");
jingyanshi--;
player.max_health=player.max_health+200;
player.attack+=30;
player.defense+=20;
player.level+=10;
player.health=player.max_health;
}
}
else if(jingyanshi<1)
{
printf("没有经验石了\n\n\n");system("color 8E");
}
else printf("等级超过200级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 11:
if(strongman_arm>0 && player.level<500)
{
if(player.level>482&&player.level<500)
{
int sheng;
sheng=500-player.level;
player.level+=sheng;
player.max_health=player.max_health+sheng*20;
player.attack+=sheng*3;
player.defense+=sheng*2;
player.health=player.max_health;
printf("使用巨龙晶石,等级增加%d级",sheng);system("color 8E");
printf("等级:%d\n",player.level);system("color 8E");
}
else
{
printf("使用巨龙晶石,等级增加20级\n\n\n");system("color 8E");
strongman_arm--;
player.max_health=player.max_health+400;
player.attack+=60;
player.defense+=40;
player.health=player.max_health;
player.level+=20;
printf("等级:%d\n",player.level);system("color 8E");
}
}
else if(strongman_arm<1)
{
printf("没有巨龙晶石了。\n\n\n");system("color 8E");
}
else printf("等级超过500级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 12:
if(miansi>0)
{
cout<<"使";Sleep(50);
cout<<"用";Sleep(50);
cout<<"免";Sleep(50);
cout<<"死";Sleep(50);
cout<<"金";Sleep(50);
cout<<"牌";Sleep(50);
cout<<"HP";Sleep(50);
cout<<"满";Sleep(50);
system("color 8b");
miansi--;
if(player.health+999999>player.max_health)player.health=player.max_health;
else player.health+=999999;
}else printf("没有免死金牌了\n\n\n"); system("color 8b");break;
break;
case 13:
if(diaolingxin>0)
{
printf("使用凋零之心\nHP上限+100  攻击+100\n\n\n");system("color 8b");
diaolingxin--;
player.max_health+=100;
player.attack+=100;
}else printf("没有凋零之心了\n\n\n"); system("color 8b");break;
case 0:
break;
default:
printf("ChooseWupin error!\n\n\n");
}
}
int AttackResult() //攻击结果:判断是否获胜 是否获得物品 和 是否升级
{
if(guai.health<=0)
{
battle=0;
printf("战斗胜利!获得金币%d,经验%d\n\n\n",guai.money,guai.exp);system("color 8C");
player.exp+=guai.exp;
player.range_exp+=guai.exp;
money+=guai.money;
s=SuiJi();
if(s<guai.wupinpro)
{
cout<<"从";Sleep(100);
cout<<"敌";Sleep(100);
cout<<"人";Sleep(100);
cout<<"尸";Sleep(100);
cout<<"骸";Sleep(100);
cout<<"中";Sleep(100);
cout<<"发";Sleep(100);
cout<<"现";Sleep(100);
system("color 8C");
printf("%s\n\n\n",guai.wupin);
AddWupin(guai.wupin_sign);
}
WhetherLevelUp();
if(strcmp(guai.name,"*凋零巨兽*")==0)
{
printf("你把公主救了出来\n\n你从公主口中得知了一个更大的阴谋,你可以进入凋零世界\n\n");system("color 8C");

}
return 1; //攻击有结果了返回1,否则返回0,用于判断是否继续做战斗行为
}
else
{
int s=SuiJi();

if((guai.attack+s-player.defense/3)<0)
{
player.health-=1;
printf("%s反击,你的HP减少了 1\n\n",guai.name);system("color 8C");
}
else
{
player.health-=guai.attack+s-player.defense/3;
printf("%s反击,你的HP减少了%d\n\n",guai.name,guai.attack+s-player.defense/3);system("color 8C");
}
if(player.health<0)
{
battle=0;
printf("%s战死!金币掉落%d\n\n\n",player.name,player.level*500);system("color CC");
money-=player.level*500;
player.health=player.max_health/5;
OrdinaryAct();//
return 1;
}
}
return 0;
}
void AddWupin(int wupin_sign)
{

switch(wupin_sign)
{
case 1:
fang4n++;
break;
case 2:
fang3n++;
break;
case 3:
fang2n++;
break;
case 4:
strongman_arm++;
break;
case 5:
gong4n++;
break;
case 6:
gong3n++;
break;
case 7:
gong2n++;
break;
case 8:
gong5n++;
break;
case 9:
fang5n++;
break;
case 10:
diaolingxin++;
break;
case 11:
fang6n++;
break;
case 12:
gong6n++;
break;
case 13:
gong7n++;
break;
case 14:
fang7n++;
break;
case 15:
diaolingxinhave++;
boss1++;
break;
case 16:
break;
case 17:
boss2++;
break;
default:
printf("AddWupin error\n\n\n");
}

}
void WhetherLevelUp()
{
int i=0,j=0;
int l1=player.range_exp/150;
int l2=player.range_exp/375;
int l3=player.range_exp/750;
if(player.level<=15&&l1>0) //15级以下,经验足够 都满足则升级
{
if(l1==1)
{
printf("%s",player.name);
printf(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=100;
}
else
{
printf("好厉害!连升%d级!",l1);system("color 8E");
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l1,2*l1,20*l1);system("color 8E");
player.exp=(player.exp+guai.exp) || player.exp-((player.exp+guai.exp) || player.exp)%100;
player.attack+=3*l1;
player.defense+=2*l1;
player.max_health+=20*l1;
player.health=player.max_health;
player.level+=l1;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=100*l1;
}
}
else if(player.level<=40&&l2>0)
{
if(l2==1)
{
printf("%s",player.name);
printf(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=300;
}
else
{
printf("好厉害!连升%d级!",l1);system("color 8E");
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l2,2*l2,20*l2);system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3*l2;
player.defense+=2*l2;
player.max_health+=20*l2;
player.health=player.max_health;
player.level+=l2;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=300*l2;
}
}
else if(l3>0)
{
if(l3==1)
{
printf("%s",player.name);
printf(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=600;
}
else
{
printf("好厉害!连升%d级!",l1);
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l3,2*l3,20*l3);system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3*l3;
player.defense+=2*l3;
player.max_health+=20*l3;
player.health=player.max_health;
player.level+=l3;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=600*l3;
}
}
}
void OrdinaryAct() //正常行为菜单(移动,物品,对话,查看状态,装备,退出游戏)
{

while(1)
{
// \(1000);
// system("cls");
puts("=============================================================================");system("color 89");
printf("要做什么?\n\n\n 1,移动 2,道具 3,对话 4,查看状态 5,装备 6,关于游戏 7,打开后台 0,退出游戏\n\n\n");system("color 89");
puts("=============================================================================");system("color 89");
switch(scanf("%d",&choose_number),choose_number)
{
case 1: //显示移动菜单
printf("要去哪里?\n\n\n");system("color 89");
//printf("  ");
cout<<"1,小郑子酒吧  ";Sleep(150);
cout<<"2,诺亚方舟酒店  ";Sleep(150);
cout<<"3,北朝商会  ";Sleep(150);
cout<<"4,红玉拍卖行  ";Sleep(150);
cout<<"5,冒险荒野\n\n\n";Sleep(150);system("color 89");
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
place_sign=place.bar; //记录目前位置-酒吧
// OrdinaryAct();
break;
case 2:
place_sign=place.hotel; //进入旅店
printf("金币:%d",money);system("color 89");
printf("要开房吗? 200个金币 \n 1,是 0,否\n\n\n");system("color 89");
choose_number=1;
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
if(money-200<=0) //判断钱是否够
{
printf("Sorry,你的钱不够~\n\n\n");system("color 89");
printf("金币:%d",money);system("color 89");
}
else
{
printf("好好休息\nHP满\n第二天了\n\n");system("color 89");
printf("金币:%d\n",money);system("color 89");
money-=200; //花费200住店费
player.health=player.max_health; //体力满
}
break;
case 0:
printf("下次再来!\n\n\n");system("color 89");
break;
default:
printf("hotel talk error!\n\n\n");system("color 89");
}
place_sign=0;
break;
case 3:
int yongju,gong,fang;
printf("请问您要购买什么类型的物品?\n\n\n");system("color 89");
cout<<"1,攻击装备 ";Sleep(50);
cout<<"2,防御装备 ";Sleep(50);
cout<<"3,一次性伤害武器\n\n\n";Sleep(50);
scanf("%d",&yongju);
switch(yongju)
{
case 1:
printf("请问您要购买什么武器?\n\n\n 1,匕首¥300 2,西洋剑¥500 3,碧血战锤¥1000\n\n\n");system("color 89");
scanf("%d",&gong);
switch(gong)
{
case 1:
if(money>=300)
{
gong1n++;
money=money-300;
printf ("匕首+1\n");system("color 89");
printf("匕首:%d个\n",gong1n);system("color 89");
printf("金币:%d\n",money);system("color 89");
break;
}
else
{
printf("钱不够!\n");system("color 89");
printf("金币:%d\n",money);system("color 89");
break;
}
case 2:
if(money>=500)
{
gong2n++;
money=money-500;
printf ("西洋剑+1\n");system("color 89");
printf("西洋剑:%d个\n",gong2n);system("color 89");
printf("金币:%d\n",money);system("color 89");
break;
}
else
{
printf("钱不够!\n");system("color 89");
printf("金币:%d\n",money);system("color 89");
break;
}
case 3:
if(money>=1000)
{
gong3n++;
money=money-1000;
printf ("碧血战锤+1\n");system("color 89");
printf("碧血战锤:%d个\n",gong3n);system("color 89");
printf("金币:%d\n",money);system("color 89");
break;
}
else
{
printf("钱不够!\n");system("color 89");
printf("金币:%d\n",money);system("color 89");
break;
}
default:
printf("对不起,我们只会打造以上武器。");system("color 89");
break;

}
break;
case 2:
int fang;
printf("请问您要购买什么防具?\n\n\n 1,布衣¥300 2,铁甲¥500 3,重甲¥1000\n\n\n");system("color 89");
scanf("%d",&fang);
switch(fang)
{
case 1:
if(money>=300)
{
fang1n++;
money=money-300;
printf ("布衣+1\n");system("color 89");
printf("布衣:%d个\n",fang1n);system("color 89");
printf("金币:%d\n",money);system("color 89");
}
else
{
printf("钱不够!\n");system("color 89");
printf("金币:%d\n",money);system("color 89");
}

break;
case 2:
if(money>=500)
{
fang2n++;
money=money-500;
printf ("铁甲+1\n");system("color 89");
printf("铁甲:%d个\n",fang2n);system("color 89");
printf("金币:%d\n",money);system("color 89");
}
else
{
printf("钱不够!\n");system("color 89");
printf("金币:%d",money);system("color 89");
}
break;
case 3:
if(money>=1000)
{
fang3n++;
money=money-1000;
printf ("重甲+1\n");system("color 89");
printf("重甲:%d个\n",fang3n);system("color 89");
printf("金币:%d\n",money);system("color 89");
}
else
{
printf("钱不够!\n");system("color 89");
printf("金币:%d\n",money);system("color 89");
}
default:
printf("对不起,我们只会打造以上防具。");system("color 89");
break;

}
printf("金币:%d\n",money);system("color 89");
break;
case 3:
printf("请问您要购买什么一次性伤害武器?\n 1,手雷 2,毒镖 3,手抛式原子弹\n\n\n");system("color 89");
int yi;
scanf("%d",&yi);
switch(yi)
{
case 1:
if(money>=300 && boom<5)
{
boom++;
money=money-300;
printf("手雷+1\n");system("color 89");
printf("手雷:%d\n",boom);system("color 89");
printf("金币:%d\n",money);system("color 89");
}
else
{
printf("钱不够!\n");system("color 89");
printf("金币:%d",money);system("color 89");
}
break;
case 2:
if(money>=600 && dubiao<9999999)
{
dubiao++;
money=money-600;
printf("毒镖+1\n");system("color 89");
printf("毒镖:%d\n",dubiao);system("color 89");
printf("金币:%d\n",money);system("color 89");
}
else
{
printf("钱不够!\n");system("color 89");
printf("金币:%d\n",money);system("color 89");
}
break;
case 3:
if(money>=1000 && atom_boom<5)
{
atom_boom=atom_boom+1;
money=money-1000;
printf("手抛式原子弹+1\n");system("color 89");
printf("手抛式原子弹:%d\n",atom_boom);system("color 89");
printf("金币:%d\n",money);system("color 89");
}
else
{
printf("钱不够!\n\n\n");system("color 89");
printf("金币:%d\n",money);system("color 89");
}

break;
}
}
break;
case 4:
printf ("欢迎您光临本拍卖行,请问您要卖什么东西?\n\n");system("color 89");
printf("攻击装备: 1,匕首:%d个 2,西洋剑:%d个 3,粗制石剑:%n 4,碧血战锤:%d个 5,蜘蛛毒剑:%n个 6,尚方宝剑:%d个 7,皮卡大剑:%d个\n",gong1n,gong2n,gong7n,gong3n,gong6n,gong4n,gong5n);system("color 89");
printf("防御装备: 8,布衣:%d个 9,铁甲:%d个 10,战斗马甲:%d个 11,重甲:%d个 12,石铠甲:%d个 13,传说圣甲:%d个 14,金龙铠:%d个 15,巨龙晶石:%d个\n 0,返回\n\n\n",fang1n,fang2n,fang7n,fang3n,fang6n,fang4n,fang5n,strongman_arm);system("color 89");
int pai,shu,i;
scanf("%d",&pai);system("color 89");
switch(pai)
{
case 1:
printf("请问您要出售几件?");system("color 89");
scanf("%d",&shu);
if(gong1n>=shu)
{
gong1n=gong1n-shu;
money=money+shu*240;
printf("匕首:%d\n",gong1n);system("color 89");
printf("金币:%d\n",money);system("color 89");
break;
}
else
{
printf("装备数不够,无法出售!\n");system("color 89");
break;
}
break;
case 2:
printf("请问您要出售几件?\n");system("color 89");
scanf("%d",&shu);
if(gong2n>=shu)
{
gong2n=gong2n-shu;
money=money+shu*400;
printf("西洋剑:%d\n",gong2n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 3:
printf("请问您要出售几件?\n");system("color 89");
scanf("%d",&shu);
if(gong7n>=shu)
{
gong7n=gong7n-shu;
money=money+shu*800;
printf("粗制石剑:%d\n",gong7n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 4:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(gong3n>=shu)
{
gong3n=gong3n-shu;
money=money+shu*800;
printf("碧血战锤:%d\n",gong3n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 5:
printf("请问您要出售几件?\n");system("color 89");
scanf("%d",&shu);
if(gong6n>=shu)
{
gong6n=gong6n-shu;
money=money+shu*1000;
printf("蜘蛛毒剑:%d\n",gong6n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 6:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(gong4n>=shu)
{
gong4n=gong4n-shu;
money=money+shu*1500;
printf("尚方宝剑:%d\n",gong4n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 7:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(gong5n>=shu)
{
gong5n=gong5n-shu;
money=money+shu*3000;
printf("皮卡大剑:%d\n",gong5n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 8:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang1n>=shu)
{
fang1n=fang1n-shu;
money=money+shu*240;
printf("布衣:%d\n",fang1n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 9:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang2n>=shu)
{
fang2n=fang2n-shu;
money=money+shu*500;
printf("铁甲:%d\n",fang2n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 10:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang7n>=shu)
{
fang7n=fang7n-shu;
money=money+shu*1000;
printf("战斗马甲:%d\n",fang7n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 11:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang3n>=shu)
{
fang3n=fang3n-shu;
money=money+shu*800;
printf("重甲:%d\n",fang3n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
break;
case 12:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang6n>=shu)
{
fang6n=fang6n-shu;
money=money+shu*2000;
printf("石凯甲:%d\n",fang6n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 13:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang4n>=shu)
{
fang4n=fang4n-shu;
money=money+shu*1500;
printf("传说圣甲:%d\n",fang4n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}

case 14:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang5n>=shu)
{
fang5n=fang5n-shu;
money=money+shu*3000;
printf("金龙铠:%d\n",fang5n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 15:
printf("请问您要出售几颗?");
scanf("%d",&shu);
if(strongman_arm>=shu)
{
strongman_arm=strongman_arm-shu;
money=money+shu*4000;
printf("巨龙晶石:%d\n",strongman_arm);
printf("金币:%d\n",money);
}
else{
printf("晶石数不够,无法出售!\n");
break;
}
break;
case 0:
break;
break;
default:
printf("没有该装备,无法出售!\n");
break;
}
break;
case 5:
int yewai;
while(1){
puts("=============================================================================");
printf("要去哪冒险呢?");system("color 8c");
printf("\n\n");
cout<<"1,神秘沼泽 危险程度:★\n\n";Sleep(150);system("color 8c");
cout<<"2,星耀草原 危险程度:★★★\n\n";Sleep(150);
cout<<"3,诡异森林 危险程度:★★★\n\n";Sleep(150);
cout<<"4,荒漠矿场 危险程度:★★★★\n\n";Sleep(150);
cout<<"5,炽热炎洞 危险程度:★★★★★\n\n";Sleep(150);
cout<<"6,皮卡营地 危险程度:★★★★★★\n\n";Sleep(150);
cout<<"7,花朵宫殿 危险程度:★★★★★★\n\n";Sleep(150);
cout<<"8,熔岩龙穴 危险程度:★★★★★★★\n\n";Sleep(150);
cout<<"9,凋零宇宙 危险程度:★★★★★★★★\n\n";Sleep(150);
cout<<"0,离开\n";Sleep(150);
system("color 8c");
puts("=============================================================================");
scanf("%d",&yewai);
switch(yewai)
{
case 1:
place_sign=place.forest1;
s=SuiJi();
if(s<7)
{
battle=1;
guai=xiyi;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<9)
{
battle=1;
guai=witch;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else
{
printf("这里安全\n\n\n");
//不用调用OAct函数,会自动执行OAct函数;
}
break;
case 3:
place_sign=place.forest2;
s=SuiJi();
if(s<4)
{
battle=1;
guai=witch;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<7)
{
battle=1;
guai=strongman;
printf("横冲直撞的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else
{
battle=1;
guai=zhizhu;
printf("可怕的%s爬了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 5:
place_sign=place.forest3;
s=SuiJi();
if(s<=3){
battle=1;
guai=strongman;
printf("横冲直撞的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<5){
battle=1;
guai=big_strongman;
printf("炽热的%s拍打着翅膀扑了过来!\n\n\n",guai.name);
BattleAct();
} else if(s<8){
battle=1;
guai=gl;
printf("全身长满矿石的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}else{
battle=1;
guai=zhizhu;
printf("可怕的%s扑爬了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 2:
place_sign=place.grass1;
s=SuiJi();
if(s<=3){
battle=1;
guai=bee;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<5){
battle=1;
guai=horse;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}else if(s<8){
battle=1;
guai=ymr;
printf("横冲直撞的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}else{
battle=1;
guai=nz;
printf("帅气但令人讨厌的%s向你开枪!\n\n\n",guai.name);
BattleAct();
}
break;
case 4:
place_sign=place.grass2;
s=SuiJi();
if(s<5){
battle=1;
guai=horse;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<7){
battle=1;
guai=lion;
printf("%s举着尚方宝剑拦住了你!\n\n\n",guai.name);
BattleAct();}
else{
battle=1;
guai=gl;
printf("全身长满矿石的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 6:
s=SuiJi();
if(s<7){
battle=1;
guai=pika;
printf("你感到了强烈的电流涌入全身,%s走了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<9){
battle=1;
guai=dapika;
printf("天空一声巨响,三道闪电劈到%s的身上,%s手持雷霆之刃冲了过来!\n\n\n",guai.name,guai.name);
BattleAct();
}
else{
printf("这里安全\n\n\n");
}
break;
case 8:
s=SuiJi();
if(s<=3)
{
battle=1;
guai=cl;
printf("一条飞龙横卧洞内,你定睛一看,是%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<=8 && s>=4)
{
battle=1;
guai=big_strongman;
printf("炽热的%s拍打着翅膀扑了过来!\n\n\n",guai.name);
BattleAct();
}
else {
battle=1;
guai=jl;
printf("一条金光闪闪的飞龙盘旋空中,,是传说中的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 7:
place_sign=place.grass3;
s=SuiJi();
if(s<5||boss1>=1){
battle=1;
guai=lion;
printf("%s举着尚方宝剑拦住了你!\n\n\n",guai.name);
BattleAct();
}
else if(s<7&&boss1==0){
battle=1;
if(strongman_arm>=1){
printf("神秘老人:\n\n\n 哈哈,年轻人,做的不错,不过...嘿嘿,你上当啦!巨龙晶石我要了,公主你也别想带走!\n\n\n");
guai=shitu;
printf("瞬间,你被一团黑雾笼罩,你被拉入了凋零幻境,%s向你发起攻击!\n\n\n",guai.name);
BattleAct();
}
else printf("神秘老人:\n\n\n 年轻人,你好啊.如果你有巨龙晶石,我可以告诉你公主的下落哦~\n\n\n");
}
else{
battle=1;
guai=nz;
printf("帅气但令人讨厌的%s向你开枪!\n\n\n",guai.name);
BattleAct();
}
break;
case 9:
s=SuiJi();
if(diaolingxinhave!=0){
if(s==1&&boss2==0){
battle=1;
guai=dlfb;
printf("一个巨大的黑暗物体,周围环绕着大量的由破碎方块组成的黑色颗粒云环的%s向你发起攻击!\n\n\n",guai.name);
BattleAct();
}else if(s>=2 && s<=4)
{
battle=1;
guai=dlkl;
printf("手持凋零剑的黑色凶恶%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s>=5&&s<=7){
battle=1;
guai=gst;
printf("一个巨大的触手向你打来,你挡了下来%s扑了过来!\n\n\n",guai.name);
BattleAct();
} else{
battle=1;
guai=dljs;
printf("一只巨大的猛兽%s冲了过来!\n\n\n",guai.name);
BattleAct();
}
}if(diaolingxin==0){
cout<<"你没有击败过凋零女巫,请去花朵宫殿击败凋零女巫。" <<endl;
}
break;
if(yewai!=0)
{
printf("该区域为未知区域,无法进入。\n\n\n");system("color 89");
break;
}
}
if(yewai==0)
{
break;
printf("已离开荒野。");system("color 89");
}
}

}
break;

case 2:
ChooseWupin();
break; //显示道具,并可以使用.
case 3: //对话选项
if(place_sign==place.bar)
{
printf("要和谁说话?\n\n\n1,红发女郎 2,赏金猎人 3,酒吧老板 4,药品商人\n\n\n"); system("color 89");//显示对话人物
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
printf("红发女郎:\n\n\n 吧台边那个Hunter好帅啊!(~脸红~)\n\n\n听说他经常外出打猎,外面的路他应该很熟悉的!\n\n\n");system("color 89");
break;
case 2:
if(fang1n<1&&gong1n<1)
{
printf("赏金猎人:\n\n\n 你要救公主啊!好胆量!\n\n\n 不过外面的世界很险恶,而且越深越危险,这是匕首和布衣,对你会有些帮助的,拿去吧!\n\n\n");system("color 89");
printf("%s心想:哇,这位大叔人真好啊!\n\n\n)",player.name);
gong1n++;
fang1n++;
}
else printf("赏金猎人:\n\n\n 加油吧,年轻人!\n\n\n 不要被外面世界所吓倒!\n\n\n");system("color 89");
break;
case 3:
printf("要喝点什么?\n\n\n 1,二锅头25金币 HP+20 2,伏特加80金币 HP+50 3,人头马面150金币 HP+100 0,返回\n\n\n");system("color 89");
choose_number=1;
while(choose_number)
{
switch(scanf("%d",&choose_number),choose_number){
case 1:
if(money<25){
printf("钱不够!");system("color 89");
}
else
{
if(player.health+20<=player.max_health){
printf("HP+20.");system("color 89");
money-=25;
player.health+=20;
}
else{
printf("HP满了");system("color 89");
player.health=player.max_health;
}
}
break;
case 2:
if(money<80){
printf("钱不够!");system("color 89");
}
else{
if(player.health+50<=player.max_health){
printf("HP+50.");system("color 89");
money-=80;
player.health+=50;
}
else{
printf("HP满了");system("color 89");
player.health=player.max_health;
}
}
break;
case 3:
if(money<150){
printf("钱不够!");system("color 89");
}
else{
if(player.health+100<=player.max_health){
printf("HP+100.");system("color 89");
money-=150;
player.health+=100;
}
else{
printf("HP满了");system("color 89");
player.health=player.max_health;
}
}
break;
case 0:
printf("下次再来!\n");system("color 89");
break;
default:
printf("输入错误\n\n\n");system("color 89");
break;
}
break;
}
break;
case 4:
printf("你要干什么?\n\n\n 1,买东西 2,聊天 \n\n\n");system("color 89");
int mai;
scanf("%d",&mai);
if(mai==1){
printf("买点什么呢?\n1,止血草¥100 HP+60\n2,急救包¥150 HP+80 \n3,云南白药¥250 HP+120\n4,超级云南白药¥400 HP+200 \n5,经验草¥150 经验+300 \n6,经验包¥600 经验+600\n7,经验石¥500 经验+1000 \n0,拜拜\n");system("color 89");
int dongxi;
scanf("%d",&dongxi);
switch(dongxi){
case 1:
if(money>=100&&cao<6){
cao++;
money=money-100;
printf ("止血草+1\n");system("color 89");
}
else{
printf("钱不够!\n");system("color 89");
}
break;
case 2:
if(money>=150&&jijiubao<10){
jijiubao++;
money=money-150;
printf ("急救包+1\n");system("color 89");
}
else{
printf("钱不够!\n");system("color 89");
}
break;
case 3:
if(money>=250&&baiyao<10){
baiyao++;
money=money-250;
printf ("云南白药+1\n");system("color 89");
}
else{
printf("钱不够!\n");system("color 89");
}
break;
case 4:
if(money>=400&&superbaiyao<10){
superbaiyao++;
money=money-400;
printf ("超级云南白药+1\n");system("color 89");

}
else{
printf("钱不够!\n");system("color 89");
}
break;
case 5:
if(money>=150){
jingyancao++;
money=money-150;
printf ("经验草+1\n");system("color 89");
}
else{
printf("钱不够!\n");system("color 89");
}
break;
case 6:
if(money>=300){
jingyanbao++;
money=money-300;
printf ("经验包+1\n");system("color 89");
}
else{
printf("钱不够!\n");system("color 89");
}
break;
case 7:
if(money>=500){
jingyanshi++;
money=money-500;
printf ("经验石+1\n");system("color 89");
}
else{
printf("钱不够!\n");system("color 89");
}
break;
}
case 0:
printf("金币:%d\n",money);system("color 89");
printf("再见,欢迎下次再来!\n");system("color 89");
break;

}
if(mai==2){
printf("药品商人:去去去,老子没时间陪你聊。\n");system("color 89");
}
}
}
else if(place_sign==place.hotel)
printf("“老板娘!我...”\n\n\n“我忙着呢,没空理你~”\n\n\n");
else printf("这里好像没人可以聊天\n\n\n");system("color 89");
break;
case 4:
DisplayState();
break; //显示状态
case 5: //装备
printf("攻击装备: 1,匕首:%d个 2,西洋剑:%d个 3,粗制石剑:%d个 4,碧血战锤:%d个 5,蜘蛛毒剑:%d个 6,尚方宝剑:%d个 7,雷霆之刃:%d个\n\n\n",gong1n,gong2n,gong7n,gong3n,gong6n,gong4n,gong5n);system("color 89");
printf("防御装备: 8,布衣:%d个 9,铁甲:%d个 10,战斗马甲:%d个 11,重甲:%d个 12,石铠甲:%d个 13,传说圣甲:%d个 14,金龙铠:%d个\t\t0,返回\n\n\n",fang1n,fang2n,fang7n,fang3n,fang6n,fang4n,fang5n);system("color 89");
printf("选择要装备的武器或防具:\n\n\n");system("color 89");
switch(scanf("%d",&choose_number),choose_number){
case 1:
if(gong1n>=1){
printf("拿起了匕首\n\n\n");system("color 89");
gong=gong1;
strcpy(gongname,"匕首");system("color 89");
}
else printf("你没有匕首可以装备\n\n\n");system("color 89");
break;
case 2:
if(gong2n>=1){
printf("拿起了西洋剑\n\n\n");system("color 89");
gong=gong2;
strcpy(gongname,"西洋剑");system("color 89");
}
else printf("你没有西洋剑可以装备\n\n\n");system("color 89");
break;
case 3:
if(gong7n>=1){
printf("拿起了粗制石剑\n\n\n");
gong=gong7;
strcpy(gongname,"粗制石剑");
}
else printf("你没有粗制石剑可以装备\n\n\n");
break;
case 4:
if(gong3n>=1){
printf("拿起了碧血战锤\n\n\n");
gong=gong3;
strcpy(gongname,"碧血战锤");
}
else printf("你没有碧血战锤可以装备\n\n\n");
break;
case 5:
if(gong6n>=1){
printf("拿起了蜘蛛毒剑\n\n\n");
gong=gong6;
strcpy(gongname,"蜘蛛毒剑");
}
else printf("你没有蜘蛛毒剑可以装备\n\n\n");
break;
case 6:
if(gong4n>=1){
printf("拿起了尚方宝剑\n\n\n");
gong=gong4;
strcpy(gongname,"尚方宝剑");
}
else printf("你没有尚方宝剑可以装备\n\n\n");
break;
case 7:
if(gong5n>=1){
printf("拿起了雷霆之刃\n\n\n");
gong=gong5;
strcpy(gongname,"雷霆之刃");
}
else printf("你没有雷霆之刃可以装备\n\n\n");
break;
case 8:
if(fang1n>=1){
printf("穿上了布衣\n\n\n");
fang=fang1;
strcpy(fangname,"布衣");
}
else printf("你没有布衣可以装备\n\n\n");
break;
case 9:
if(fang2n>=1){
printf("穿上了铁甲\n\n\n");
fang=fang2;
strcpy(fangname,"铁甲");
}
else printf("你没有铁甲可以装备\n\n\n");
break;
case 10:
if(fang7n>=1){
printf("穿上了战斗马甲\n\n\n");
fang=fang7;
strcpy(fangname,"战斗马甲");
}
else printf("你没有战斗马甲可以装备\n\n\n");
break;
case 11:
if(fang3n>=1){
printf("穿上了重甲\n\n\n");
fang=fang3;
strcpy(fangname,"重甲");
}
else printf("你没有重甲可以装备\n\n\n");
break;
case 12:
if(fang6n>=1){
printf("穿上了石铠甲\n\n\n");
fang=fang6;
strcpy(fangname,"石凯甲");
}
else printf("你没有石凯甲可以装备\n\n\n");
break;
case 13:
if(fang4n>=1){
printf("穿上了传说圣甲\n\n\n");
fang=fang4;
strcpy(fangname,"传说圣甲");
}
else printf("你没有传说圣甲可以装备\n\n\n");
break;
case 14:
if(fang5n>=1){
printf("穿上了金龙铠\n\n\n");
fang=fang5;
strcpy(fangname,"金龙铠");
}
else printf("你没有金龙铠可以装备\n\n\n");
break;
case 0:
printf("未更换装备\n\n\n");
break;
default:
printf("change error!");
}
break;
case 6:
printf(" 您好,欢迎您玩斗破苍穹(苍穹世界)。");
cout<<"为了给您更好的游戏体验,";Sleep(250);
cout<<"zty时不时会优化本游戏,";Sleep(250);
cout<<"优化后会尽快发布在网上。";Sleep(250);
cout<<"关于外挂方面,";Sleep(250);
cout<<"开启外挂的方式是设定勇者姓名时,";Sleep(250);
cout<<"输入";Sleep(250);
cout<<"“";Sleep(250);
cout<<"z";Sleep(250);
cout<<"t";Sleep(250);
cout<<"y";Sleep(250);
cout<<"”";Sleep(250);
cout<<"(不包括双引号)。";Sleep(250);
cout<<"由于2.10.5版本凋零女巫和凋零风暴可以重复打的bug,";Sleep(250);
cout<<"我们在";Sleep(250);cout<<"";Sleep(250);
cout<<"2.";Sleep(250);
cout<<"10";Sleep(250);
cout<<".5";Sleep(250);
cout<<"的基础上进行修改,";Sleep(250);
cout<<"已修复该bug。";Sleep(250);
cout<<"希望大家喜欢。";Sleep(250);
cout<<"在这里要感谢";Sleep(250);
cout<<"吴";Sleep(250);
cout<<"昊";Sleep(250);
cout<<"同学,";Sleep(250);
cout<<"他给了我许多宝贵的建议,";Sleep(250);
cout<<"谢";Sleep(250);
cout<<"谢";Sleep(250);
cout<<"。\n";Sleep(250);
system("color 89");
break;
case 0:
printf("确定退出游戏?(Y/N)\n\n\n");system("color 89");
getchar();
proof=getchar();
if(proof=='y'||proof=='Y'){
printf("按回车退出");system("color 89");
getchar();
return;
}
else if(proof=='n'||proof=='N')printf("继续游戏!\n\n\n");
else printf("继续!\n\n\n");
break;
default:
printf("输入错误!\n\n\n");
break;
case 7:
	int mi;
	cout<<"=====*【后台 开挂 测试Bug】*=================================\n请输入密码===================================*【想要后台密码问郑桐羽,只能输数字,否则死循环】*===============\n密码:";
	cin>>mi;
	if(mi%20120913==0){
		cout<<"输入正确!\n欢迎进入后台!\n后台服务:\n=======================\n1.金币加999999\n2.血量上限加9999\n3.现有血量加9999\n4.攻击加9999\n5.防御加9999\n0.退出\n=======================\n输入>>> "<<endl;
		cin>>htsr;
		if(htsr==1){
			cout<<"成功获得效果 *金币加9999\n";
			money+=999999;
		}
		if(htsr==2){
			cout<<"成功获得效果 *血量加9999\n";
			player.health+=9999;
		}
		if(htsr==3){
			cout<<"成功获得效果 *血量上限加9999\n";
			player.max_health+=9999;
		}
		if(htsr==4){
			cout<<"成功获得效果 *攻击加9999\n";
			player.attack+=9999;
		}
		if(htsr==5){
			cout<<"成功获得效果 *防御加9999\n";
			player.defense+=9999;
		}
		if(htsr==0){
			cout<<"成功退出\n";
			continue;
		}
    }
	else{
	    cout<<"输入错误!请检查!"<<endl;
	    continue;
    }

    break;
}
}
}
void DisplayState()
{
printf("%s 攻击力:%d+%d=%d 防御力:%d+%d=%d HP:%d/%d \n\n\n",player.name,player.attack,gong,player.attack+gong,player.defense,fang,player.defense+fang,player.health,player.max_health);
printf("武器: %s 防具: %s \n\n\n",gongname,fangname);
printf("等级:%d 经验:%d/%d 还需要%d经验升级 金币:%d \n\n\n",player.level,player.exp,player.max_exp,player.max_exp-player.exp,money);
}
void BattleAct()
{
while(1)
{
puts("=============================================================================");
printf("要怎么办?\n\n\n 1,攻击 2,物品 3,查看状态 4,逃跑\n\n\n");
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
s=SuiJi();
printf("%s攻击! %sHP减少%d\n\n\n",player.name,guai.name,player.attack+s+gong-guai.defense/3);
guai.health-=player.attack+s+gong-guai.defense/3;
if(AttackResult())return; //如果攻击有结果(敌人或玩家战死)退出函数
else continue;
case 2:
ChooseWupin();
break; //选择物品,可以使用,战斗中允许使用攻击性物品
case 3:
DisplayState();
break; //显示状态
case 4:
s=SuiJi();
if(s<4) //40%的概率可以逃跑
{
printf("%s逃跑了~\n\n\n",player.name);
battle=0;
return;
}
else printf("%s逃跑失败!\n\n\n",player.name);
break;
default:
printf("输入错误,重新输入!\n\n\n");
}
}
}
void printf(char *p)
{
while(1)
{
if(*p!=0)
printf("%c",*p++);
else
break;
Sleep(100);
}
}

2.11.1

#include<stdio.h>
#include<iostream>
#include<ctime>
#include<bits/stdc++.h>
#include<time.h>
#include<windows.h> //SLEEP函数
using namespace std;
int boss1=0,boss2=0;
struct Player{//玩家结构体,并初始化player
	char name[21];
	int attack;
	int defense;
	int health;
	long int max_health;
	int level;
	int exp;
	int range_exp;
	long int max_exp;
} player= {"勇者",100,80,200,200,1,0,0,100};
struct Enemy {//怪的结构体,并初始化各种怪
	char name[20];
	char wupin[20];
	int attack;
	int defense;
	int health;
	int money;
	long int exp;
	int wupin_sign;
	int wupinpro;
	int double_attack;
	int miss;
}
//怪,拿格伦石人举例
// 怪变量  怪名     掉落的装备 攻   防  血  金币 经验 掉落装备编号 掉落概率 真伤(被防御后的破甲伤害)   不能改
//  gl= {"格伦石人","石铠甲",  30, 150,1000,500, 250,      11,       7,        1,                         0},
    gl= {"格伦石人","石铠甲",30,150,1000,500,250,11,7,1,0},
    zhizhu= {"洞穴蜘蛛","蜘蛛毒剑",140,20,250,400,200,12,5,1,0},
    ymr= {"野蛮人","粗制石剑",20,20,150,100,50,13,5,1,0},
    nz= {"牛仔","战斗马甲",80,20,250,500,250,14,10,1,0},
    strongman= {"森林巨人","传说圣甲",50,50,580,200,100,1,5,1,0},
    witch= {"兽人","重甲",35,55,250,50,50,2,4,1,1},
    xiyi= {"毒蜴","鳞甲",20,25,80,30,35,3,8,2,2},
    huolong= {"喷火龙","巨龙晶石",40*5,50*5,200*5,200*5,100*5,4,4,2,0},
    lion= {"皇家士兵","尚方宝剑",100,30,380,200,100,5,5,1,0},
    horse= {"独眼巨人","碧血战锤",50,22,360,50,50,6,5,1,1},
    bee= {"剑客","西洋剑",27,11,60,30,35,7,5,2,2},
    shitu= {"凋零女巫","凋零通行证",1400,500,15000,10000,5000,15,10,1,0},
    dljs= {"凋零巨兽","凋零之心",1200,700,20000,10000,5000,10,7,1,0},
    pika= {"皮卡超人","\0",300,40*8,1000,2000,1000,0,0,1,0},
    dapika= {"雷霆皮卡","雷霆之刃",350,40*10,1500,3000,2000,8,6,6,0},
    cl= {"熔岩飞龙","\0",450,50*10,2000,3500,2500,0,0,1,0},
    jl= {"裂凯金龙","金龙铠",500,40*20,5000,8000,4500,9,6,6,1},
    gst={"凋零共生体","命令之书",1800,65*10,15000,0,10000,16,10,1,0},
    dlkl= {"凋零骷髅","\0",3000,30*10,12000,0,10000,0,0,1,0},
    dlfb= {".+*凋零风暴*+.","\0",9000,1500,49000,0,500000,17,10,1,0},
    guai= {"\0","\0",0,0,0,0,0,0,0,0,0};
struct Place{
int bar,hotel,forest1,forest2,forest3,grass1,grass2,grass3,te1,te2,te3,te4;
} place= {1,2,3,4,5,6,7,8,9,10,11,12};
int max_exp=0;
int htsr;int he=0;
int choose_number=0,s=0,strongman_arm=0,battle=0,money=500,place_sign=10;
int cao=3,jijiubao=3,baiyao=3,superbaiyao=3,miansi=1,boom=3,dubiao=2,atom_boom=1;
int fang=0,fang1=10,fang1n=0,fang2=20,fang2n=0,fang3=40,fang3n=0,fang4=100,fang4n=0,fang5=400,fang5n=0,fang6=150,fang6n=0,fang7=60,fang7n=0,fang4X=550,fang4Xn=0,mfang=1000,mfangn=0;
int gong=0,gong1=10,gong1n=0,gong2=20,gong2n=0,gong3=45,gong3n=0,gong4=100,gong4n=0,gong5=300,gong5n=0,gong6=150,gong6n=0,gong7=45,gong7n=0,gong4X=500,gong4Xn=0,mgong=1000,mgongn=0;
int jingyancao=0,jingyanbao=0,jingyanshi=0,htmmcs=5;
int diaolingxinhave=0,diaolingxin=0,mingshu=0;
char gongname[20]="无",fangname[20]="无";
char proof;
void AddWupin(int);
int AttackResult();
void BattleAct();  //      ____
void ChooseWupin();  //   /___/|
void DisplayState();  //  |   |/
void OrdinaryAct();     //▔▔
int SuiJi();
int SuiJi100();
void WhetherLevelUp();
void SlowDisplay(char *);
int main(){
MessageBox (NULL, "欢迎来到斗破苍穹 2.11.1 正式版 !", "斗破苍穹 2.11.1 游戏开始提示", MB_OK);
int i=0,j=0,k=0;
char player_name[21];
Sleep(500);
printf("                            _________________________________                    ");system("color 89");
printf("                          /________________________________/|                    ");system("color 89");
printf("                _.+=*^--{|欢迎来到 [斗破苍穹] 2.11.1 正式版|}--^*=+.              ");system("color 89");
printf("                          ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔                      \n");system("color 89");
//如果想使用外挂,名字请输入:“zty ”。
Sleep(500);
printf("这里是斗破苍穹(苍穹世界)! 契晋赫苟国的漓嘉茜公主被神秘人绑架了!\n\n\n 伟大的勇者啊~拿起你的武器,营救公主!\n\n\n输入你的名字: (20个字符)\n\n\n");system("color 89");
scanf("%s",player_name);
Sleep(500);
strncpy(player.name,player_name,20);
if(strcmp(player.name,"zty")==0){
	printf("\n\n\n封印多年的官方血统啊!你终于觉醒了!\n\n\nzty,你成为了天选之人,请你救出公主吧!\n\n\n");
	player.attack=99999;
	player.defense=99999;
	player.health=999999;
	player.max_health=999999;
}
getchar();
OrdinaryAct();
return 0;
}
int SuiJi(){
srand((unsigned)time(NULL));
return rand()%10;
}
int SuiJi100(){
srand((unsigned)time(NULL));
return rand()%100;
}
void ChooseWupin(){//选择物品 并使用
printf("物品: 1,止血草%d个 2,急救包%d个 3,云南白药%d个 4,超级云南白药%d个 5,手雷%d个 6,毒标%d个 7,手抛式原子弹%d个 8,经验草%d个 9,经验包%d个 10,经验石%d个 11,巨龙晶石%d个 12,免死金牌%d个 13,凋零之心%d个 0,返回\n\n\n",cao,jijiubao,baiyao,superbaiyao,boom,dubiao,atom_boom,jingyancao,jingyanbao,jingyanshi,strongman_arm,miansi,diaolingxin);system("color 8A");
switch(scanf("%d",&choose_number),choose_number){
case 1:
if(cao>0){
printf("使用止血草,HP增加120\n\n\n");system("color 8A");
cao--;
if(player.health+120>player.max_health)player.health=player.max_health;
else player.health+=120;
}
else printf("没有止血草了\n\n\n");system("color 8A");
break;
case 2:
if(jijiubao>0){
printf("使用急救包,HP增加180\n\n\n");system("color 8A");
jijiubao--;
if(player.health+180>player.max_health)player.health=player.max_health;
else player.health+=180;
}
else printf("没有急救包了\n\n\n");system("color 8A");
break;
case 3:
if(baiyao>0){
printf("使用云南白药,HP增加240\nz\n\n");system("color 8A");
baiyao--;
if(player.health+240>player.max_health)player.health=player.max_health;
else player.health+=240;
}
else printf("没有云南白药了\n\n\n");system("color 8A");
break;
case 4:
if(superbaiyao>0){
printf("使用超级云南白药,HP增加400\n\n\n");system("color 8A");
superbaiyao--;
if(player.health+400>player.max_health)player.health=player.max_health;
else player.health+=400;
}
else printf("没有超级云南白药了\n\n\n");system("color 8A");
break;
case 5:
if(battle){//在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(boom>0){
printf("使用手雷,敌人HP减少100\n\n\n");system("color 84");
boom--;
guai.health-=100;
AttackResult();
}
}
else printf("非战斗状态,不能使用手雷!\n\n\n");system("color 84");
break;
case 6:
if(battle){ //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(dubiao>0){
printf("使用毒标,敌人HP减少200\n\n\n");system("color 84");
dubiao--;
guai.health-=200;
AttackResult();
}
}
else printf("非战斗状态,不能使用毒标!\n\n\n");system("color 84");
break;
case 7:
if(battle){ //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(atom_boom>0){
printf("使用手抛式原子弹,敌人HP减少1500\n\n\n");system("color 84");
atom_boom--;
guai.health-=1500;
AttackResult();
}
}
else printf("非战斗状态,不能使用手抛式原子弹!\n\n\n");system("color 84");
break;
case 8:
if(jingyancao>0 && player.level<200){
printf("使用经验草,等级增加3级\n\n\n");system("color 8E");
jingyancao--;
player.max_health=player.max_health+60;
player.attack+=9;
player.defense+=6;
player.level+=3;
player.health=player.max_health;
printf("等级:%d\n",player.level);system("color 8E");
}
else    if(jingyancao<1){
printf("没有经验草了\n\n\n");system("color 8E");
}
else printf("等级超过200级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 9:
if(jingyanbao>0 && player.level<200){
if(player.level>197&&player.level<200){
int sheng;
sheng=100-player.level;
player.level+=sheng;
jingyanbao--;
player.max_health=player.max_health+sheng*20;
player.attack+=sheng*3;
player.defense+=sheng*2;
player.health=player.max_health;
printf("使用经验包,等级增加%d级",sheng);system("color 8E");
printf("等级:%d\n",player.level);system("color 8E");
}
else{
printf("使用经验包,等级增加5级\n\n\n");system("color 8E");
jingyanbao--;
player.max_health=player.max_health+100;
player.attack+=15;
player.defense+=10;
player.level+=5;
player.health=player.max_health;
printf("等级:%d\n",player.level);system("color 8E");
}
}
else if(jingyanbao<1){
printf("没有经验包了");system("color 8E");
}
else printf("等级超过200级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 10:
if(jingyanshi>0 && player.level<200){
if(player.level>192&&player.level<200){
int sheng;
sheng=100-player.level;
player.level+=sheng;
player.max_health+=sheng*20;
player.attack+=sheng*3;
player.defense+=sheng*2;
player.health=player.max_health;
printf("使用经验石,等级增加%d级\n",sheng);system("color 8E");
printf("等级:%d\n",player.level);system("color 8E");
}
else{
printf("使用经验石,等级增加10级\n");system("color 8E");
jingyanshi--;
player.max_health=player.max_health+200;
player.attack+=30;
player.defense+=20;
player.level+=10;
player.health=player.max_health;
}
}
else if(jingyanshi<1)
{
printf("没有经验石了\n\n\n");system("color 8E");
}
else printf("等级超过200级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 11:
if(strongman_arm>0 && player.level<500)
{
if(player.level>482&&player.level<500)
{
int sheng;
sheng=500-player.level;
player.level+=sheng;
player.max_health=player.max_health+sheng*20;
player.attack+=sheng*3;
player.defense+=sheng*2;
player.health=player.max_health;
printf("使用巨龙晶石,等级增加%d级",sheng);system("color 8E");
printf("等级:%d\n",player.level);system("color 8E");
}
else
{
printf("使用巨龙晶石,等级增加20级\n\n\n");system("color 8E");
strongman_arm--;
player.max_health=player.max_health+400;
player.attack+=60;
player.defense+=40;
player.health=player.max_health;
player.level+=20;
printf("等级:%d\n",player.level);system("color 8E");
}
}
else if(strongman_arm<1)
{
printf("没有巨龙晶石了。\n\n\n");system("color 8E");
}
else printf("等级超过500级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 12:
if(miansi>0)
{
cout<<"使";Sleep(50);
cout<<"用";Sleep(50);
cout<<"免";Sleep(50);
cout<<"死";Sleep(50);
cout<<"金";Sleep(50);
cout<<"牌";Sleep(50);
cout<<"HP";Sleep(50);
cout<<"满";Sleep(50);
system("color 8b");
miansi--;
if(player.health+999999>player.max_health)player.health=player.max_health;
else player.health+=999999;
}else printf("没有免死金牌了\n\n\n"); system("color 8b");break;
break;
case 13:
if(diaolingxin>0)
{
printf("使用凋零之心\nHP上限+100  攻击+100\n\n\n");system("color 8b");
diaolingxin--;
player.max_health+=100;
player.attack+=100;
}else printf("没有凋零之心了\n\n\n"); system("color 8b");break;
case 0:
break;
default:
printf("ChooseWupin error!\n\n\n");
}
}
int AttackResult(){ //攻击结果:判断是否获胜 是否获得物品 和 是否升级
	if(guai.health<=0){
	battle=0;
	printf("战斗胜利!获得金币%d,经验%d\n\n\n",guai.money,guai.exp);system("color 8C");
	player.exp+=guai.exp;
	player.range_exp+=guai.exp;
	money+=guai.money;
	s=SuiJi();
	if(s<guai.wupinpro){
		cout<<"从";Sleep(100);
		cout<<"敌";Sleep(100);
		cout<<"人";Sleep(100);
		cout<<"尸";Sleep(100);
		cout<<"骸";Sleep(100);
		cout<<"中";Sleep(100);
		cout<<"发";Sleep(100);
		cout<<"现";Sleep(100);
		system("color 8C");
		printf("%s\n\n\n",guai.wupin);
		AddWupin(guai.wupin_sign);
	}
	WhetherLevelUp();
	if(strcmp(guai.name,"*凋零巨兽*")==0){
	printf("你把公主救了出来\n\n你从公主口中得知了一个更大的阴谋,你可以进入凋零世界\n\n");
	system("color 8C");
	}
	return 1; //攻击有结果了返回1,否则返回0,用于判断是否继续做战斗行为
}
else
{
int s=SuiJi();

if((guai.attack+s-player.defense/3)<0)
{
player.health-=1;
printf("%s反击,你的HP减少了 1\n\n",guai.name);system("color 8C");
}
else
{
player.health-=guai.attack+s-player.defense/3;
printf("%s反击,你的HP减少了%d\n\n",guai.name,guai.attack+s-player.defense/3);system("color 8C");
}
if(player.health<0)
{
battle=0;
printf("%s战死!金币掉落%d\n\n\n",player.name,player.level*500);system("color CC");
money-=player.level*500;
player.health=player.max_health/5;
OrdinaryAct();//
return 1;
}
}
return 0;
}
void AddWupin(int wupin_sign)
{

switch(wupin_sign)
{
case 1:
fang4n++;
break;
case 2:
fang3n++;
break;
case 3:
fang2n++;
break;
case 4:
strongman_arm++;
break;
case 5:
gong4n++;
break;
case 6:
gong3n++;
break;
case 7:
gong2n++;
break;
case 8:
gong5n++;
break;
case 9:
fang5n++;
break;
case 10:
diaolingxin++;
break;
case 11:
fang6n++;
break;
case 12:
gong6n++;
break;
case 13:
gong7n++;
break;
case 14:
fang7n++;
break;
case 15:
diaolingxinhave++;
boss1++;
break;
case 16:
mingshu++;
break;
case 17:
boss2++;
break;
default:
printf("AddWupin error\n\n\n");
}

}
void WhetherLevelUp()
{
int i=0,j=0;
int l1=player.range_exp/150;
int l2=player.range_exp/300;
int l3=player.range_exp/600;
if(player.level<=15&&l1>0) //15级以下,经验足够 都满足则升级
{
if(l1==1)
{
printf("%s",player.name);
printf(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=100;
}
else
{
printf("好厉害!连升%d级!",l1);system("color 8E");
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l1,2*l1,20*l1);system("color 8E");
player.exp=(player.exp+guai.exp) || player.exp-((player.exp+guai.exp) || player.exp)%100;
player.attack+=3*l1;
player.defense+=2*l1;
player.max_health+=20*l1;
player.health=player.max_health;
player.level+=l1;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=100*l1;
}
}
else if(player.level<=40&&l2>0)
{
if(l2==1)
{
printf("%s",player.name);
printf(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=300;
}
else
{
printf("好厉害!连升%d级!",l1);system("color 8E");
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l2,2*l2,20*l2);system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3*l2;
player.defense+=2*l2;
player.max_health+=20*l2;
player.health=player.max_health;
player.level+=l2;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=300*l2;
}
}
else if(l3>0)
{
if(l3==1)
{
printf("%s",player.name);
printf(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=600;
}
else
{
printf("好厉害!连升%d级!",l1);
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l3,2*l3,20*l3);system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3*l3;
player.defense+=2*l3;
player.max_health+=20*l3;
player.health=player.max_health;
player.level+=l3;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=600*l3;
}
}
}
void OrdinaryAct() //正常行为菜单(移动,物品,对话,查看状态,装备,退出游戏)
{

while(1)
{
// \(1000);
// system("cls");
puts("=============================================================================");system("color 89");
printf("要做什么?\n\n 1,移动 2,道具 3,对话 4,查看状态 5,装备 6,关于游戏 7,后台 8,合成台 0,退出游戏\n\n\n");system("color 89");
puts("=============================================================================");system("color 89");
switch(scanf("%d",&choose_number),choose_number)
{
case 1: //显示移动菜单
printf("要去哪里?\n\n\n");system("color 89");
//printf("  ");
cout<<"1,小郑子酒吧  ";Sleep(150);
cout<<"2,诺亚方舟酒店  ";Sleep(150);
cout<<"3,北朝商会  ";Sleep(150);
cout<<"4,红玉拍卖行  ";Sleep(150);
cout<<"5,冒险荒野\n\n\n";Sleep(150);system("color 89");
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
place_sign=place.bar; //记录目前位置-酒吧
// OrdinaryAct();
break;
case 2:
place_sign=place.hotel; //进入旅店
printf("金币:%d",money);system("color 89");
printf("要开房吗? 200个金币 \n 1,是 0,否\n\n\n");system("color 89");
choose_number=1;
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
if(money-200<=0) //判断钱是否够
{
printf("Sorry,你的钱不够~\n\n\n");system("color 89");
printf("金币:%d",money);system("color 89");
}
else
{
printf("好好休息\nHP满\n第二天了\n\n");system("color 89");
printf("金币:%d\n",money);system("color 89");
money-=200; //花费200住店费
player.health=player.max_health; //体力满
}
break;
case 0:
printf("下次再来!\n\n\n");system("color 89");
break;
default:
printf("hotel talk error!\n\n\n");system("color 89");
}
place_sign=0;
break;
case 3:
int yongju,gong,fang;
printf("请问您要购买什么类型的物品?\n\n\n");system("color 89");
cout<<"1,攻击装备 ";Sleep(50);
cout<<"2,防御装备 ";Sleep(50);
cout<<"3,一次性伤害武器\n\n\n";Sleep(50);
scanf("%d",&yongju);
switch(yongju)
{
case 1:
printf("请问您要购买什么武器?\n\n\n 1,匕首¥300 2,西洋剑¥500 3,碧血战锤¥1000\n\n\n");system("color 89");
scanf("%d",&gong);
switch(gong)
{
case 1:
if(money>=300)
{
gong1n++;
money=money-300;
printf ("匕首+1\n");system("color 89");
printf("匕首:%d个\n",gong1n);system("color 89");
printf("金币:%d\n",money);system("color 89");
break;
}
else
{
printf("钱不够!\n");system("color 89");
printf("金币:%d\n",money);system("color 89");
break;
}
case 2:
if(money>=500)
{
gong2n++;
money=money-500;
printf ("西洋剑+1\n");system("color 89");
printf("西洋剑:%d个\n",gong2n);system("color 89");
printf("金币:%d\n",money);system("color 89");
break;
}
else
{
printf("钱不够!\n");system("color 89");
printf("金币:%d\n",money);system("color 89");
break;
}
case 3:
if(money>=1000)
{
gong3n++;
money=money-1000;
printf ("碧血战锤+1\n");system("color 89");
printf("碧血战锤:%d个\n",gong3n);system("color 89");
printf("金币:%d\n",money);system("color 89");
break;
}
else
{
printf("钱不够!\n");system("color 89");
printf("金币:%d\n",money);system("color 89");
break;
}
default:
printf("对不起,我们只会打造以上武器。");system("color 89");
break;

}
break;
case 2:
int fang;
printf("请问您要购买什么防具?\n\n\n 1,布衣¥300 2,鳞甲¥500 3,重甲¥1000\n\n\n");system("color 89");
scanf("%d",&fang);
switch(fang)
{
case 1:
if(money>=300)
{
fang1n++;
money=money-300;
printf ("布衣+1\n");system("color 89");
printf("布衣:%d个\n",fang1n);system("color 89");
printf("金币:%d\n",money);system("color 89");
}
else
{
printf("钱不够!\n");system("color 89");
printf("金币:%d\n",money);system("color 89");
}

break;
case 2:
if(money>=500)
{
fang2n++;
money=money-500;
printf ("鳞甲+1\n");system("color 89");
printf("鳞甲:%d个\n",fang2n);system("color 89");
printf("金币:%d\n",money);system("color 89");
}
else
{
printf("钱不够!\n");system("color 89");
printf("金币:%d",money);system("color 89");
}
break;
case 3:
if(money>=1000)
{
fang3n++;
money=money-1000;
printf ("重甲+1\n");system("color 89");
printf("重甲:%d个\n",fang3n);system("color 89");
printf("金币:%d\n",money);system("color 89");
}
else
{
printf("钱不够!\n");system("color 89");
printf("金币:%d\n",money);system("color 89");
}
default:
printf("对不起,我们只会打造以上防具。");system("color 89");
break;

}
printf("金币:%d\n",money);system("color 89");
break;
case 3:
printf("请问您要购买什么一次性伤害武器?\n 1,手雷 2,毒镖 3,手抛式原子弹\n\n\n");system("color 89");
int yi;
scanf("%d",&yi);
switch(yi)
{
case 1:
if(money>=300 && boom<5)
{
boom++;
money=money-300;
printf("手雷+1\n");system("color 89");
printf("手雷:%d\n",boom);system("color 89");
printf("金币:%d\n",money);system("color 89");
}
else
{
printf("钱不够!\n");system("color 89");
printf("金币:%d",money);system("color 89");
}
break;
case 2:
if(money>=600 && dubiao<9999999)
{
dubiao++;
money=money-600;
printf("毒镖+1\n");system("color 89");
printf("毒镖:%d\n",dubiao);system("color 89");
printf("金币:%d\n",money);system("color 89");
}
else
{
printf("钱不够!\n");system("color 89");
printf("金币:%d\n",money);system("color 89");
}
break;
case 3:
if(money>=1000 && atom_boom<5)
{
atom_boom=atom_boom+1;
money=money-1000;
printf("手抛式原子弹+1\n");system("color 89");
printf("手抛式原子弹:%d\n",atom_boom);system("color 89");
printf("金币:%d\n",money);system("color 89");
}
else
{
printf("钱不够!\n\n\n");system("color 89");
printf("金币:%d\n",money);system("color 89");
}

break;
}
}
break;
case 4:
printf ("欢迎您光临本拍卖行,请问您要卖什么东西?\n\n");system("color 89");
printf("攻击装备: 1,匕首:%d个 2,西洋剑:%d个 3,粗制石剑:%n 4,碧血战锤:%d个 5,蜘蛛毒剑:%n个 6,尚方宝剑:%d个 7,皮卡大剑:%d个\n",gong1n,gong2n,gong7n,gong3n,gong6n,gong4n,gong5n);system("color 89");
printf("防御装备: 8,布衣:%d个 9,鳞甲:%d个 10,战斗马甲:%d个 11,重甲:%d个 12,石铠甲:%d个 13,传说圣甲:%d个 14,金龙铠:%d个 15,巨龙晶石:%d个\n 0,返回\n\n\n",fang1n,fang2n,fang7n,fang3n,fang6n,fang4n,fang5n,strongman_arm);system("color 89");
int pai,shu,i;
scanf("%d",&pai);system("color 89");
switch(pai)
{
case 1:
printf("请问您要出售几件?");system("color 89");
scanf("%d",&shu);
if(gong1n>=shu)
{
gong1n=gong1n-shu;
money=money+shu*240;
printf("匕首:%d\n",gong1n);system("color 89");
printf("金币:%d\n",money);system("color 89");
break;
}
else
{
printf("装备数不够,无法出售!\n");system("color 89");
break;
}
break;
case 2:
printf("请问您要出售几件?\n");system("color 89");
scanf("%d",&shu);
if(gong2n>=shu)
{
gong2n=gong2n-shu;
money=money+shu*400;
printf("西洋剑:%d\n",gong2n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 3:
printf("请问您要出售几件?\n");system("color 89");
scanf("%d",&shu);
if(gong7n>=shu)
{
gong7n=gong7n-shu;
money=money+shu*800;
printf("粗制石剑:%d\n",gong7n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 4:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(gong3n>=shu)
{
gong3n=gong3n-shu;
money=money+shu*800;
printf("碧血战锤:%d\n",gong3n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 5:
printf("请问您要出售几件?\n");system("color 89");
scanf("%d",&shu);
if(gong6n>=shu)
{
gong6n=gong6n-shu;
money=money+shu*1000;
printf("蜘蛛毒剑:%d\n",gong6n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 6:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(gong4n>=shu)
{
gong4n=gong4n-shu;
money=money+shu*1500;
printf("尚方宝剑:%d\n",gong4n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 7:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(gong5n>=shu)
{
gong5n=gong5n-shu;
money=money+shu*3000;
printf("皮卡大剑:%d\n",gong5n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 8:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang1n>=shu)
{
fang1n=fang1n-shu;
money=money+shu*240;
printf("布衣:%d\n",fang1n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 9:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang2n>=shu)
{
fang2n=fang2n-shu;
money=money+shu*500;
printf("鳞甲:%d\n",fang2n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 10:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang7n>=shu)
{
fang7n=fang7n-shu;
money=money+shu*1000;
printf("战斗马甲:%d\n",fang7n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 11:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang3n>=shu)
{
fang3n=fang3n-shu;
money=money+shu*800;
printf("重甲:%d\n",fang3n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
break;
case 12:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang6n>=shu)
{
fang6n=fang6n-shu;
money=money+shu*2000;
printf("石凯甲:%d\n",fang6n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 13:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang4n>=shu)
{
fang4n=fang4n-shu;
money=money+shu*1500;
printf("传说圣甲:%d\n",fang4n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}

case 14:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang5n>=shu)
{
fang5n=fang5n-shu;
money=money+shu*3000;
printf("金龙铠:%d\n",fang5n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 15:
printf("请问您要出售几颗?");
scanf("%d",&shu);
if(strongman_arm>=shu)
{
strongman_arm=strongman_arm-shu;
money=money+shu*4000;
printf("巨龙晶石:%d\n",strongman_arm);
printf("金币:%d\n",money);
}
else{
printf("晶石数不够,无法出售!\n");
break;
}
break;
case 0:
break;
break;
default:
printf("没有该装备,无法出售!\n");
break;
}
break;
case 5:
int yewai;
while(1){
puts("=============================================================================");
printf("要去哪冒险呢?");system("color 8c");
printf("\n\n");
cout<<"1,神秘沼泽 危险程度:★\n\n";Sleep(50);system("color 8c");
cout<<"2,星耀草原 危险程度:★★★\n\n";Sleep(50);
cout<<"3,诡异森林 危险程度:★★★\n\n";Sleep(50);
cout<<"4,荒漠矿场 危险程度:★★★★\n\n";Sleep(50);
cout<<"5,炽热炎洞 危险程度:★★★★★\n\n";Sleep(50);
cout<<"6,皮卡营地 危险程度:★★★★★★\n\n";Sleep(50);
cout<<"7,花朵宫殿 危险程度:★★★★★★\n\n";Sleep(50);
cout<<"8,熔岩龙穴 危险程度:★★★★★★★\n\n";Sleep(50);
cout<<"9,凋零宇宙 危险程度:★★★★★★★★\n\n";Sleep(50);
cout<<"0,离开\n";Sleep(150);
system("color 8c");
puts("=============================================================================");
scanf("%d",&yewai);
switch(yewai)
{
case 1:
place_sign=place.forest1;
s=SuiJi();
if(s<7)
{
battle=1;
guai=xiyi;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<9)
{
battle=1;
guai=witch;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else
{
printf("这里安全\n\n\n");
//不用调用OAct函数,会自动执行OAct函数;
}
break;
case 3:
place_sign=place.forest2;
s=SuiJi();
if(s<4)
{
battle=1;
guai=witch;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<7)
{
battle=1;
guai=strongman;
printf("横冲直撞的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else
{
battle=1;
guai=zhizhu;
printf("可怕的%s爬了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 5:
place_sign=place.forest3;
s=SuiJi();
if(s<=3){
battle=1;
guai=strongman;
printf("横冲直撞的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<5){
battle=1;
guai=huolong;
printf("炽热的%s拍打着翅膀扑了过来!\n\n\n",guai.name);
BattleAct();
} else if(s<8){
battle=1;
guai=gl;
printf("全身长满矿石的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}else{
battle=1;
guai=zhizhu;
printf("可怕的%s扑爬了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 2:
place_sign=place.grass1;
s=SuiJi();
if(s<=3){
battle=1;
guai=bee;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<5){
battle=1;
guai=horse;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}else if(s<8){
battle=1;
guai=ymr;
printf("横冲直撞的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}else{
battle=1;
guai=nz;
printf("帅气但令人讨厌的%s向你开枪!\n\n\n",guai.name);
BattleAct();
}
break;
case 4:
place_sign=place.grass2;
s=SuiJi();
if(s<5){
battle=1;
guai=horse;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<7){
battle=1;
guai=lion;
printf("%s举着尚方宝剑拦住了你!\n\n\n",guai.name);
BattleAct();}
else{
battle=1;
guai=gl;
printf("全身长满矿石的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 6:
s=SuiJi();
if(s<7){
battle=1;
guai=pika;
printf("你感到了强烈的电流涌入全身,%s走了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<9){
battle=1;
guai=dapika;
printf("天空一声巨响,三道闪电劈到%s的身上,%s手持雷霆之刃冲了过来!\n\n\n",guai.name,guai.name);
BattleAct();
}
else{
printf("这里安全\n\n\n");
}
break;
case 8:
s=SuiJi();
if(s<=3)
{
battle=1;
guai=cl;
printf("一条飞龙横卧洞内,你定睛一看,是%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<=8 && s>=4)
{
battle=1;
guai=huolong;
printf("炽热的%s拍打着翅膀扑了过来!\n\n\n",guai.name);
BattleAct();
}
else {
battle=1;
guai=jl;
printf("一条金光闪闪的飞龙盘旋空中,,是传说中的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 7:
place_sign=place.grass3;
s=SuiJi();
if(s<5){
battle=1;
guai=lion;
printf("%s举着尚方宝剑拦住了你!\n\n\n",guai.name);
BattleAct();
}
else if(s<7||boss1==0){
battle=1;
if(strongman_arm>=1){
printf("神秘老人:\n\n\n 哈哈,年轻人,做的不错,不过...嘿嘿,你上当啦!巨龙晶石我要了,公主你也别想带走!\n\n\n");
guai=shitu;
printf("瞬间,你被一团黑雾笼罩,你被拉入了凋零幻境,%s向你发起攻击!\n\n\n",guai.name);
BattleAct();
}
else printf("神秘老人:\n\n\n 年轻人,你好啊.如果你有巨龙晶石,我可以告诉你公主的下落哦~\n\n\n");
}
else{
battle=1;
guai=nz;
printf("帅气但令人讨厌的%s向你开枪!\n\n\n",guai.name);
BattleAct();
}
break;
case 9:
s=SuiJi();
if(diaolingxinhave!=0){
if(s==1&&boss2==0){
battle=1;
guai=dlfb;
printf("一个巨大的黑暗物体,周围环绕着大量的由破碎方块组成的黑色颗粒云环的%s向你发起攻击!\n\n\n",guai.name);
BattleAct();
}else if(s>=2 && s<=4)
{
battle=1;
guai=dlkl;
printf("手持凋零剑的黑色凶恶%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s>=5&&s<=7){
battle=1;
guai=gst;
printf("一个巨大的触手向你打来,你挡了下来%s扑了过来!\n\n\n",guai.name);
BattleAct();
} else{
battle=1;
guai=dljs;
printf("一只巨大的猛兽%s冲了过来!\n\n\n",guai.name);
BattleAct();
}
}if(diaolingxinhave==0){
cout<<"你没有击败过凋零女巫,请去花朵宫殿击败凋零女巫。" <<endl;
}
break;
if(yewai!=0)
{
printf("该区域为未知区域,无法进入。\n\n\n");system("color 89");
break;
}
}
if(yewai==0)
{
break;
printf("已离开荒野。");system("color 89");
}
}

}
break;

case 2:
ChooseWupin();
break; //显示道具,并可以使用.
case 3: //对话选项
if(place_sign==place.bar)
{
printf("要和谁说话?\n\n\n1,红发女郎 2,赏金猎人 3,酒吧老板 4,药品商人\n\n\n"); system("color 89");//显示对话人物
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
printf("红发女郎:\n\n\n 吧台边那个Hunter好帅啊!(~脸红~)\n\n\n听说他经常外出打猎,外面的路他应该很熟悉的!\n\n\n");system("color 89");
break;
case 2:
if(fang1n<1&&gong1n<1)
{
printf("赏金猎人:\n\n\n 你要救公主啊!好胆量!\n\n\n 不过外面的世界很险恶,而且越深越危险,这是匕首和布衣,对你会有些帮助的,拿去吧!\n\n\n");system("color 89");
printf("%s心想:哇,这位大叔人真好啊!\n\n\n)",player.name);
gong1n++;
fang1n++;
}
else printf("赏金猎人:\n\n\n 加油吧,年轻人!\n\n\n 不要被外面世界所吓倒!\n\n\n");system("color 89");
break;
case 3:
printf("要喝点什么?\n\n\n 1,二锅头25金币 HP+20 2,伏特加80金币 HP+50 3,人头马面150金币 HP+100 0,返回\n\n\n");system("color 89");
choose_number=1;
while(choose_number)
{
switch(scanf("%d",&choose_number),choose_number){
case 1:
if(money<25){
printf("钱不够!");system("color 89");
}
else
{
if(player.health+20<=player.max_health){
printf("HP+20.");system("color 89");
money-=25;
player.health+=20;
}
else{
printf("HP满了");system("color 89");
player.health=player.max_health;
}
}
break;
case 2:
if(money<80){
printf("钱不够!");system("color 89");
}
else{
if(player.health+50<=player.max_health){
printf("HP+50.");system("color 89");
money-=80;
player.health+=50;
}
else{
printf("HP满了");system("color 89");
player.health=player.max_health;
}
}
break;
case 3:
if(money<150){
printf("钱不够!");system("color 89");
}
else{
if(player.health+100<=player.max_health){
printf("HP+100.");system("color 89");
money-=150;
player.health+=100;
}
else{
printf("HP满了");system("color 89");
player.health=player.max_health;
}
}
break;
case 0:
printf("下次再来!\n");system("color 89");
break;
default:
printf("输入错误\n\n\n");system("color 89");
break;
}
break;
}
break;
case 4:
printf("你要干什么?\n\n\n 1,买东西 2,聊天 \n\n\n");system("color 89");
int mai;
scanf("%d",&mai);
if(mai==1){
printf("买点什么呢?\n1,止血草¥100 HP+60\n2,急救包¥150 HP+80 \n3,云南白药¥250 HP+120\n4,超级云南白药¥400 HP+200 \n5,经验草¥150 经验+300 \n6,经验包¥600 经验+600\n7,经验石¥500 经验+1000 \n0,拜拜\n");system("color 89");
int dongxi;
scanf("%d",&dongxi);
switch(dongxi){
case 1:
if(money>=100&&cao<6){
cao++;
money=money-100;
printf ("止血草+1\n");system("color 89");
}
else{
printf("钱不够!\n");system("color 89");
}
break;
case 2:
if(money>=150&&jijiubao<10){
jijiubao++;
money=money-150;
printf ("急救包+1\n");system("color 89");
}
else{
printf("钱不够!\n");system("color 89");
}
break;
case 3:
if(money>=250&&baiyao<10){
baiyao++;
money=money-250;
printf ("云南白药+1\n");system("color 89");
}
else{
printf("钱不够!\n");system("color 89");
}
break;
case 4:
if(money>=400&&superbaiyao<10){
superbaiyao++;
money=money-400;
printf ("超级云南白药+1\n");system("color 89");

}
else{
printf("钱不够!\n");system("color 89");
}
break;
case 5:
if(money>=150){
jingyancao++;
money=money-150;
printf ("经验草+1\n");system("color 89");
}
else{
printf("钱不够!\n");system("color 89");
}
break;
case 6:
if(money>=300){
jingyanbao++;
money=money-300;
printf ("经验包+1\n");system("color 89");
}
else{
printf("钱不够!\n");system("color 89");
}
break;
case 7:
if(money>=500){
jingyanshi++;
money=money-500;
printf ("经验石+1\n");system("color 89");
}
else{
printf("钱不够!\n");system("color 89");
}
break;
}
case 0:
printf("金币:%d\n",money);system("color 89");
printf("再见,欢迎下次再来!\n");system("color 89");
break;

}
if(mai==2){
printf("药品商人:去去去,老子没时间陪你聊。\n");system("color 89");
}
}
}
else if(place_sign==place.hotel)
printf("“老板娘!我...”\n\n\n“我忙着呢,没空理你~”\n\n\n");
else printf("这里好像没人可以聊天\n\n\n");system("color 89");
break;
case 4:
DisplayState();
break; //显示状态
case 5: //装备
printf("攻击装备: 1,匕首:%d个 2,西洋剑:%d个 3,粗制石剑:%d个 4,碧血战锤:%d个 5,蜘蛛毒剑:%d个 6,尚方宝剑:%d个 7,雷霆之刃:%d个 8,X尚方宝剑X:%d个 9,命令之剑:%d个\n\n\n",gong1n,gong2n,gong7n,gong3n,gong6n,gong4n,gong5n,gong4Xn,mgongn);system("color 89");
printf("防御装备: 10,布衣:%d个 11,鳞甲:%d个 12,战斗马甲:%d个 13,重甲:%d个 14,石铠甲:%d个 15,传说圣甲:%d个 16,金龙铠:%d个 17,X传说圣甲X:%d个 18,命令之甲:%d个\t\t0,返回\n\n\n",fang1n,fang2n,fang7n,fang3n,fang6n,fang4n,fang5n,fang4Xn,mfangn);system("color 89");
printf("选择要装备的武器或防具:\n\n\n");system("color 89");
switch(scanf("%d",&choose_number),choose_number){
case 1:
if(gong1n>=1){
printf("拿起了匕首\n\n\n");system("color 89");
gong=gong1;
strcpy(gongname,"匕首");system("color 89");
}
else printf("你没有匕首可以装备\n\n\n");system("color 89");
break;
case 2:
if(gong2n>=1){
printf("拿起了西洋剑\n\n\n");system("color 89");
gong=gong2;
strcpy(gongname,"西洋剑");system("color 89");
}
else printf("你没有西洋剑可以装备\n\n\n");system("color 89");
break;
case 3:
if(gong7n>=1){
printf("拿起了粗制石剑\n\n\n");
gong=gong7;
strcpy(gongname,"粗制石剑");
}
else printf("你没有粗制石剑可以装备\n\n\n");
break;
case 4:
if(gong3n>=1){
printf("拿起了碧血战锤\n\n\n");
gong=gong3;
strcpy(gongname,"碧血战锤");
}
else printf("你没有碧血战锤可以装备\n\n\n");
break;
case 5:
if(gong6n>=1){
printf("拿起了蜘蛛毒剑\n\n\n");
gong=gong6;
strcpy(gongname,"蜘蛛毒剑");
}
else printf("你没有蜘蛛毒剑可以装备\n\n\n");
break;
case 6:
if(gong4n>=1){
printf("拿起了尚方宝剑\n\n\n");
gong=gong4;
strcpy(gongname,"尚方宝剑");
}
else printf("你没有尚方宝剑可以装备\n\n\n");
break;
case 7:
if(gong5n>=1){
printf("拿起了雷霆之刃\n\n\n");
gong=gong5;
strcpy(gongname,"雷霆之刃");
}
else printf("你没有雷霆之刃可以装备\n\n\n");
break;
case 8:
if(gong4Xn>=1){
printf("拿起了X尚方宝剑X\n\n\n");
gong=gong4X;
strcpy(gongname,"X尚方宝剑X");
}
else printf("你没有X尚方宝剑X可以装备\n\n\n");
break;
case 9:
if(mgongn>=1){
printf("拿起了命令之剑\n\n\n");
gong=mgong;
strcpy(gongname,"命令之剑");
}
else printf("你没有命令之剑可以装备\n\n\n");
break;
case 10:
if(fang1n>=1){
printf("穿上了布衣\n\n\n");
fang=fang1;
strcpy(fangname,"布衣");
}
else printf("你没有布衣可以装备\n\n\n");
break;
case 11:
if(fang2n>=1){
printf("穿上了鳞甲\n\n\n");
fang=fang2;
strcpy(fangname,"鳞甲");
}
else printf("你没有鳞甲可以装备\n\n\n");
break;
case 12:
if(fang7n>=1){
printf("穿上了战斗马甲\n\n\n");
fang=fang7;
strcpy(fangname,"战斗马甲");
}
else printf("你没有战斗马甲可以装备\n\n\n");
break;
case 13:
if(fang3n>=1){
printf("穿上了重甲\n\n\n");
fang=fang3;
strcpy(fangname,"重甲");
}
else printf("你没有重甲可以装备\n\n\n");
break;
case 14:
if(fang6n>=1){
printf("穿上了石铠甲\n\n\n");
fang=fang6;
strcpy(fangname,"石凯甲");
}
else printf("你没有石凯甲可以装备\n\n\n");
break;
case 15:
if(fang4n>=1){
printf("穿上了传说圣甲\n\n\n");
fang=fang4;
strcpy(fangname,"传说圣甲");
}
else printf("你没有传说圣甲可以装备\n\n\n");
break;
case 16:
if(fang5n>=1){
printf("穿上了金龙铠\n\n\n");
fang=fang5;
strcpy(fangname,"金龙铠");
}
else printf("你没有金龙铠可以装备\n\n\n");
break;
case 17:
if(fang4Xn>=1){
printf("穿上了X传说圣甲X\n\n\n");
fang=fang4X;
strcpy(fangname,"X传说圣甲X");
}
else printf("你没有X传说圣甲X可以装备\n\n\n");
break;
case 18:
if(mfangn>=1){
printf("穿上了命令之甲\n\n\n");
fang=mfang;
strcpy(fangname,"命令之甲");
}
else printf("你没有命令之甲可以装备\n\n\n");
break;
case 0:
printf("未更换装备\n\n\n");
break;
default:
printf("change error!");
}
break;
case 6:
printf(" 您好,欢迎您玩斗破苍穹(苍穹世界)。");
cout<<"为了给您更好的游戏体验,";Sleep(250);
cout<<"zty时不时会优化本游戏,";Sleep(250);
cout<<"优化后会尽快发布在网上。";Sleep(250);
cout<<"关于外挂方面,";Sleep(250);
cout<<"开启外挂的方式是设定勇者姓名时,";Sleep(250);
cout<<"输入";Sleep(250);
cout<<"“";Sleep(250);
cout<<"z";Sleep(250);
cout<<"t";Sleep(250);
cout<<"y";Sleep(250);
cout<<"”";Sleep(250);
cout<<"(不包括双引号)。";Sleep(250);
cout<<"我们在";Sleep(250);
cout<<"2.";Sleep(250);
cout<<"10";Sleep(250);
cout<<"版本内容";Sleep(250);
cout<<"的基础上进行更新·,";Sleep(250);
cout<<"主要内容为命令武器装备和合成功能";Sleep(250);
cout<<"已更新完毕,。";Sleep(250);
cout<<"希望大家喜欢。";Sleep(250);
cout<<"在这里要感谢";Sleep(250);
cout<<"吴";Sleep(250);
cout<<"昊";Sleep(250);
cout<<"同学,";Sleep(250);
cout<<"他给了我许多宝贵的建议,";Sleep(250);
cout<<"谢";Sleep(250);
cout<<"谢";Sleep(250);
cout<<"。\n";Sleep(250);
system("color 89");
break;
case 0:
printf("确定退出游戏?(Y/N)\n\n\n");system("color 89");
getchar();
proof=getchar();
if(proof=='y'||proof=='Y'){
printf("按回车退出");system("color 89");
getchar();
return;
}
else if(proof=='n'||proof=='N')printf("继续游戏!\n\n\n");
else printf("继续!\n\n\n");
break;
case 8:
printf("合成台:                   0:退出\n\n");system("color 89");
cout<<"命令之书:"<<mingshu<<"\n1: 命令之剑   需要材料:1*X尚方宝剑X + 1*命令之书\n\n";Sleep(150);
cout<<"2:X尚方宝剑X  需要材料:1* 尚方宝剑  + 1*命令之书\n\n";Sleep(150);
cout<<"3: 命令之甲   需要材料:1*X传说圣甲X + 1*命令之书\n\n";Sleep(150);
cout<<"4:X传说圣甲X  需要材料:1* 传说圣甲  + 1*命令之书\n\n";Sleep(150);
cin>>he;
if(he==1)
if(he==1&&gong4Xn>=1&&mingshu>=1){
	gong4Xn--;
	mingshu--;
	mgongn++;
	cout<<"恭喜获得命令之剑\n";
}else cout<<"材料不足\n\n";
if(he==2)
if(he==2&&gong4n>=1&&mingshu>=1){
	gong4n--;
	mingshu--;
	gong4Xn++;
	cout<<"恭喜获得X尚方宝剑X\n";
}else cout<<"材料不足\n\n";
if(he==3)
if(he==3&&fang4Xn>=1&&mingshu>=1){
	fang4Xn--;
	mingshu--;
	mfangn++;
	cout<<"恭喜获得命令之甲\n";
}else cout<<"材料不足\n\n";
if(he==4)
if(he==4&&fang4n>=1&&mingshu>=1){
	fang4n--;
	mingshu--;
	fang4Xn++;
	cout<<"恭喜获得X传说圣甲X\n";
}else cout<<"材料不足\n\n";
if(he==0) break;
break;
case 7:
	int mi;
	cout<<"=====*【后台 开挂 测试Bug】*==================\n请输入密码=============*【想要后台密码问郑桐羽,只能输数字,否则死循环】*=========\n密码:";
	cin>>mi;
	if(mi%20120913==0&&mi!=0){
		cout<<"输入正确!\n欢迎进入后台!\n后台服务:\n=======================\n1.金币加999999\n2.血量上限加9999\n3.现有血量加9999\n4.攻击加9999\n5.防御加9999\n0.退出\n=======================\n输入>>> "<<endl;
		cin>>htsr;
		if(htsr==1){
			cout<<"成功获得效果 *金币加9999\n";
			money+=999999;
		}
		if(htsr==2){
			cout<<"成功获得效果 *血量加9999\n";
			player.health+=9999;
		}
		if(htsr==3){
			cout<<"成功获得效果 *血量上限加9999\n";
			player.max_health+=9999;
		}
		if(htsr==4){
			cout<<"成功获得效果 *攻击加9999\n";
			player.attack+=9999;
		}
		if(htsr==5){
			cout<<"成功获得效果 *防御加9999\n";
			player.defense+=9999;
		}
		if(htsr==0){
			cout<<"成功退出\n";
			continue;
		}
    }
	else{
	    cout<<"输入错误!请检查!"<<endl;
	    continue;
    }

    break;
}
}
}
void DisplayState()
{
printf("%s 攻击力:%d+%d=%d 防御力:%d+%d=%d HP:%d/%d \n\n\n",player.name,player.attack,gong,player.attack+gong,player.defense,fang,player.defense+fang,player.health,player.max_health);
printf("武器: %s 防具: %s \n\n\n",gongname,fangname);
printf("等级:%d 经验:%d/%d 还需要%d经验升级 金币:%d \n\n\n",player.level,player.exp,player.max_exp,player.max_exp-player.exp,money);
}
void BattleAct()
{
while(1)
{
puts("=============================================================================");
printf("要怎么办?\n\n\n 1,攻击 2,使用物品 3,查看状态 4,逃跑\n\n\n");
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
s=SuiJi();
printf("%s攻击! %sHP减少%d\n\n\n",player.name,guai.name,player.attack+s+gong-guai.defense/3);
guai.health-=player.attack+s+gong-guai.defense/3;
if(AttackResult())return; //如果攻击有结果(敌人或玩家战死)退出函数
else continue;
case 2:
ChooseWupin();
break; //选择物品,可以使用,战斗中允许使用攻击性物品
case 3:
DisplayState();
break; //显示状态
case 4:
s=SuiJi();
if(s<4) //40%的概率可以逃跑
{
printf("%s逃跑了~\n\n\n",player.name);
battle=0;
return;
}
else printf("%s逃跑失败!\n\n\n",player.name);
break;
default:
printf("输入错误,重新输入!\n\n\n");
}
}
}
void printf(char *p)
{
while(1)
{
if(*p!=0)
printf("%c",*p++);
else
break;
Sleep(100);
}
}

2.11.2

#include<stdio.h>
#include<iostream>
#include<ctime>
#include<bits/stdc++.h>
#include<time.h>
#include<windows.h>
#include<stdio.h>
#include<conio.h>
#include<time.h>
#include<cmath>
#include<windows.h> //SLEEP函数
using namespace std;
void SetColorAndBackground(int ForgC, int BackC) {
	WORD wColor = ((BackC & 0x0F) << 4) + (ForgC & 0x0F);
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), wColor);
}
int boss1=0,boss2=0;
struct Player{//玩家结构体,并初始化player
	char name[21];
	int attack;
	int defense;
	int health;
	long int max_health;
	int level;
	int exp;
	int range_exp;
	long int max_exp;
} player= {"勇者",100,80,200,200,1,0,0,100};
struct Enemy {//怪的结构体,并初始化各种怪
	char name[20];
	char wupin[20];
	int attack;
	int defense;
	int health;
	int money;
	long int exp;
	int wupin_sign;
	int wupinpro;
	int double_attack;
	int miss;
}
//怪,拿格伦石人举例
// 怪变量  怪名     掉落的装备 攻   防  血  金币 经验 掉落装备编号 掉落概率 真伤(被防御后的破甲伤害)   不能改
//  gl= {"格伦石人","石铠甲",  30, 150,1000,500, 250,      11,       7,        1,                         0},
    gl= {"格伦石人","石铠甲",30,150,1000,500,250,11,7,1,0},
    zhizhu= {"洞穴蜘蛛","蜘蛛毒剑",140,20,250,400,200,12,5,1,0},
    ymr= {"野蛮人","粗制石剑",20,20,150,100,50,13,5,1,0},
    nz= {"牛仔","战斗马甲",80,20,250,500,250,14,10,1,0},
    strongman= {"森林巨人","传说圣甲",50,50,580,200,100,1,5,1,0},
    witch= {"兽人","重甲",35,55,250,50,50,2,4,1,1},
    xiyi= {"毒蜴","鳞甲",20,25,80,30,35,3,8,2,2},
    huolong= {"喷火龙","巨龙晶石",40*5,50*5,200*5,200*5,100*5,4,4,2,0},
    lion= {"皇家士兵","尚方宝剑",100,30,380,200,100,5,5,1,0},
    horse= {"独眼巨人","碧血战锤",50,22,360,50,50,6,5,1,1},
    bee= {"剑客","西洋剑",27,11,60,30,35,7,5,2,2},
    bossno1= {"凋零女巫","凋零通行证",1400,500,15000,10000,5000,15,10,1,0},
    dljs= {"凋零巨兽","凋零之心",1200,700,20000,10000,500,10,7,1,0},
    pika= {"皮卡超人","\0",300,40*8,1000,2000,1000,0,0,1,0},
    dapika= {"雷霆皮卡","雷霆之刃",350,40*10,1500,3000,2000,8,6,6,0},
    cl= {"熔岩飞龙","\0",450,50*10,2000,3500,2500,0,0,1,0},
    jl= {"裂凯金龙","金龙铠",500,40*20,5000,8000,4500,9,6,6,1},
    gst={"凋零共生体","命令之书",1800,65*10,15000,20000,1000,16,10,1,0},
    dlkl= {"凋零骷髅","\0",3000,30*10,12000,20000,1000,0,0,1,0},
    dlfb= {".+*凋零风暴*+.","\0",9000,1500,49000,0,500000,17,10,1,0},
    guai= {"\0","\0",0,0,0,0,0,0,0,0,0};
struct Place{
int bar,hotel,forest1,forest2,forest3,grass1,grass2,grass3,te1,te2,te3,te4;
} place= {1,2,3,4,5,6,7,8,9,10,11,12};
int max_exp=0;
int htsr;int he=0;
int choose_number=0,s=0,strongman_arm=0,battle=0,money=500,place_sign=10;
int cao=3,jijiubao=3,baiyao=3,superbaiyao=3,miansi=1,boom=3,dubiao=2,yuanzidan=1;
int fang=0,fang1=10,fang1n=0,fang2=20,fang2n=0,fang3=40,fang3n=0,fang4=100,fang4n=0,fang5=400,fang5n=0,fang6=150,fang6n=0,fang7=60,fang7n=0,fang4X=550,fang4Xn=0,mfang=1000,mfangn=0;
int gong=0,gong1=10,gong1n=0,gong2=20,gong2n=0,gong3=45,gong3n=0,gong4=100,gong4n=0,gong5=300,gong5n=0,gong6=150,gong6n=0,gong7=45,gong7n=0,gong4X=500,gong4Xn=0,mgong=1000,mgongn=0;
int jingyancao=0,jingyanbao=0,jingyanshi=0,htmmcs=5;
int diaolingxinhave=0,diaolingxin=0,mingshu=0,zhadan=0;
char gongname[20]="无",fangname[20]="无";
char proof;
void AddWupin(int);
int AttackResult();
void BattleAct();  //      ____
void ChooseWupin();  //   /___/|
void DisplayState();  //  |   |/
void OrdinaryAct();     //▔▔
int SuiJi();
int SuiJi100();
void WhetherLevelUp();
void SlowDisplay(char *);
int main(){
MessageBox(NULL, "欢迎来到斗破苍穹 2.11.2 正式版 !", "斗破苍穹 游戏开始提示", MB_OK);
int i=0,j=0,k=0;
int kaishi;
char player_name[21];
Sleep(100);system("color 8E");
	cout<<"                                                \n";Sleep(100);
    cout<<"        ■ ■■■        ■■■  ■      ■     \n";Sleep(100);
    cout<<"    ■■      ■       ■   ■  ■       ■     \n";Sleep(100);
    cout<<"            ■      ■     ■   ■       ■     \n";Sleep(100);
    cout<<"           ■   ■■      ■    ■       ■     \n";Sleep(100);
    cout<<"         ■  ■            ■  ■ ■     ■     \n";Sleep(100);
    cout<<"       ■■■               ■■    ■■■      \n";Sleep(100);
    cout<<"                                         ■     \n";Sleep(100);
    cout<<"                                 ■      ■     \n";Sleep(100);
    cout<<" 欢迎来到 [斗破苍穹]               ■    ■     \n";Sleep(100);
    cout<<"                                     ■■       \n";Sleep(100);
    cout<<"  zty工作室出品          ■                     \n";Sleep(100);
    cout<<"                     ■  ■  ■     ■■■■    \n";Sleep(100);
    cout<<"  2.11.2 正式版      ■■■■■     ■    ■    \n";Sleep(100);
    cout<<"                         ■         ■■■■    \n";Sleep(100);
    cout<<" 新增 合成台功能     ■  ■  ■                 \n";Sleep(100);
    cout<<"                     ■■■■■  ■■■  ■■■ \n";Sleep(100);
    cout<<" zty出品,必属精品               ■  ■  ■  ■ \n";Sleep(100);
    cout<<"                                 ■■■  ■■■ \n";Sleep(100);
    cout<<" 努力通关吧!                                   \n";Sleep(100);
	cout<<"                                                \n";Sleep(100);
    cout<<" 输入“1 ”开始游戏 \n\n\n\n                            \n\n";Sleep(100);
    while(1){
    	cin>>kaishi;
    	if(kaishi==1) break;
	}
Sleep(100);system("color A3");
Sleep(50);system("color E4");
Sleep(50);system("color B3");
Sleep(50);system("color E4");
Sleep(50);system("color 34");
Sleep(50);system("color E3");
Sleep(50);system("color 54");
Sleep(50);system("color E3");
Sleep(50);system("color 43");
Sleep(50);system("color E4");
Sleep(50);system("color 93");
Sleep(50);system("color E4");
Sleep(50);system("color C3");
Sleep(50);system("color E4");
Sleep(50);system("color D3");
Sleep(50);system("color E4");
Sleep(50);system("color F3");
Sleep(50);system("color E4");
Sleep(50);system("color 8E");
cout<<"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n";
//printf("                            _________________________________                    ");system("color 8E");
//printf("                          /________________________________/|                    ");system("color 8E");
//printf("                _.+=*^--{|欢迎来到 [斗破苍穹] 2.11.1 正式版|}--^*=+.              ");system("color 8E");
//printf("                          ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔                      \n");system("color 8E");
//如果想使用外挂,名字请输入:“zty ”。
Sleep(300);
printf("这里是斗破苍穹(苍穹世界)! 契晋赫苟国的漓嘉茜公主被神秘人绑架了!\n\n\n 伟大的勇者啊~拿起你的武器,营救公主!\n\n\n输入你的名字: (20个字符)\n\n\n");system("color 8E");
scanf("%s",player_name);
Sleep(300);
strncpy(player.name,player_name,20);
if(strcmp(player.name,"zty")==0){
	printf("\n\n\n封印多年的官方血统啊!你终于觉醒了!\n\n\nzty,你成为了天选之人,请你救出公主吧!\n\n\n");
	player.attack=99999;
	player.defense=99999;
	player.health=999999;
	player.max_health=999999;
}
getchar();
OrdinaryAct();
return 0;
}
int SuiJi(){
srand((unsigned)time(NULL));
return rand()%10;
}
int SuiJi100(){
srand((unsigned)time(NULL));
return rand()%100;
}
void ChooseWupin(){//选择物品 并使用
printf("物品: 1,止血草%d个 2,急救包%d个 3,云南白药%d个 4,超级云南白药%d个 5,手雷%d个 6,毒标%d个 7,手抛式原子弹%d个 8,经验草%d个 9,经验包%d个 10,经验石%d个 11,巨龙晶石%d个 12,免死金牌%d个 13,凋零之心%d个 14,毁灭炸弹%d个 0,返回\n\n\n",cao,jijiubao,baiyao,superbaiyao,boom,dubiao,yuanzidan,jingyancao,jingyanbao,jingyanshi,strongman_arm,miansi,diaolingxin,zhadan);system("color 8A");
switch(scanf("%d",&choose_number),choose_number){
case 1:
if(cao>0){
printf("使用止血草,HP增加120\n\n\n");system("color 8A");
cao--;
if(player.health+120>player.max_health)player.health=player.max_health;
else player.health+=120;
}
else printf("没有止血草了\n\n\n");system("color 8A");
break;
case 2:
if(jijiubao>0){
printf("使用急救包,HP增加180\n\n\n");system("color 8A");
jijiubao--;
if(player.health+180>player.max_health)player.health=player.max_health;
else player.health+=180;
}
else printf("没有急救包了\n\n\n");system("color 8A");
break;
case 3:
if(baiyao>0){
printf("使用云南白药,HP增加240\nz\n\n");system("color 8A");
baiyao--;
if(player.health+240>player.max_health)player.health=player.max_health;
else player.health+=240;
}
else printf("没有云南白药了\n\n\n");system("color 8A");
break;
case 4:
if(superbaiyao>0){
printf("使用超级云南白药,HP增加400\n\n\n");system("color 8A");
superbaiyao--;
if(player.health+400>player.max_health)player.health=player.max_health;
else player.health+=400;
}
else printf("没有超级云南白药了\n\n\n");system("color 8A");
break;
case 5:
if(battle){//在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(boom>0){
printf("使用手雷,敌人HP减少100\n\n\n");system("color 84");
boom--;
guai.health-=100;
AttackResult();
}
}
else printf("非战斗状态,不能使用手雷!\n\n\n");system("color 84");
break;
case 6:
if(battle){ //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(dubiao>0){
printf("使用毒标,敌人HP减少200\n\n\n");system("color 84");
dubiao--;
guai.health-=200;
AttackResult();
}
}
else printf("非战斗状态,不能使用毒标!\n\n\n");system("color 84");
break;
case 7:
if(battle){ //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(yuanzidan>0){
printf("使用手抛式原子弹,敌人HP减少1500\n\n\n");system("color 84");
yuanzidan--;
guai.health-=1500;
AttackResult();
}
}
else printf("非战斗状态,不能使用手抛式原子弹!\n\n\n");system("color 84");
break;
case 8:
if(jingyancao>0 && player.level<200){
printf("使用经验草,等级增加3级\n\n\n");system("color 8E");
jingyancao--;
player.max_health=player.max_health+60;
player.attack+=9;
player.defense+=6;
player.level+=3;
player.health=player.max_health;
printf("等级:%d\n",player.level);system("color 8E");
}
else    if(jingyancao<1){
printf("没有经验草了\n\n\n");system("color 8E");
}
else printf("等级超过200级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 9:
if(jingyanbao>0 && player.level<200){
if(player.level>197&&player.level<200){
int sheng;
sheng=100-player.level;
player.level+=sheng;
jingyanbao--;
player.max_health=player.max_health+sheng*20;
player.attack+=sheng*3;
player.defense+=sheng*2;
player.health=player.max_health;
printf("使用经验包,等级增加%d级",sheng);system("color 8E");
printf("等级:%d\n",player.level);system("color 8E");
}
else{
printf("使用经验包,等级增加5级\n\n\n");system("color 8E");
jingyanbao--;
player.max_health=player.max_health+100;
player.attack+=15;
player.defense+=10;
player.level+=5;
player.health=player.max_health;
printf("等级:%d\n",player.level);system("color 8E");
}
}
else if(jingyanbao<1){
printf("没有经验包了");system("color 8E");
}
else printf("等级超过200级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 10:
if(jingyanshi>0 && player.level<200){
if(player.level>192&&player.level<200){
int sheng;
sheng=100-player.level;
player.level+=sheng;
player.max_health+=sheng*20;
player.attack+=sheng*3;
player.defense+=sheng*2;
player.health=player.max_health;
printf("使用经验石,等级增加%d级\n",sheng);system("color 8E");
printf("等级:%d\n",player.level);system("color 8E");
}
else{
printf("使用经验石,等级增加10级\n");system("color 8E");
jingyanshi--;
player.max_health=player.max_health+200;
player.attack+=30;
player.defense+=20;
player.level+=10;
player.health=player.max_health;
}
}
else if(jingyanshi<1)
{
printf("没有经验石了\n\n\n");system("color 8E");
}
else printf("等级超过200级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 11:
if(strongman_arm>0 && player.level<500)
{
if(player.level>482&&player.level<500)
{
int sheng;
sheng=500-player.level;
player.level+=sheng;
player.max_health=player.max_health+sheng*20;
player.attack+=sheng*3;
player.defense+=sheng*2;
player.health=player.max_health;
printf("使用巨龙晶石,等级增加%d级",sheng);system("color 8E");
printf("等级:%d\n",player.level);system("color 8E");
}
else
{
printf("使用巨龙晶石,等级增加20级\n\n\n");system("color 8E");
strongman_arm--;
player.max_health=player.max_health+400;
player.attack+=60;
player.defense+=40;
player.health=player.max_health;
player.level+=20;
printf("等级:%d\n",player.level);system("color 8E");
}
}
else if(strongman_arm<1)
{
printf("没有巨龙晶石了。\n\n\n");system("color 8E");
}
else printf("等级超过500级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 12:
if(miansi>0)
{
cout<<"使";Sleep(50);
cout<<"用";Sleep(50);
cout<<"免";Sleep(50);
cout<<"死";Sleep(50);
cout<<"金";Sleep(50);
cout<<"牌";Sleep(50);
cout<<"HP";Sleep(50);
cout<<"满";Sleep(50);
system("color 8b");
miansi--;
if(player.health+999999>player.max_health)player.health=player.max_health;
else player.health+=999999;
}else printf("没有免死金牌了\n\n\n"); system("color 8b");break;
break;
case 13:
if(diaolingxin>0)
{
printf("使用凋零之心\nHP上限+100  攻击+100\n\n\n");system("color 8b");
diaolingxin--;
player.max_health+=100;
player.attack+=100;
}else printf("没有凋零之心了\n\n\n"); system("color 8b");break;
case 14:
if(battle){ //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(zhadan>0){
printf("使用毁灭炸弹,敌人HP减少15000\n\n\n");system("color 84");
zhadan--;
guai.health-=15000;
AttackResult();
}
}
case 0:
break;
default:
printf("ChooseWupin error!\n\n\n");
}
}
int AttackResult(){ //攻击结果:判断是否获胜 是否获得物品 和 是否升级
	if(guai.health<=0){
	battle=0;
	printf("战斗胜利!获得金币%d,经验%d\n\n\n",guai.money,guai.exp);system("color 8C");
	player.exp+=guai.exp;
	player.range_exp+=guai.exp;
	money+=guai.money;
	s=SuiJi();
	if(s<guai.wupinpro){
		cout<<"从";Sleep(100);
		cout<<"敌";Sleep(100);
		cout<<"人";Sleep(100);
		cout<<"尸";Sleep(100);
		cout<<"骸";Sleep(100);
		cout<<"中";Sleep(100);
		cout<<"发";Sleep(100);
		cout<<"现";Sleep(100);
		system("color 8C");
		printf("%s\n\n\n",guai.wupin);
		AddWupin(guai.wupin_sign);
	}
	WhetherLevelUp();
	if(strcmp(guai.name,"*凋零巨兽*")==0){
	printf("你把公主救了出来\n\n你从公主口中得知了一个更大的阴谋,你可以进入凋零世界\n\n");
	system("color 8C");
	}
	return 1; //攻击有结果了返回1,否则返回0,用于判断是否继续做战斗行为
}
else
{
int s=SuiJi();

if((guai.attack+s-player.defense/3)<0)
{
player.health-=1;
printf("%s反击,你的HP减少了 1\n\n",guai.name);system("color 8C");
}
else
{
player.health-=guai.attack+s-player.defense/3;
printf("%s反击,你的HP减少了%d\n\n",guai.name,guai.attack+s-player.defense/3);system("color 8C");
}
if(player.health<0)
{
battle=0;
printf("%s战死!金币掉落%d\n\n\n",player.name,player.level*500);system("color CC");
money-=player.level*500;
player.health=player.max_health/5;
OrdinaryAct();//
return 1;
}
}
return 0;
}
void AddWupin(int wupin_sign)
{

switch(wupin_sign)
{
case 1:
fang4n++;
break;
case 2:
fang3n++;
break;
case 3:
fang2n++;
break;
case 4:
strongman_arm++;
break;
case 5:
gong4n++;
break;
case 6:
gong3n++;
break;
case 7:
gong2n++;
break;
case 8:
gong5n++;
break;
case 9:
fang5n++;
break;
case 10:
diaolingxin++;
break;
case 11:
fang6n++;
break;
case 12:
gong6n++;
break;
case 13:
gong7n++;
break;
case 14:
fang7n++;
break;
case 15:
diaolingxinhave++;
boss1++;
break;
case 16:
mingshu++;
break;
case 17:
boss2++;
break;
default:
printf("AddWupin error\n\n\n");
}

}
void WhetherLevelUp()
{
int i=0,j=0;
int l1=player.range_exp/150;
int l2=player.range_exp/300;
int l3=player.range_exp/600;
if(player.level<=15&&l1>0) //15级以下,经验足够 都满足则升级
{
if(l1==1)
{
printf("%s",player.name);
printf(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=100;
}
else
{
printf("好厉害!连升%d级!",l1);system("color 8E");
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l1,2*l1,20*l1);system("color 8E");
player.exp=(player.exp+guai.exp) || player.exp-((player.exp+guai.exp) || player.exp)%100;
player.attack+=3*l1;
player.defense+=2*l1;
player.max_health+=20*l1;
player.health=player.max_health;
player.level+=l1;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=100*l1;
}
}
else if(player.level<=40&&l2>0)
{
if(l2==1)
{
printf("%s",player.name);
printf(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=300;
}
else
{
printf("好厉害!连升%d级!",l1);system("color 8E");
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l2,2*l2,20*l2);system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3*l2;
player.defense+=2*l2;
player.max_health+=20*l2;
player.health=player.max_health;
player.level+=l2;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=300*l2;
}
}
else if(l3>0)
{
if(l3==1)
{
printf("%s",player.name);
printf(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=600;
}
else
{
printf("好厉害!连升%d级!",l1);
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l3,2*l3,20*l3);system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3*l3;
player.defense+=2*l3;
player.max_health+=20*l3;
player.health=player.max_health;
player.level+=l3;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=600*l3;
}
}
}
void OrdinaryAct() //正常行为菜单(移动,物品,对话,查看状态,装备,退出游戏)
{

while(1)
{
// \(1000);
// system("cls");
puts("=============================================================================");system("color 8E");
printf("要做什么?\n\n 1,移动 2,道具 3,对话 4,查看状态 5,装备 6,关于游戏 7,后台 8,合成台 0,退出游戏\n\n\n");system("color 8E");
puts("=============================================================================");system("color 8E");
switch(scanf("%d",&choose_number),choose_number)
{
case 1: //显示移动菜单
printf("要去哪里?\n\n\n");system("color 8E");
//printf("  ");
cout<<"1,小郑子酒吧  ";Sleep(150);
cout<<"2,诺亚方舟酒店  ";Sleep(150);
cout<<"3,北朝商会  ";Sleep(150);
cout<<"4,红玉拍卖行  ";Sleep(150);
cout<<"5,冒险荒野\n\n\n";Sleep(150);system("color 8E");
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
place_sign=place.bar; //记录目前位置-酒吧
// OrdinaryAct();
break;
case 2:
place_sign=place.hotel; //进入旅店
printf("金币:%d",money);system("color 8E");
printf("要开房吗? 200个金币 \n 1,是 0,否\n\n\n");system("color 8E");
choose_number=1;
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
if(money-200<=0) //判断钱是否够
{
printf("Sorry,你的钱不够~\n\n\n");system("color 8E");
printf("金币:%d",money);system("color 8E");
}
else
{
printf("好好休息\nHP满\n第二天了\n\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
money-=200; //花费200住店费
player.health=player.max_health; //体力满
}
break;
case 0:
printf("下次再来!\n\n\n");system("color 8E");
break;
default:
printf("hotel talk error!\n\n\n");system("color 8E");
}
place_sign=0;
break;
case 3:
int yongju,gong,fang;
printf("请问您要购买什么类型的物品?\n\n\n");system("color 8E");
cout<<"1,攻击装备 ";Sleep(50);
cout<<"2,防御装备 ";Sleep(50);
cout<<"3,一次性伤害武器\n\n\n";Sleep(50);
scanf("%d",&yongju);
switch(yongju)
{
case 1:
printf("请问您要购买什么武器?\n\n\n 1,匕首¥300 2,西洋剑¥500 3,碧血战锤¥1000\n\n\n");system("color 8E");
scanf("%d",&gong);
switch(gong)
{
case 1:
if(money>=300)
{
gong1n++;
money=money-300;
printf ("匕首+1\n");system("color 8E");
printf("匕首:%d个\n",gong1n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
case 2:
if(money>=500)
{
gong2n++;
money=money-500;
printf ("西洋剑+1\n");system("color 8E");
printf("西洋剑:%d个\n",gong2n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
case 3:
if(money>=1000)
{
gong3n++;
money=money-1000;
printf ("碧血战锤+1\n");system("color 8E");
printf("碧血战锤:%d个\n",gong3n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
default:
printf("对不起,我们只会打造以上武器。");system("color 8E");
break;

}
break;
case 2:
int fang;
printf("请问您要购买什么防具?\n\n\n 1,布衣¥300 2,鳞甲¥500 3,重甲¥1000\n\n\n");system("color 8E");
scanf("%d",&fang);
switch(fang)
{
case 1:
if(money>=300)
{
fang1n++;
money=money-300;
printf ("布衣+1\n");system("color 8E");
printf("布衣:%d个\n",fang1n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}

break;
case 2:
if(money>=500)
{
fang2n++;
money=money-500;
printf ("鳞甲+1\n");system("color 8E");
printf("鳞甲:%d个\n",fang2n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d",money);system("color 8E");
}
break;
case 3:
if(money>=1000)
{
fang3n++;
money=money-1000;
printf ("重甲+1\n");system("color 8E");
printf("重甲:%d个\n",fang3n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
default:
printf("对不起,我们只会打造以上防具。");system("color 8E");
break;

}
printf("金币:%d\n",money);system("color 8E");
break;
case 3:
printf("请问您要购买什么一次性伤害武器?\n 1,手雷 2,毒镖 3,手抛式原子弹\n\n\n");system("color 8E");
int yi;
scanf("%d",&yi);
switch(yi)
{
case 1:
if(money>=300 && boom<5)
{
boom++;
money=money-300;
printf("手雷+1\n");system("color 8E");
printf("手雷:%d\n",boom);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d",money);system("color 8E");
}
break;
case 2:
if(money>=600 && dubiao<9999999)
{
dubiao++;
money=money-600;
printf("毒镖+1\n");system("color 8E");
printf("毒镖:%d\n",dubiao);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
break;
case 3:
if(money>=1000 && yuanzidan<5)
{
yuanzidan=yuanzidan+1;
money=money-1000;
printf("手抛式原子弹+1\n");system("color 8E");
printf("手抛式原子弹:%d\n",yuanzidan);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n\n\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}

break;
}
}
break;
case 4:
printf ("欢迎您光临本拍卖行,请问您要卖什么东西?\n\n");system("color 8E");
printf("攻击装备: 1,匕首:%d个 2,西洋剑:%d个 3,粗制石剑:%n 4,碧血战锤:%d个 5,蜘蛛毒剑:%n个 6,尚方宝剑:%d个 7,皮卡大剑:%d个\n",gong1n,gong2n,gong7n,gong3n,gong6n,gong4n,gong5n);system("color 8E");
printf("防御装备: 8,布衣:%d个 9,鳞甲:%d个 10,战斗马甲:%d个 11,重甲:%d个 12,石铠甲:%d个 13,传说圣甲:%d个 14,金龙铠:%d个 15,巨龙晶石:%d个\n 0,返回\n\n\n",fang1n,fang2n,fang7n,fang3n,fang6n,fang4n,fang5n,strongman_arm);system("color 8E");
int pai,shu,i;
scanf("%d",&pai);system("color 8E");
switch(pai)
{
case 1:
printf("请问您要出售几件?");system("color 8E");
scanf("%d",&shu);
if(gong1n>=shu)
{
gong1n=gong1n-shu;
money=money+shu*240;
printf("匕首:%d\n",gong1n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
else
{
printf("装备数不够,无法出售!\n");system("color 8E");
break;
}
break;
case 2:
printf("请问您要出售几件?\n");system("color 8E");
scanf("%d",&shu);
if(gong2n>=shu)
{
gong2n=gong2n-shu;
money=money+shu*400;
printf("西洋剑:%d\n",gong2n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 3:
printf("请问您要出售几件?\n");system("color 8E");
scanf("%d",&shu);
if(gong7n>=shu)
{
gong7n=gong7n-shu;
money=money+shu*800;
printf("粗制石剑:%d\n",gong7n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 4:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(gong3n>=shu)
{
gong3n=gong3n-shu;
money=money+shu*800;
printf("碧血战锤:%d\n",gong3n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 5:
printf("请问您要出售几件?\n");system("color 8E");
scanf("%d",&shu);
if(gong6n>=shu)
{
gong6n=gong6n-shu;
money=money+shu*1000;
printf("蜘蛛毒剑:%d\n",gong6n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 6:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(gong4n>=shu)
{
gong4n=gong4n-shu;
money=money+shu*1500;
printf("尚方宝剑:%d\n",gong4n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 7:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(gong5n>=shu)
{
gong5n=gong5n-shu;
money=money+shu*3000;
printf("皮卡大剑:%d\n",gong5n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 8:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang1n>=shu)
{
fang1n=fang1n-shu;
money=money+shu*240;
printf("布衣:%d\n",fang1n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 9:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang2n>=shu)
{
fang2n=fang2n-shu;
money=money+shu*500;
printf("鳞甲:%d\n",fang2n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 10:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang7n>=shu)
{
fang7n=fang7n-shu;
money=money+shu*1000;
printf("战斗马甲:%d\n",fang7n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 11:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang3n>=shu)
{
fang3n=fang3n-shu;
money=money+shu*800;
printf("重甲:%d\n",fang3n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
break;
case 12:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang6n>=shu)
{
fang6n=fang6n-shu;
money=money+shu*2000;
printf("石凯甲:%d\n",fang6n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 13:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang4n>=shu)
{
fang4n=fang4n-shu;
money=money+shu*1500;
printf("传说圣甲:%d\n",fang4n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}

case 14:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang5n>=shu)
{
fang5n=fang5n-shu;
money=money+shu*3000;
printf("金龙铠:%d\n",fang5n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 15:
printf("请问您要出售几颗?");
scanf("%d",&shu);
if(strongman_arm>=shu)
{
strongman_arm=strongman_arm-shu;
money=money+shu*4000;
printf("巨龙晶石:%d\n",strongman_arm);
printf("金币:%d\n",money);
}
else{
printf("晶石数不够,无法出售!\n");
break;
}
break;
case 0:
break;
break;
default:
printf("没有该装备,无法出售!\n");
break;
}
break;
case 5:
int yewai;
while(1){
puts("=============================================================================");
printf("要去哪冒险呢?");system("color 8c");
printf("\n\n");
cout<<"1,神秘沼泽 危险程度:★\n\n";Sleep(50);system("color 8c");
cout<<"2,星耀草原 危险程度:★★★\n\n";Sleep(50);
cout<<"3,诡异森林 危险程度:★★★\n\n";Sleep(50);
cout<<"4,荒漠矿场 危险程度:★★★★\n\n";Sleep(50);
cout<<"5,炽热炎洞 危险程度:★★★★★\n\n";Sleep(50);
cout<<"6,皮卡营地 危险程度:★★★★★★\n\n";Sleep(50);
cout<<"7,花朵宫殿 危险程度:★★★★★★\n\n";Sleep(50);
cout<<"8,熔岩龙穴 危险程度:★★★★★★★\n\n";Sleep(50);
cout<<"9,凋零宇宙 危险程度:★★★★★★★★\n\n";Sleep(50);
cout<<"0,离开\n";Sleep(150);
system("color 8c");
puts("=============================================================================");
scanf("%d",&yewai);
switch(yewai)
{
case 1:
place_sign=place.forest1;
s=SuiJi();
if(s<7)
{
battle=1;
guai=xiyi;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<9)
{
battle=1;
guai=witch;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else
{
printf("这里安全\n\n\n");
//不用调用OAct函数,会自动执行OAct函数;
}
break;
case 3:
place_sign=place.forest2;
s=SuiJi();
if(s<4)
{
battle=1;
guai=witch;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<7)
{
battle=1;
guai=strongman;
printf("横冲直撞的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else
{
battle=1;
guai=zhizhu;
printf("可怕的%s爬了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 5:
place_sign=place.forest3;
s=SuiJi();
if(s<=3){
battle=1;
guai=strongman;
printf("横冲直撞的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<5){
battle=1;
guai=huolong;
printf("炽热的%s拍打着翅膀扑了过来!\n\n\n",guai.name);
BattleAct();
} else if(s<8){
battle=1;
guai=gl;
printf("全身长满矿石的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}else{
battle=1;
guai=zhizhu;
printf("可怕的%s扑爬了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 2:
place_sign=place.grass1;
s=SuiJi();
if(s<=3){
battle=1;
guai=bee;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<5){
battle=1;
guai=horse;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}else if(s<8){
battle=1;
guai=ymr;
printf("横冲直撞的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}else{
battle=1;
guai=nz;
printf("帅气但令人讨厌的%s向你开枪!\n\n\n",guai.name);
BattleAct();
}
break;
case 4:
place_sign=place.grass2;
s=SuiJi();
if(s<5){
battle=1;
guai=horse;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<7){
battle=1;
guai=lion;
printf("%s举着尚方宝剑拦住了你!\n\n\n",guai.name);
BattleAct();}
else{
battle=1;
guai=gl;
printf("全身长满矿石的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 6:
s=SuiJi();
if(s<7){
battle=1;
guai=pika;
printf("你感到了强烈的电流涌入全身,%s走了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<9){
battle=1;
guai=dapika;
printf("天空一声巨响,三道闪电劈到%s的身上,%s手持雷霆之刃冲了过来!\n\n\n",guai.name,guai.name);
BattleAct();
}
else{
printf("这里安全\n\n\n");
}
break;
case 8:
s=SuiJi();
if(s<=3)
{
battle=1;
guai=cl;
printf("一条飞龙横卧洞内,你定睛一看,是%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<=8 && s>=4)
{
battle=1;
guai=huolong;
printf("炽热的%s拍打着翅膀扑了过来!\n\n\n",guai.name);
BattleAct();
}
else {
battle=1;
guai=jl;
printf("一条金光闪闪的飞龙盘旋空中,,是传说中的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 7:
place_sign=place.grass3;
s=SuiJi();
if(s<5){
battle=1;
guai=lion;
printf("%s举着尚方宝剑拦住了你!\n\n\n",guai.name);
BattleAct();
}
else if(s<7||boss1==0){
battle=1;
if(strongman_arm>=1){
printf("神秘老人:\n\n\n 哈哈,年轻人,做的不错,不过...嘿嘿,你上当啦!巨龙晶石我要了,公主你也别想带走!\n\n\n");
guai=bossno1;
printf("瞬间,你被一团黑雾笼罩,你被拉入了凋零幻境,%s向你发起攻击!\n\n\n",guai.name);
BattleAct();
}
else printf("神秘老人:\n\n\n 年轻人,你好啊.如果你有巨龙晶石,我可以告诉你公主的下落哦~\n\n\n");
}
else{
battle=1;
guai=nz;
printf("帅气但令人讨厌的%s向你开枪!\n\n\n",guai.name);
BattleAct();
}
break;
case 9:
s=SuiJi();
if(diaolingxinhave!=0){
if(s==1&&boss2==0){
battle=1;
guai=dlfb;
printf("一个巨大的黑暗物体,周围环绕着大量的由破碎方块组成的黑色颗粒云环的%s向你发起攻击!\n\n\n",guai.name);
BattleAct();
}else if(s>=2 && s<=4)
{
battle=1;
guai=dlkl;
printf("手持凋零剑的黑色凶恶%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s>=5&&s<=7){
battle=1;
guai=gst;
printf("一个巨大的触手向你打来,你挡了下来%s扑了过来!\n\n\n",guai.name);
BattleAct();
} else{
battle=1;
guai=dljs;
printf("一只巨大的猛兽%s冲了过来!\n\n\n",guai.name);
BattleAct();
}
}if(diaolingxinhave==0){
cout<<"你没有击败过凋零女巫,请去花朵宫殿击败凋零女巫。" <<endl;
}
break;
if(yewai!=0)
{
printf("该区域为未知区域,无法进入。\n\n\n");system("color 8E");
break;
}
}
if(yewai==0)
{
break;
printf("已离开荒野。");system("color 8E");
}
}

}
break;

case 2:
ChooseWupin();
break; //显示道具,并可以使用.
case 3: //对话选项
if(place_sign==place.bar)
{
printf("要和谁说话?\n\n\n1,红发女郎 2,赏金猎人 3,酒吧老板 4,药品商人\n\n\n"); system("color 8E");//显示对话人物
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
printf("红发女郎:\n\n\n 吧台边那个Hunter好帅啊!(~脸红~)\n\n\n听说他经常外出打猎,外面的路他应该很熟悉的!\n\n\n");system("color 8E");
break;
case 2:
if(fang1n<1&&gong1n<1)
{
printf("赏金猎人:\n\n\n 你要救公主啊!好胆量!\n\n\n 不过外面的世界很险恶,而且越深越危险,这是匕首和布衣,对你会有些帮助的,拿去吧!\n\n\n");system("color 8E");
printf("%s心想:哇,这位大叔人真好啊!\n\n\n)",player.name);
gong1n++;
fang1n++;
}
else printf("赏金猎人:\n\n\n 加油吧,年轻人!\n\n\n 不要被外面世界所吓倒!\n\n\n");system("color 8E");
break;
case 3:
printf("要喝点什么?\n\n\n 1,二锅头25金币 HP+20 2,伏特加80金币 HP+50 3,人头马面150金币 HP+100 0,返回\n\n\n");system("color 8E");
choose_number=1;
while(choose_number)
{
switch(scanf("%d",&choose_number),choose_number){
case 1:
if(money<25){
printf("钱不够!");system("color 8E");
}
else
{
if(player.health+20<=player.max_health){
printf("HP+20.");system("color 8E");
money-=25;
player.health+=20;
}
else{
printf("HP满了");system("color 8E");
player.health=player.max_health;
}
}
break;
case 2:
if(money<80){
printf("钱不够!");system("color 8E");
}
else{
if(player.health+50<=player.max_health){
printf("HP+50.");system("color 8E");
money-=80;
player.health+=50;
}
else{
printf("HP满了");system("color 8E");
player.health=player.max_health;
}
}
break;
case 3:
if(money<150){
printf("钱不够!");system("color 8E");
}
else{
if(player.health+100<=player.max_health){
printf("HP+100.");system("color 8E");
money-=150;
player.health+=100;
}
else{
printf("HP满了");system("color 8E");
player.health=player.max_health;
}
}
break;
case 0:
printf("下次再来!\n");system("color 8E");
break;
default:
printf("输入错误\n\n\n");system("color 8E");
break;
}
break;
}
break;
case 4:
printf("你要干什么?\n\n\n 1,买东西 2,聊天 \n\n\n");system("color 8E");
int mai;
scanf("%d",&mai);
if(mai==1){
printf("买点什么呢?\n1,止血草¥100 HP+60\n2,急救包¥150 HP+80 \n3,云南白药¥250 HP+120\n4,超级云南白药¥400 HP+200 \n5,经验草¥150 经验+300 \n6,经验包¥600 经验+600\n7,经验石¥500 经验+1000 \n0,拜拜\n");system("color 8E");
int dongxi;
scanf("%d",&dongxi);
switch(dongxi){
case 1:
if(money>=100&&cao<6){
cao++;
money=money-100;
printf ("止血草+1\n");system("color 8E");
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 2:
if(money>=150&&jijiubao<10){
jijiubao++;
money=money-150;
printf ("急救包+1\n");system("color 8E");
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 3:
if(money>=250&&baiyao<10){
baiyao++;
money=money-250;
printf ("云南白药+1\n");system("color 8E");
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 4:
if(money>=400&&superbaiyao<10){
superbaiyao++;
money=money-400;
printf ("超级云南白药+1\n");system("color 8E");

}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 5:
if(money>=150){
jingyancao++;
money=money-150;
printf ("经验草+1\n");system("color 8E");
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 6:
if(money>=300){
jingyanbao++;
money=money-300;
printf ("经验包+1\n");system("color 8E");
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 7:
if(money>=500){
jingyanshi++;
money=money-500;
printf ("经验石+1\n");system("color 8E");
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
}
case 0:
printf("金币:%d\n",money);system("color 8E");
printf("再见,欢迎下次再来!\n");system("color 8E");
break;

}
if(mai==2){
printf("药品商人:去去去,老子没时间陪你聊。\n");system("color 8E");
}
}
}
else if(place_sign==place.hotel)
printf("“老板娘!我...”\n\n\n“我忙着呢,没空理你~”\n\n\n");
else printf("这里好像没人可以聊天\n\n\n");system("color 8E");
break;
case 4:
DisplayState();
break; //显示状态
case 5: //装备
printf("攻击装备: 1,匕首:%d个 2,西洋剑:%d个 3,粗制石剑:%d个 4,碧血战锤:%d个 5,蜘蛛毒剑:%d个 6,尚方宝剑:%d个 7,雷霆之刃:%d个 8,X尚方宝剑X:%d个 9,命令之剑:%d个\n\n\n",gong1n,gong2n,gong7n,gong3n,gong6n,gong4n,gong5n,gong4Xn,mgongn);system("color 8E");
printf("防御装备: 10,布衣:%d个 11,鳞甲:%d个 12,战斗马甲:%d个 13,重甲:%d个 14,石铠甲:%d个 15,传说圣甲:%d个 16,金龙铠:%d个 17,X传说圣甲X:%d个 18,命令之甲:%d个\t\t0,返回\n\n\n",fang1n,fang2n,fang7n,fang3n,fang6n,fang4n,fang5n,fang4Xn,mfangn);system("color 8E");
printf("选择要装备的武器或防具:\n\n\n");system("color 8E");
switch(scanf("%d",&choose_number),choose_number){
case 1:
if(gong1n>=1){
printf("拿起了匕首\n\n\n");system("color 8E");
gong=gong1;
strcpy(gongname,"匕首");system("color 8E");
}
else printf("你没有匕首可以装备\n\n\n");system("color 8E");
break;
case 2:
if(gong2n>=1){
printf("拿起了西洋剑\n\n\n");system("color 8E");
gong=gong2;
strcpy(gongname,"西洋剑");system("color 8E");
}
else printf("你没有西洋剑可以装备\n\n\n");system("color 8E");
break;
case 3:
if(gong7n>=1){
printf("拿起了粗制石剑\n\n\n");
gong=gong7;
strcpy(gongname,"粗制石剑");
}
else printf("你没有粗制石剑可以装备\n\n\n");
break;
case 4:
if(gong3n>=1){
printf("拿起了碧血战锤\n\n\n");
gong=gong3;
strcpy(gongname,"碧血战锤");
}
else printf("你没有碧血战锤可以装备\n\n\n");
break;
case 5:
if(gong6n>=1){
printf("拿起了蜘蛛毒剑\n\n\n");
gong=gong6;
strcpy(gongname,"蜘蛛毒剑");
}
else printf("你没有蜘蛛毒剑可以装备\n\n\n");
break;
case 6:
if(gong4n>=1){
printf("拿起了尚方宝剑\n\n\n");
gong=gong4;
strcpy(gongname,"尚方宝剑");
}
else printf("你没有尚方宝剑可以装备\n\n\n");
break;
case 7:
if(gong5n>=1){
printf("拿起了雷霆之刃\n\n\n");
gong=gong5;
strcpy(gongname,"雷霆之刃");
}
else printf("你没有雷霆之刃可以装备\n\n\n");
break;
case 8:
if(gong4Xn>=1){
printf("拿起了X尚方宝剑X\n\n\n");
gong=gong4X;
strcpy(gongname,"X尚方宝剑X");
}
else printf("你没有X尚方宝剑X可以装备\n\n\n");
break;
case 9:
if(mgongn>=1){
printf("拿起了命令之剑\n\n\n");
gong=mgong;
strcpy(gongname,"命令之剑");
}
else printf("你没有命令之剑可以装备\n\n\n");
break;
case 10:
if(fang1n>=1){
printf("穿上了布衣\n\n\n");
fang=fang1;
strcpy(fangname,"布衣");
}
else printf("你没有布衣可以装备\n\n\n");
break;
case 11:
if(fang2n>=1){
printf("穿上了鳞甲\n\n\n");
fang=fang2;
strcpy(fangname,"鳞甲");
}
else printf("你没有鳞甲可以装备\n\n\n");
break;
case 12:
if(fang7n>=1){
printf("穿上了战斗马甲\n\n\n");
fang=fang7;
strcpy(fangname,"战斗马甲");
}
else printf("你没有战斗马甲可以装备\n\n\n");
break;
case 13:
if(fang3n>=1){
printf("穿上了重甲\n\n\n");
fang=fang3;
strcpy(fangname,"重甲");
}
else printf("你没有重甲可以装备\n\n\n");
break;
case 14:
if(fang6n>=1){
printf("穿上了石铠甲\n\n\n");
fang=fang6;
strcpy(fangname,"石凯甲");
}
else printf("你没有石凯甲可以装备\n\n\n");
break;
case 15:
if(fang4n>=1){
printf("穿上了传说圣甲\n\n\n");
fang=fang4;
strcpy(fangname,"传说圣甲");
}
else printf("你没有传说圣甲可以装备\n\n\n");
break;
case 16:
if(fang5n>=1){
printf("穿上了金龙铠\n\n\n");
fang=fang5;
strcpy(fangname,"金龙铠");
}
else printf("你没有金龙铠可以装备\n\n\n");
break;
case 17:
if(fang4Xn>=1){
printf("穿上了X传说圣甲X\n\n\n");
fang=fang4X;
strcpy(fangname,"X传说圣甲X");
}
else printf("你没有X传说圣甲X可以装备\n\n\n");
break;
case 18:
if(mfangn>=1){
printf("穿上了命令之甲\n\n\n");
fang=mfang;
strcpy(fangname,"命令之甲");
}
else printf("你没有命令之甲可以装备\n\n\n");
break;
case 0:
printf("未更换装备\n\n\n");
break;
default:
printf("change error!");
}
break;
case 6:
printf(" 您好,欢迎您玩斗破苍穹(苍穹世界)。");
cout<<"为了给您更好的游戏体验,";Sleep(250);
cout<<"zty时不时会优化本游戏,";Sleep(250);
cout<<"优化后会尽快发布在网上。";Sleep(250);
cout<<"关于外挂方面,";Sleep(250);
cout<<"开启外挂的方式是设定勇者姓名时,";Sleep(250);
cout<<"输入";Sleep(250);
cout<<"“";Sleep(250);
cout<<"z";Sleep(250);
cout<<"t";Sleep(250);
cout<<"y";Sleep(250);
cout<<"”";Sleep(250);
cout<<"(不包括双引号)。";Sleep(250);
cout<<"我们在";Sleep(250);
cout<<"2.";Sleep(250);
cout<<"11.";Sleep(250);
cout<<"1";Sleep(250);
cout<<"版本内容";Sleep(250);
cout<<"的基础上进行添加,";Sleep(250);
cout<<"主要内容为新的开始界面和";Sleep(250);
cout<<"新一次性武器 毁灭炸弹,";Sleep(250);
cout<<"已更新完毕,。";Sleep(250);
cout<<"希望大家喜欢。";Sleep(250);
cout<<"在这里要感谢";Sleep(250);
cout<<"吴";Sleep(250);
cout<<"昊";Sleep(250);
cout<<"同学,";Sleep(250);
cout<<"他给了我许多宝贵的建议,";Sleep(250);
cout<<"谢";Sleep(250);
cout<<"谢";Sleep(250);
cout<<"。\n";Sleep(250);
system("color 8E");
break;
case 0:
printf("确定退出游戏?(Y/N)\n\n\n");system("color 8E");
getchar();
proof=getchar();
if(proof=='y'||proof=='Y'){
printf("按回车退出");system("color 8E");
getchar();
return;
}
else if(proof=='n'||proof=='N')printf("继续游戏!\n\n\n");
else printf("继续!\n\n\n");
break;
case 8:
printf("合成台:                   0:退出\n\n");system("color 8E");
cout<<"命令之书:"<<mingshu<<"\n1: 命令之剑   需要材料:1*X尚方宝剑X + 3*命令之书\n\n";Sleep(150);
cout<<"2:X尚方宝剑X  需要材料:1* 尚方宝剑  + 1*命令之书\n\n";Sleep(150);
cout<<"3: 命令之甲   需要材料:1*X传说圣甲X + 3*命令之书\n\n";Sleep(150);
cout<<"4:X传说圣甲X  需要材料:1* 传说圣甲  + 1*命令之书\n\n";Sleep(150);
cout<<"5: 毁灭炸弹   需要材料:5*手抛原子弹 + 3*命令之书\n\n";Sleep(150);
cin>>he;
if(he==1)
if(he==1&&gong4Xn>=1&&mingshu>=3){
	gong4Xn--;
	mingshu-=3;
	mgongn++;
	cout<<"恭喜获得命令之剑\n";
}else cout<<"材料不足\n\n";
if(he==2)
if(he==2&&gong4n>=1&&mingshu>=1){
	gong4n--;
	mingshu--;
	gong4Xn++;
	cout<<"恭喜获得X尚方宝剑X\n";
}else cout<<"材料不足\n\n";
if(he==3)
if(he==3&&fang4Xn>=1&&mingshu>=3){
	fang4Xn--;
	mingshu-=3;
	mfangn++;
	cout<<"恭喜获得命令之甲\n";
}else cout<<"材料不足\n\n";
if(he==4)
if(he==4&&fang4n>=1&&mingshu>=1){
	fang4n--;
	mingshu--;
	fang4Xn++;
	cout<<"恭喜获得X传说圣甲X\n";
}else cout<<"材料不足\n\n";
if(he==5)
if(he==5&&yuanzidan>=5&&mingshu>=3){
	yuanzidan-=5;
	mingshu-=3;
	zhadan++;
	cout<<"恭喜获得毁灭炸弹\n";
}else cout<<"材料不足\n\n";
if(he==0) break;
break;
case 7:
	int mi;
	cout<<"=====*【后台 开挂 测试Bug】*==================\n请输入密码=============*【想要后台密码问郑桐羽,只能输数字,否则死循环】*=========\n密码:";
	cin>>mi;
	if(mi%20120913==0&&mi!=0){
		cout<<"输入正确!\n欢迎进入后台!\n后台服务:\n=======================\n1.金币加999999\n2.血量上限加9999\n3.现有血量加9999\n4.攻击加9999\n5.防御加9999\n0.退出\n=======================\n输入>>> "<<endl;
		cin>>htsr;
		if(htsr==1){
			cout<<"成功获得效果 *金币加9999\n";
			money+=999999;
		}
		if(htsr==2){
			cout<<"成功获得效果 *血量加9999\n";
			player.health+=9999;
		}
		if(htsr==3){
			cout<<"成功获得效果 *血量上限加9999\n";
			player.max_health+=9999;
		}
		if(htsr==4){
			cout<<"成功获得效果 *攻击加9999\n";
			player.attack+=9999;
		}
		if(htsr==5){
			cout<<"成功获得效果 *防御加9999\n";
			player.defense+=9999;
		}
		if(htsr==0){
			cout<<"成功退出\n";
			continue;
		}
    }
	else{
	    cout<<"输入错误!请检查!"<<endl;
	    continue;
    }

    break;
}
}
}
void DisplayState()
{
printf("%s 攻击力:%d+%d=%d 防御力:%d+%d=%d HP:%d/%d \n\n\n",player.name,player.attack,gong,player.attack+gong,player.defense,fang,player.defense+fang,player.health,player.max_health);
printf("武器: %s 防具: %s \n\n\n",gongname,fangname);
printf("等级:%d 经验:%d/%d 还需要%d经验升级 金币:%d \n\n\n",player.level,player.exp,player.max_exp,player.max_exp-player.exp,money);
}
void BattleAct()
{
while(1)
{
puts("=============================================================================");
printf("要怎么办?\n\n\n 1,攻击 2,使用物品 3,查看状态 4,逃跑\n\n\n");
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
s=SuiJi();
printf("%s攻击! %sHP减少%d\n\n\n",player.name,guai.name,player.attack+s+gong-guai.defense/3);
guai.health-=player.attack+s+gong-guai.defense/3;
if(AttackResult())return; //如果攻击有结果(敌人或玩家战死)退出函数
else continue;
case 2:
ChooseWupin();
break; //选择物品,可以使用,战斗中允许使用攻击性物品
case 3:
DisplayState();
break; //显示状态
case 4:
s=SuiJi();
if(s<4) //40%的概率可以逃跑
{
printf("%s逃跑了~\n\n\n",player.name);
battle=0;
return;
}
else printf("%s逃跑失败!\n\n\n",player.name);
break;
default:
printf("输入错误,重新输入!\n\n\n");
}
}
}
void printf(char *p)
{
while(1)
{
if(*p!=0)
printf("%c",*p++);
else
break;
Sleep(100);
}
}

2.11.3

#include<stdio.h>
#include<iostream>
#include<ctime>
#include<bits/stdc++.h>
#include<conio.h>
#include<time.h>
#include<cmath>
#include<windows.h> //SLEEP函数
using namespace std;
void SetColorAndBackground(int ForgC, int BackC) {
	WORD wColor = ((BackC & 0x0F) << 4) + (ForgC & 0x0F);
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), wColor);
}
void Bling()
{
    for(int i=0;i<=5;i++)
    {
        system("color 1A");Sleep(10);
        system("color 2B");Sleep(10);
        system("color 3C");Sleep(10);
        system("color 4D");Sleep(10);
        system("color 5D");Sleep(10);
        system("color 6E");Sleep(10);
        system("color 7F");Sleep(10);
    }
}
void Start(){
    system("color 8E");
	cout<<"          ■                       ■                                  \n";Sleep(100);
    cout<<"       ■ ■        ■■■■    ■■■■■                        \n";Sleep(100);
    cout<<"    ■ ■ ■           ■      ■  ■  ■                  \n";Sleep(100);
    cout<<"     ■   ■         ■        ■  ■                         \n";Sleep(100);
    cout<<"    ■■■■■■   ■■■■   ■ ■■■                    \n";Sleep(100);
    cout<<"          ■     ■  ■  ■  ■  ■  ■                         \n";Sleep(100);
    cout<<"          ■         ■■■ ■     ■            ■            \n";Sleep(100);
    cout<<"          ■               ■    ■  ■  ▆▆▆▆▆▆▆▆▆                \n";Sleep(100);
    cout<<"                                       ▆               ▆              \n";Sleep(100);
    cout<<" 欢迎来到 [斗破苍穹]    ■      ■        ■           ■                \n";Sleep(100);
    cout<<"                     ▆▆▆▆▆▆▆▆    ■ ▆▆▆▆▆  ■          \n";Sleep(100);
    cout<<"  zty工作室出品         ■      ■                   ■     \n";Sleep(100);
    cout<<"                            ▆              ▆▆▆▆▆                   \n";Sleep(100);
    cout<<"  2.11.3 正式版         ▆■  ■▆          ■                   \n";Sleep(100);
    cout<<"                      ▆  ▆▆▆  ▆        ▆▆▆▆▆                  \n";Sleep(100);
    cout<<" 新增 合成台功能          ■  ■                     ■  \n";Sleep(100);
    cout<<"                          ■■■                 ▆  ■               \n";Sleep(100);
    cout<<" zty出品,必属精品        ■    ■                 ■                \n";Sleep(100);
    cout<<"                           ▆▆▆                                \n";Sleep(100);
    cout<<" 努力通关吧!                                             \n";Sleep(100);
	cout<<"                                                              \n";Sleep(100);
    cout<<" 输入“1 ”下一页                           \n\n";Sleep(100);
    A:char y=_getch();
    if(y=='1') return;
    else goto A;
}
void Start2(){
    system("color 8E");
	cout<<"                                                \n";Sleep(100);
    cout<<"        ■ ■■■        ■■■  ■      ■     \n";Sleep(100);
    cout<<"    ■■      ■       ■   ■  ■       ■     \n";Sleep(100);
    cout<<"            ■      ■     ■   ■       ■     \n";Sleep(100);
    cout<<"           ■   ■■      ■    ■       ■     \n";Sleep(100);
    cout<<"         ■  ■            ■  ■ ■     ■     \n";Sleep(100);
    cout<<"       ■■■               ■■    ■■■      \n";Sleep(100);
    cout<<"                                         ■     \n";Sleep(100);
    cout<<"                                 ■      ■     \n";Sleep(100);
    cout<<" 欢迎来到 [斗破苍穹]               ■    ■     \n";Sleep(100);
    cout<<"                                     ■■       \n";Sleep(100);
    cout<<"  zty工作室出品          ■                     \n";Sleep(100);
    cout<<"                     ■  ■  ■     ■■■■    \n";Sleep(100);
    cout<<"  2.11.3 正式版      ■■■■■     ■    ■    \n";Sleep(100);
    cout<<"                         ■         ■■■■    \n";Sleep(100);
    cout<<" 新增 合成台功能     ■  ■  ■                 \n";Sleep(100);
    cout<<"                     ■■■■■  ■■■  ■■■ \n";Sleep(100);
    cout<<" zty出品,必属精品               ■  ■  ■  ■ \n";Sleep(100);
    cout<<"                                 ■■■  ■■■ \n";Sleep(100);
    cout<<" 努力通关吧!                                   \n";Sleep(100);
	cout<<"                                                \n";Sleep(100);
    cout<<" 输入“1 ”开始游戏                    \n\n";Sleep(100);
    A:char y=_getch();
    if(y=='1') return;
    else goto A;
}
int boss1=0,boss2=0;
struct Player{//玩家结构体,并初始化player
	char name[21];
	int attack;
	int defense;
	int health;
	long int max_health;
	int level;
	int exp;
	int range_exp;
	long int max_exp;
} player= {"勇者",100,80,200,200,1,0,0,100};
struct Enemy {//怪的结构体,并初始化各种怪
	char name[20];
	char wupin[20];
	int attack;
	int defense;
	int health;
	int money;
	long int exp;
	int wupin_sign;
	int wupinpro;
	int double_attack;
	int miss;
}
//怪,拿格伦石人举例
// 怪变量  怪名     掉落的装备 攻   防  血  金币 经验 掉落装备编号 掉落概率 真伤(被防御后的破甲伤害)   不能改
//  gl= {"格伦石人","石铠甲",  30, 150,1000,500, 250,      11,       7,        1,                         0},
    gl= {"格伦石人","石铠甲",30,150,1000,500,250,11,7,1,0},
    zhizhu= {"洞穴蜘蛛","蜘蛛毒剑",140,20,250,400,200,12,5,1,0},
    ymr= {"野蛮人","粗制石剑",20,20,150,100,50,13,5,1,0},
    nz= {"牛仔","战斗马甲",80,20,250,500,250,14,10,1,0},
    strongman= {"森林巨人","传说圣甲",50,50,580,200,100,1,5,1,0},
    witch= {"兽人","重甲",35,55,250,50,50,2,4,1,1},
    xiyi= {"毒蜴","鳞甲",20,25,80,30,35,3,8,2,2},
    huolong= {"喷火龙","巨龙晶石",40*5,50*5,200*5,200*5,100*5,4,4,2,0},
    lion= {"皇家士兵","尚方宝剑",100,30,380,200,100,5,5,1,0},
    horse= {"独眼巨人","碧血战锤",50,22,360,50,50,6,5,1,1},
    bee= {"剑客","西洋剑",27,11,60,30,35,7,5,2,2},
    bossno1= {"凋零女巫","凋零通行证",1400,500,15000,10000,5000,15,10,1,0},
    dljs= {"凋零巨兽","凋零之心",1200,700,20000,10000,500,10,7,1,0},
    pika= {"皮卡超人","\0",300,40*8,1000,2000,1000,0,0,1,0},
    dapika= {"雷霆皮卡","雷霆之刃",350,40*10,1500,3000,2000,8,6,6,0},
    cl= {"熔岩飞龙","\0",450,50*10,2000,3500,2500,0,0,1,0},
    jl= {"裂凯金龙","金龙铠",500,40*20,5000,8000,4500,9,6,6,1},
    gst={"凋零共生体","命令之书",1800,65*10,15000,20000,1000,16,10,1,0},
    dlkl= {"凋零骷髅","\0",3000,30*10,12000,20000,1000,0,0,1,0},
    dlfb= {".+*凋零风暴*+.","\0",9000,1500,49000,0,500000,17,10,1,0},
    guai= {"\0","\0",0,0,0,0,0,0,0,0,0};
struct Place{
int bar,hotel,forest1,forest2,forest3,grass1,grass2,grass3,te1,te2,te3,te4;
} place= {1,2,3,4,5,6,7,8,9,10,11,12};
int max_exp=0;
int htsr;int he=0;
int choose_number=0,s=0,strongman_arm=0,battle=0,money=500,place_sign=10;
int cao=3,jijiubao=3,baiyao=3,superbaiyao=3,miansi=1,boom=3,dubiao=2,yuanzidan=1;
int fang=0,fang1=10,fang1n=0,fang2=20,fang2n=0,fang3=40,fang3n=0,fang4=100,fang4n=0,fang5=400,fang5n=0,fang6=150,fang6n=0,fang7=60,fang7n=0,fang4X=550,fang4Xn=0,mfang=1000,mfangn=0;
int gong=0,gong1=10,gong1n=0,gong2=20,gong2n=0,gong3=45,gong3n=0,gong4=100,gong4n=0,gong5=300,gong5n=0,gong6=150,gong6n=0,gong7=45,gong7n=0,gong4X=500,gong4Xn=0,mgong=1000,mgongn=0;
int jingyancao=0,jingyanbao=0,jingyanshi=0,htmmcs=5;
int diaolingxinhave=0,diaolingxin=0,mingshu=0,zhadan=0;
char gongname[20]="无",fangname[20]="无";
char proof;
void AddWupin(int);
int AttackResult();
void BattleAct();  //      ____
void ChooseWupin();  //   /___/|
void DisplayState();  //  |   |/
void OrdinaryAct();     //▔▔
int SuiJi();
int SuiJi100();
void WhetherLevelUp();
void SlowDisplay(char *);
int main(){
MessageBox(NULL, "欢迎来到斗破苍穹 2.11.3 正式版 !", "斗破苍穹 游戏开始提示", MB_OK);
int i=0,j=0,k=0;
Start();
Bling();
Start2();
Bling();
int kaishi;
char player_name[21];
//Sleep(100);system("color A3");
//Sleep(50);system("color E4");
//Sleep(50);system("color B3");
//Sleep(50);system("color E4");
//Sleep(50);system("color 34");
//Sleep(50);system("color E3");
//Sleep(50);system("color 54");
//Sleep(50);system("color E3");
//Sleep(50);system("color 43");
//Sleep(50);system("color E4");
//Sleep(50);system("color 93");
//Sleep(50);system("color E4");
//Sleep(50);system("color C3");
//Sleep(50);system("color E4");
//Sleep(50);system("color D3");
//Sleep(50);system("color E4");
//Sleep(50);system("color F3");
//Sleep(50);system("color E4");
//Sleep(50);system("color 8E");
//printf("                            _________________________________                    ");system("color 8E");
//printf("                          /________________________________/|                    ");system("color 8E");
//printf("                _.+=*^--{|欢迎来到 [斗破苍穹] 2.11.1 正式版|}--^*=+.              ");system("color 8E");
//printf("                          ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔                      \n");system("color 8E");
//如果想使用外挂,名字请输入:“zty ”。
Sleep(300);
printf("这里是斗破苍穹(苍穹世界)! 契晋赫苟国的漓嘉茜公主被神秘人绑架了!\n\n\n 伟大的勇者啊~拿起你的武器,营救公主!\n\n\n输入你的名字: (20个字符)\n\n\n");system("color 8E");
scanf("%s",player_name);
Sleep(300);
strncpy(player.name,player_name,20);
if(strcmp(player.name,"zty")==0){
	printf("\n\n\n封印多年的官方血统啊!你终于觉醒了!\n\n\nzty,你成为了天选之人,请你救出公主吧!\n\n\n");
	player.attack=99999;
	player.defense=99999;
	player.health=999999;
	player.max_health=999999;
}
getchar();
OrdinaryAct();
return 0;
}
int SuiJi(){
srand((unsigned)time(NULL));
return rand()%10;
}
int SuiJi100(){
srand((unsigned)time(NULL));
return rand()%100;
}
void ChooseWupin(){//选择物品 并使用
printf("物品: 1,止血草%d个 2,急救包%d个 3,云南白药%d个 4,超级云南白药%d个 5,手雷%d个 6,毒标%d个 7,手抛式原子弹%d个 8,经验草%d个 9,经验包%d个 10,经验石%d个 11,巨龙晶石%d个 12,免死金牌%d个 13,凋零之心%d个 14,毁灭炸弹%d个 0,返回\n\n\n",cao,jijiubao,baiyao,superbaiyao,boom,dubiao,yuanzidan,jingyancao,jingyanbao,jingyanshi,strongman_arm,miansi,diaolingxin,zhadan);system("color 8A");
switch(scanf("%d",&choose_number),choose_number){
case 1:
if(cao>0){
printf("使用止血草,HP增加120\n\n\n");system("color 8A");
cao--;
if(player.health+120>player.max_health)player.health=player.max_health;
else player.health+=120;
}
else printf("没有止血草了\n\n\n");system("color 8A");
break;
case 2:
if(jijiubao>0){
printf("使用急救包,HP增加180\n\n\n");system("color 8A");
jijiubao--;
if(player.health+180>player.max_health)player.health=player.max_health;
else player.health+=180;
}
else printf("没有急救包了\n\n\n");system("color 8A");
break;
case 3:
if(baiyao>0){
printf("使用云南白药,HP增加240\nz\n\n");system("color 8A");
baiyao--;
if(player.health+240>player.max_health)player.health=player.max_health;
else player.health+=240;
}
else printf("没有云南白药了\n\n\n");system("color 8A");
break;
case 4:
if(superbaiyao>0){
printf("使用超级云南白药,HP增加400\n\n\n");system("color 8A");
superbaiyao--;
if(player.health+400>player.max_health)player.health=player.max_health;
else player.health+=400;
}
else printf("没有超级云南白药了\n\n\n");system("color 8A");
break;
case 5:
if(battle){//在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(boom>0){
printf("使用手雷,敌人HP减少100\n\n\n");system("color 84");
boom--;
guai.health-=100;
AttackResult();
}
}
else printf("非战斗状态,不能使用手雷!\n\n\n");system("color 84");
break;
case 6:
if(battle){ //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(dubiao>0){
printf("使用毒标,敌人HP减少200\n\n\n");system("color 84");
dubiao--;
guai.health-=200;
AttackResult();
}
}
else printf("非战斗状态,不能使用毒标!\n\n\n");system("color 84");
break;
case 7:
if(battle){ //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(yuanzidan>0){
printf("使用手抛式原子弹,敌人HP减少1500\n\n\n");system("color 84");
yuanzidan--;
guai.health-=1500;
AttackResult();
}
}
else printf("非战斗状态,不能使用手抛式原子弹!\n\n\n");system("color 84");
break;
case 8:
if(jingyancao>0 && player.level<200){
printf("使用经验草,等级增加3级\n\n\n");system("color 8E");
jingyancao--;
player.max_health=player.max_health+60;
player.attack+=9;
player.defense+=6;
player.level+=3;
player.health=player.max_health;
printf("等级:%d\n",player.level);system("color 8E");
}
else    if(jingyancao<1){
printf("没有经验草了\n\n\n");system("color 8E");
}
else printf("等级超过200级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 9:
if(jingyanbao>0 && player.level<200){
if(player.level>197&&player.level<200){
int sheng;
sheng=100-player.level;
player.level+=sheng;
jingyanbao--;
player.max_health=player.max_health+sheng*20;
player.attack+=sheng*3;
player.defense+=sheng*2;
player.health=player.max_health;
printf("使用经验包,等级增加%d级",sheng);system("color 8E");
printf("等级:%d\n",player.level);system("color 8E");
}
else{
printf("使用经验包,等级增加5级\n\n\n");system("color 8E");
jingyanbao--;
player.max_health=player.max_health+100;
player.attack+=15;
player.defense+=10;
player.level+=5;
player.health=player.max_health;
printf("等级:%d\n",player.level);system("color 8E");
}
}
else if(jingyanbao<1){
printf("没有经验包了");system("color 8E");
}
else printf("等级超过200级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 10:
if(jingyanshi>0 && player.level<200){
if(player.level>192&&player.level<200){
int sheng;
sheng=100-player.level;
player.level+=sheng;
player.max_health+=sheng*20;
player.attack+=sheng*3;
player.defense+=sheng*2;
player.health=player.max_health;
printf("使用经验石,等级增加%d级\n",sheng);system("color 8E");
printf("等级:%d\n",player.level);system("color 8E");
}
else{
printf("使用经验石,等级增加10级\n");system("color 8E");
jingyanshi--;
player.max_health=player.max_health+200;
player.attack+=30;
player.defense+=20;
player.level+=10;
player.health=player.max_health;
}
}
else if(jingyanshi<1)
{
printf("没有经验石了\n\n\n");system("color 8E");
}
else printf("等级超过200级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 11:
if(strongman_arm>0 && player.level<500)
{
if(player.level>482&&player.level<500)
{
int sheng;
sheng=500-player.level;
player.level+=sheng;
player.max_health=player.max_health+sheng*20;
player.attack+=sheng*3;
player.defense+=sheng*2;
player.health=player.max_health;
printf("使用巨龙晶石,等级增加%d级",sheng);system("color 8E");
printf("等级:%d\n",player.level);system("color 8E");
}
else
{
printf("使用巨龙晶石,等级增加20级\n\n\n");system("color 8E");
strongman_arm--;
player.max_health=player.max_health+400;
player.attack+=60;
player.defense+=40;
player.health=player.max_health;
player.level+=20;
printf("等级:%d\n",player.level);system("color 8E");
}
}
else if(strongman_arm<1)
{
printf("没有巨龙晶石了。\n\n\n");system("color 8E");
}
else printf("等级超过500级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 12:
if(miansi>0)
{
cout<<"使";Sleep(50);
cout<<"用";Sleep(50);
cout<<"免";Sleep(50);
cout<<"死";Sleep(50);
cout<<"金";Sleep(50);
cout<<"牌";Sleep(50);
cout<<"HP";Sleep(50);
cout<<"满";Sleep(50);
system("color 8b");
miansi--;
if(player.health+999999>player.max_health)player.health=player.max_health;
else player.health+=999999;
}else printf("没有免死金牌了\n\n\n"); system("color 8b");break;
break;
case 13:
if(diaolingxin>0)
{
printf("使用凋零之心\nHP上限+100  攻击+100\n\n\n");system("color 8b");
diaolingxin--;
player.max_health+=100;
player.attack+=100;
}else printf("没有凋零之心了\n\n\n"); system("color 8b");break;
case 14:
if(battle){ //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(zhadan>0){
printf("使用毁灭炸弹,敌人HP减少15000\n\n\n");system("color 84");
zhadan--;
guai.health-=15000;
AttackResult();
}
}
case 0:
break;
default:
printf("ChooseWupin error!\n\n\n");
}
}
int AttackResult(){ //攻击结果:判断是否获胜 是否获得物品 和 是否升级
	if(guai.health<=0){
	battle=0;
	printf("战斗胜利!获得金币%d,经验%d\n\n\n",guai.money,guai.exp);system("color 8C");
	player.exp+=guai.exp;
	player.range_exp+=guai.exp;
	money+=guai.money;
	s=SuiJi();
	if(s<guai.wupinpro){
		cout<<"从";Sleep(100);
		cout<<"敌";Sleep(100);
		cout<<"人";Sleep(100);
		cout<<"尸";Sleep(100);
		cout<<"骸";Sleep(100);
		cout<<"中";Sleep(100);
		cout<<"发";Sleep(100);
		cout<<"现";Sleep(100);
		system("color 8C");
		printf("%s\n\n\n",guai.wupin);
		AddWupin(guai.wupin_sign);
	}
	WhetherLevelUp();
	if(strcmp(guai.name,".+*凋零风暴*+.")==0){
	printf("结束了\n\n");
	system("color 8C");
	}
	return 1; //攻击有结果了返回1,否则返回0,用于判断是否继续做战斗行为
}
else
{
int s=SuiJi();

if((guai.attack+s-player.defense/3)<0)
{
player.health-=1;
printf("%s反击,你的HP减少了 1\n\n",guai.name);system("color 8C");
}
else
{
player.health-=guai.attack+s-player.defense/3;
printf("%s反击,你的HP减少了%d\n\n",guai.name,guai.attack+s-player.defense/3);system("color 8C");
}
if(player.health<0)
{
battle=0;
printf("%s战死!金币掉落%d\n\n\n",player.name,player.level*500);system("color CC");
money-=player.level*500;
player.health=player.max_health/5;
OrdinaryAct();//
return 1;
}
}
return 0;
}
void AddWupin(int wupin_sign)
{

switch(wupin_sign)
{
case 1:
fang4n++;
break;
case 2:
fang3n++;
break;
case 3:
fang2n++;
break;
case 4:
strongman_arm++;
break;
case 5:
gong4n++;
break;
case 6:
gong3n++;
break;
case 7:
gong2n++;
break;
case 8:
gong5n++;
break;
case 9:
fang5n++;
break;
case 10:
diaolingxin++;
break;
case 11:
fang6n++;
break;
case 12:
gong6n++;
break;
case 13:
gong7n++;
break;
case 14:
fang7n++;
break;
case 15:
diaolingxinhave++;
boss1++;
break;
case 16:
mingshu++;
break;
case 17:
boss2++;
break;
default:
printf("AddWupin error\n\n\n");
}

}
void WhetherLevelUp()
{
int i=0,j=0;
int l1=player.range_exp/150;
int l2=player.range_exp/300;
int l3=player.range_exp/600;
if(player.level<=15&&l1>0) //15级以下,经验足够 都满足则升级
{
if(l1==1)
{
printf("%s",player.name);
printf(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=100;
}
else
{
printf("好厉害!连升%d级!",l1);system("color 8E");
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l1,2*l1,20*l1);system("color 8E");
player.exp=(player.exp+guai.exp) || player.exp-((player.exp+guai.exp) || player.exp)%100;
player.attack+=3*l1;
player.defense+=2*l1;
player.max_health+=20*l1;
player.health=player.max_health;
player.level+=l1;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=100*l1;
}
}
else if(player.level<=40&&l2>0)
{
if(l2==1)
{
printf("%s",player.name);
printf(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=300;
}
else
{
printf("好厉害!连升%d级!",l1);system("color 8E");
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l2,2*l2,20*l2);system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3*l2;
player.defense+=2*l2;
player.max_health+=20*l2;
player.health=player.max_health;
player.level+=l2;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=300*l2;
}
}
else if(l3>0)
{
if(l3==1)
{
printf("%s",player.name);
printf(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=600;
}
else
{
printf("好厉害!连升%d级!",l1);
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l3,2*l3,20*l3);system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3*l3;
player.defense+=2*l3;
player.max_health+=20*l3;
player.health=player.max_health;
player.level+=l3;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=600*l3;
}
}
}
void OrdinaryAct() //正常行为菜单(移动,物品,对话,查看状态,装备,退出游戏)
{

while(1)
{
// \(1000);
// system("cls");
puts("=============================================================================");system("color 8E");
printf("要做什么?\n\n 1,移动 2,道具 3,对话 4,查看状态 5,装备 6,关于游戏 7,后台 8,合成台 0,退出游戏\n\n\n");system("color 8E");
puts("=============================================================================");system("color 8E");
switch(scanf("%d",&choose_number),choose_number)
{
case 1: //显示移动菜单
printf("要去哪里?\n\n\n");system("color 8E");
//printf("  ");
cout<<"1,小郑子酒吧  ";Sleep(150);
cout<<"2,诺亚方舟酒店  ";Sleep(150);
cout<<"3,北朝商会  ";Sleep(150);
cout<<"4,红玉拍卖行  ";Sleep(150);
cout<<"5,冒险荒野\n\n\n";Sleep(150);system("color 8E");
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
place_sign=place.bar; //记录目前位置-酒吧
// OrdinaryAct();
break;
case 2:
place_sign=place.hotel; //进入旅店
printf("金币:%d",money);system("color 8E");
printf("要开房吗? 200个金币 \n 1,是 0,否\n\n\n");system("color 8E");
choose_number=1;
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
if(money-200<=0) //判断钱是否够
{
printf("Sorry,你的钱不够~\n\n\n");system("color 8E");
printf("金币:%d",money);system("color 8E");
}
else
{
printf("好好休息\nHP满\n第二天了\n\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
money-=200; //花费200住店费
player.health=player.max_health; //体力满
}
break;
case 0:
printf("下次再来!\n\n\n");system("color 8E");
break;
default:
printf("hotel talk error!\n\n\n");system("color 8E");
}
place_sign=0;
break;
case 3:
int yongju,gong,fang;
printf("请问您要购买什么类型的物品?\n\n\n");system("color 8E");
cout<<"1,攻击装备 ";Sleep(50);
cout<<"2,防御装备 ";Sleep(50);
cout<<"3,一次性伤害武器\n\n\n";Sleep(50);
scanf("%d",&yongju);
switch(yongju)
{
case 1:
printf("请问您要购买什么武器?\n\n\n 1,匕首¥300 2,西洋剑¥500 3,碧血战锤¥1000\n\n\n");system("color 8E");
scanf("%d",&gong);
switch(gong)
{
case 1:
if(money>=300)
{
gong1n++;
money=money-300;
printf ("匕首+1\n");system("color 8E");
printf("匕首:%d个\n",gong1n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
case 2:
if(money>=500)
{
gong2n++;
money=money-500;
printf ("西洋剑+1\n");system("color 8E");
printf("西洋剑:%d个\n",gong2n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
case 3:
if(money>=1000)
{
gong3n++;
money=money-1000;
printf ("碧血战锤+1\n");system("color 8E");
printf("碧血战锤:%d个\n",gong3n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
default:
printf("对不起,我们只会打造以上武器。");system("color 8E");
break;

}
break;
case 2:
int fang;
printf("请问您要购买什么防具?\n\n\n 1,布衣¥300 2,鳞甲¥500 3,重甲¥1000\n\n\n");system("color 8E");
scanf("%d",&fang);
switch(fang)
{
case 1:
if(money>=300)
{
fang1n++;
money=money-300;
printf ("布衣+1\n");system("color 8E");
printf("布衣:%d个\n",fang1n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}

break;
case 2:
if(money>=500)
{
fang2n++;
money=money-500;
printf ("鳞甲+1\n");system("color 8E");
printf("鳞甲:%d个\n",fang2n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d",money);system("color 8E");
}
break;
case 3:
if(money>=1000)
{
fang3n++;
money=money-1000;
printf ("重甲+1\n");system("color 8E");
printf("重甲:%d个\n",fang3n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
default:
printf("对不起,我们只会打造以上防具。");system("color 8E");
break;

}
printf("金币:%d\n",money);system("color 8E");
break;
case 3:
printf("请问您要购买什么一次性伤害武器?\n 1,手雷 2,毒镖 3,手抛式原子弹\n\n\n");system("color 8E");
int yi;
scanf("%d",&yi);
switch(yi)
{
case 1:
if(money>=300 && boom<5)
{
boom++;
money=money-300;
printf("手雷+1\n");system("color 8E");
printf("手雷:%d\n",boom);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d",money);system("color 8E");
}
break;
case 2:
if(money>=600 && dubiao<9999999)
{
dubiao++;
money=money-600;
printf("毒镖+1\n");system("color 8E");
printf("毒镖:%d\n",dubiao);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
break;
case 3:
if(money>=1000 && yuanzidan<5)
{
yuanzidan=yuanzidan+1;
money=money-1000;
printf("手抛式原子弹+1\n");system("color 8E");
printf("手抛式原子弹:%d\n",yuanzidan);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n\n\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}

break;
}
}
break;
case 4:
printf ("欢迎您光临本拍卖行,请问您要卖什么东西?\n\n");system("color 8E");
printf("攻击装备: 1,匕首:%d个 2,西洋剑:%d个 3,粗制石剑:%n 4,碧血战锤:%d个 5,蜘蛛毒剑:%n个 6,尚方宝剑:%d个 7,皮卡大剑:%d个\n",gong1n,gong2n,gong7n,gong3n,gong6n,gong4n,gong5n);system("color 8E");
printf("防御装备: 8,布衣:%d个 9,鳞甲:%d个 10,战斗马甲:%d个 11,重甲:%d个 12,石铠甲:%d个 13,传说圣甲:%d个 14,金龙铠:%d个 15,巨龙晶石:%d个\n 0,返回\n\n\n",fang1n,fang2n,fang7n,fang3n,fang6n,fang4n,fang5n,strongman_arm);system("color 8E");
int pai,shu,i;
scanf("%d",&pai);system("color 8E");
switch(pai)
{
case 1:
printf("请问您要出售几件?");system("color 8E");
scanf("%d",&shu);
if(gong1n>=shu)
{
gong1n=gong1n-shu;
money=money+shu*240;
printf("匕首:%d\n",gong1n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
else
{
printf("装备数不够,无法出售!\n");system("color 8E");
break;
}
break;
case 2:
printf("请问您要出售几件?\n");system("color 8E");
scanf("%d",&shu);
if(gong2n>=shu)
{
gong2n=gong2n-shu;
money=money+shu*400;
printf("西洋剑:%d\n",gong2n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 3:
printf("请问您要出售几件?\n");system("color 8E");
scanf("%d",&shu);
if(gong7n>=shu)
{
gong7n=gong7n-shu;
money=money+shu*800;
printf("粗制石剑:%d\n",gong7n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 4:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(gong3n>=shu)
{
gong3n=gong3n-shu;
money=money+shu*800;
printf("碧血战锤:%d\n",gong3n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 5:
printf("请问您要出售几件?\n");system("color 8E");
scanf("%d",&shu);
if(gong6n>=shu)
{
gong6n=gong6n-shu;
money=money+shu*1000;
printf("蜘蛛毒剑:%d\n",gong6n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 6:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(gong4n>=shu)
{
gong4n=gong4n-shu;
money=money+shu*1500;
printf("尚方宝剑:%d\n",gong4n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 7:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(gong5n>=shu)
{
gong5n=gong5n-shu;
money=money+shu*3000;
printf("皮卡大剑:%d\n",gong5n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 8:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang1n>=shu)
{
fang1n=fang1n-shu;
money=money+shu*240;
printf("布衣:%d\n",fang1n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 9:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang2n>=shu)
{
fang2n=fang2n-shu;
money=money+shu*500;
printf("鳞甲:%d\n",fang2n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 10:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang7n>=shu)
{
fang7n=fang7n-shu;
money=money+shu*1000;
printf("战斗马甲:%d\n",fang7n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 11:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang3n>=shu)
{
fang3n=fang3n-shu;
money=money+shu*800;
printf("重甲:%d\n",fang3n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
break;
case 12:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang6n>=shu)
{
fang6n=fang6n-shu;
money=money+shu*2000;
printf("石凯甲:%d\n",fang6n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 13:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang4n>=shu)
{
fang4n=fang4n-shu;
money=money+shu*1500;
printf("传说圣甲:%d\n",fang4n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}

case 14:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang5n>=shu)
{
fang5n=fang5n-shu;
money=money+shu*3000;
printf("金龙铠:%d\n",fang5n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 15:
printf("请问您要出售几颗?");
scanf("%d",&shu);
if(strongman_arm>=shu)
{
strongman_arm=strongman_arm-shu;
money=money+shu*4000;
printf("巨龙晶石:%d\n",strongman_arm);
printf("金币:%d\n",money);
}
else{
printf("晶石数不够,无法出售!\n");
break;
}
break;
case 0:
break;
break;
default:
printf("没有该装备,无法出售!\n");
break;
}
break;
case 5:
int yewai;
while(1){
puts("=============================================================================");
printf("要去哪冒险呢?");system("color 8c");
printf("\n\n");
cout<<"1,神秘沼泽 危险程度:★\n\n";Sleep(50);system("color 8c");
cout<<"2,星耀草原 危险程度:★★★\n\n";Sleep(50);
cout<<"3,诡异森林 危险程度:★★★\n\n";Sleep(50);
cout<<"4,荒漠矿场 危险程度:★★★★\n\n";Sleep(50);
cout<<"5,炽热炎洞 危险程度:★★★★★\n\n";Sleep(50);
cout<<"6,皮卡营地 危险程度:★★★★★★\n\n";Sleep(50);
cout<<"7,花朵宫殿 危险程度:★★★★★★\n\n";Sleep(50);
cout<<"8,熔岩龙穴 危险程度:★★★★★★★\n\n";Sleep(50);
cout<<"9,凋零宇宙 危险程度:★★★★★★★★\n\n";Sleep(50);
cout<<"0,离开\n";Sleep(150);
system("color 8c");
puts("=============================================================================");
scanf("%d",&yewai);
switch(yewai)
{
case 1:
place_sign=place.forest1;
s=SuiJi();
if(s<7)
{
battle=1;
guai=xiyi;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<9)
{
battle=1;
guai=witch;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else
{
printf("这里安全\n\n\n");
//不用调用OAct函数,会自动执行OAct函数;
}
break;
case 3:
place_sign=place.forest2;
s=SuiJi();
if(s<4)
{
battle=1;
guai=witch;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<7)
{
battle=1;
guai=strongman;
printf("横冲直撞的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else
{
battle=1;
guai=zhizhu;
printf("可怕的%s爬了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 5:
place_sign=place.forest3;
s=SuiJi();
if(s<=3){
battle=1;
guai=strongman;
printf("横冲直撞的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<5){
battle=1;
guai=huolong;
printf("炽热的%s拍打着翅膀扑了过来!\n\n\n",guai.name);
BattleAct();
} else if(s<8){
battle=1;
guai=gl;
printf("全身长满矿石的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}else{
battle=1;
guai=zhizhu;
printf("可怕的%s扑爬了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 2:
place_sign=place.grass1;
s=SuiJi();
if(s<=3){
battle=1;
guai=bee;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<5){
battle=1;
guai=horse;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}else if(s<8){
battle=1;
guai=ymr;
printf("横冲直撞的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}else{
battle=1;
guai=nz;
printf("帅气但令人讨厌的%s向你开枪!\n\n\n",guai.name);
BattleAct();
}
break;
case 4:
place_sign=place.grass2;
s=SuiJi();
if(s<5){
battle=1;
guai=horse;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<7){
battle=1;
guai=lion;
printf("%s举着尚方宝剑拦住了你!\n\n\n",guai.name);
BattleAct();}
else{
battle=1;
guai=gl;
printf("全身长满矿石的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 6:
s=SuiJi();
if(s<7){
battle=1;
guai=pika;
printf("你感到了强烈的电流涌入全身,%s走了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<9){
battle=1;
guai=dapika;
printf("天空一声巨响,三道闪电劈到%s的身上,%s手持雷霆之刃冲了过来!\n\n\n",guai.name,guai.name);
BattleAct();
}
else{
printf("这里安全\n\n\n");
}
break;
case 8:
s=SuiJi();
if(s<=3)
{
battle=1;
guai=cl;
printf("一条飞龙横卧洞内,你定睛一看,是%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<=8 && s>=4)
{
battle=1;
guai=huolong;
printf("炽热的%s拍打着翅膀扑了过来!\n\n\n",guai.name);
BattleAct();
}
else {
battle=1;
guai=jl;
printf("一条金光闪闪的飞龙盘旋空中,,是传说中的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 7:
place_sign=place.grass3;
s=SuiJi();
if(s<5){
battle=1;
guai=lion;
printf("%s举着尚方宝剑拦住了你!\n\n\n",guai.name);
BattleAct();
}
else if(s<7||boss1==0){
battle=1;
if(strongman_arm>=1){
printf("神秘老人:\n\n\n 哈哈,年轻人,做的不错,不过...嘿嘿,你上当啦!巨龙晶石我要了,公主你也别想带走!\n\n\n");
guai=bossno1;
printf("瞬间,你被一团黑雾笼罩,你被拉入了凋零幻境,%s向你发起攻击!\n\n\n",guai.name);
BattleAct();
}
else printf("神秘老人:\n\n\n 年轻人,你好啊.如果你有巨龙晶石,我可以告诉你公主的下落哦~\n\n\n");
}
else{
battle=1;
guai=nz;
printf("帅气但令人讨厌的%s向你开枪!\n\n\n",guai.name);
BattleAct();
}
break;
case 9:
s=SuiJi();
if(diaolingxinhave!=0){
if(s==1&&boss2==0){
battle=1;
guai=dlfb;
printf("一个巨大的黑暗物体,周围环绕着大量的由破碎方块组成的黑色颗粒云环的%s向你发起攻击!\n\n\n",guai.name);
BattleAct();
}else if(s>=2 && s<=4)
{
battle=1;
guai=dlkl;
printf("手持凋零剑的黑色凶恶%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s>=5&&s<=7){
battle=1;
guai=gst;
printf("一个巨大的触手向你打来,你挡了下来%s扑了过来!\n\n\n",guai.name);
BattleAct();
} else{
battle=1;
guai=dljs;
printf("一只巨大的猛兽%s冲了过来!\n\n\n",guai.name);
BattleAct();
}
}if(diaolingxinhave==0){
cout<<"你没有击败过凋零女巫,请去花朵宫殿击败凋零女巫。" <<endl;
}
break;
if(yewai!=0)
{
printf("该区域为未知区域,无法进入。\n\n\n");system("color 8E");
break;
}
}
if(yewai==0)
{
break;
printf("已离开荒野。");system("color 8E");
}
}

}
break;

case 2:
ChooseWupin();
break; //显示道具,并可以使用.
case 3: //对话选项
if(place_sign==place.bar)
{
printf("要和谁说话?\n\n\n1,红发女郎 2,赏金猎人 3,酒吧老板 4,药品商人\n\n\n"); system("color 8E");//显示对话人物
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
printf("红发女郎:\n\n\n 吧台边那个Hunter好帅啊!(~脸红~)\n\n\n听说他经常外出打猎,外面的路他应该很熟悉的!\n\n\n");system("color 8E");
break;
case 2:
if(fang1n<1&&gong1n<1)
{
printf("赏金猎人:\n\n\n 你要救公主啊!好胆量!\n\n\n 不过外面的世界很险恶,而且越深越危险,这是匕首和布衣,对你会有些帮助的,拿去吧!\n\n\n");system("color 8E");
printf("%s心想:哇,这位大叔人真好啊!\n\n\n)",player.name);
gong1n++;
fang1n++;
}
else printf("赏金猎人:\n\n\n 加油吧,年轻人!\n\n\n 不要被外面世界所吓倒!\n\n\n");system("color 8E");
break;
case 3:
printf("要喝点什么?\n\n\n 1,二锅头25金币 HP+20 2,伏特加80金币 HP+50 3,人头马面150金币 HP+100 0,返回\n\n\n");system("color 8E");
choose_number=1;
while(choose_number)
{
switch(scanf("%d",&choose_number),choose_number){
case 1:
if(money<25){
printf("钱不够!");system("color 8E");
}
else
{
if(player.health+20<=player.max_health){
printf("HP+20.");system("color 8E");
money-=25;
player.health+=20;
}
else{
printf("HP满了");system("color 8E");
player.health=player.max_health;
}
}
break;
case 2:
if(money<80){
printf("钱不够!");system("color 8E");
}
else{
if(player.health+50<=player.max_health){
printf("HP+50.");system("color 8E");
money-=80;
player.health+=50;
}
else{
printf("HP满了");system("color 8E");
player.health=player.max_health;
}
}
break;
case 3:
if(money<150){
printf("钱不够!");system("color 8E");
}
else{
if(player.health+100<=player.max_health){
printf("HP+100.");system("color 8E");
money-=150;
player.health+=100;
}
else{
printf("HP满了");system("color 8E");
player.health=player.max_health;
}
}
break;
case 0:
printf("下次再来!\n");system("color 8E");
break;
default:
printf("输入错误\n\n\n");system("color 8E");
break;
}
break;
}
break;
case 4:
printf("你要干什么?\n\n\n 1,买东西 2,聊天 \n\n\n");system("color 8E");
int mai;
scanf("%d",&mai);
if(mai==1){
printf("买点什么呢?\n1,止血草¥100 HP+60\n2,急救包¥150 HP+80 \n3,云南白药¥250 HP+120\n4,超级云南白药¥400 HP+200 \n5,经验草¥150 经验+300 \n6,经验包¥600 经验+600\n7,经验石¥500 经验+1000 \n0,拜拜\n");system("color 8E");
int dongxi;
scanf("%d",&dongxi);
switch(dongxi){
case 1:
if(money>=100&&cao<6){
cao++;
money=money-100;
printf ("止血草+1\n");system("color 8E");
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 2:
if(money>=150&&jijiubao<10){
jijiubao++;
money=money-150;
printf ("急救包+1\n");system("color 8E");
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 3:
if(money>=250&&baiyao<10){
baiyao++;
money=money-250;
printf ("云南白药+1\n");system("color 8E");
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 4:
if(money>=400&&superbaiyao<10){
superbaiyao++;
money=money-400;
printf ("超级云南白药+1\n");system("color 8E");

}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 5:
if(money>=150){
jingyancao++;
money=money-150;
printf ("经验草+1\n");system("color 8E");
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 6:
if(money>=300){
jingyanbao++;
money=money-300;
printf ("经验包+1\n");system("color 8E");
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 7:
if(money>=500){
jingyanshi++;
money=money-500;
printf ("经验石+1\n");system("color 8E");
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
}
case 0:
printf("金币:%d\n",money);system("color 8E");
printf("再见,欢迎下次再来!\n");system("color 8E");
break;

}
if(mai==2){
printf("药品商人:去去去,老子没时间陪你聊。\n");system("color 8E");
}
}
}
else if(place_sign==place.hotel)
printf("“老板娘!我...”\n\n\n“我忙着呢,没空理你~”\n\n\n");
else printf("这里好像没人可以聊天\n\n\n");system("color 8E");
break;
case 4:
DisplayState();
break; //显示状态
case 5: //装备
printf("攻击装备: 1,匕首:%d个 2,西洋剑:%d个 3,粗制石剑:%d个 4,碧血战锤:%d个 5,蜘蛛毒剑:%d个 6,尚方宝剑:%d个 7,雷霆之刃:%d个 8,X尚方宝剑X:%d个 9,命令之剑:%d个\n\n\n",gong1n,gong2n,gong7n,gong3n,gong6n,gong4n,gong5n,gong4Xn,mgongn);system("color 8E");
printf("防御装备: 10,布衣:%d个 11,鳞甲:%d个 12,战斗马甲:%d个 13,重甲:%d个 14,石铠甲:%d个 15,传说圣甲:%d个 16,金龙铠:%d个 17,X传说圣甲X:%d个 18,命令之甲:%d个\t\t0,返回\n\n\n",fang1n,fang2n,fang7n,fang3n,fang6n,fang4n,fang5n,fang4Xn,mfangn);system("color 8E");
printf("选择要装备的武器或防具:\n\n\n");system("color 8E");
switch(scanf("%d",&choose_number),choose_number){
case 1:
if(gong1n>=1){
printf("拿起了匕首\n\n\n");system("color 8E");
gong=gong1;
strcpy(gongname,"匕首");system("color 8E");
}
else printf("你没有匕首可以装备\n\n\n");system("color 8E");
break;
case 2:
if(gong2n>=1){
printf("拿起了西洋剑\n\n\n");system("color 8E");
gong=gong2;
strcpy(gongname,"西洋剑");system("color 8E");
}
else printf("你没有西洋剑可以装备\n\n\n");system("color 8E");
break;
case 3:
if(gong7n>=1){
printf("拿起了粗制石剑\n\n\n");
gong=gong7;
strcpy(gongname,"粗制石剑");
}
else printf("你没有粗制石剑可以装备\n\n\n");
break;
case 4:
if(gong3n>=1){
printf("拿起了碧血战锤\n\n\n");
gong=gong3;
strcpy(gongname,"碧血战锤");
}
else printf("你没有碧血战锤可以装备\n\n\n");
break;
case 5:
if(gong6n>=1){
printf("拿起了蜘蛛毒剑\n\n\n");
gong=gong6;
strcpy(gongname,"蜘蛛毒剑");
}
else printf("你没有蜘蛛毒剑可以装备\n\n\n");
break;
case 6:
if(gong4n>=1){
printf("拿起了尚方宝剑\n\n\n");
gong=gong4;
strcpy(gongname,"尚方宝剑");
}
else printf("你没有尚方宝剑可以装备\n\n\n");
break;
case 7:
if(gong5n>=1){
printf("拿起了雷霆之刃\n\n\n");
gong=gong5;
strcpy(gongname,"雷霆之刃");
}
else printf("你没有雷霆之刃可以装备\n\n\n");
break;
case 8:
if(gong4Xn>=1){
printf("拿起了X尚方宝剑X\n\n\n");
gong=gong4X;
strcpy(gongname,"X尚方宝剑X");
}
else printf("你没有X尚方宝剑X可以装备\n\n\n");
break;
case 9:
if(mgongn>=1){
printf("拿起了命令之剑\n\n\n");
gong=mgong;
strcpy(gongname,"命令之剑");
}
else printf("你没有命令之剑可以装备\n\n\n");
break;
case 10:
if(fang1n>=1){
printf("穿上了布衣\n\n\n");
fang=fang1;
strcpy(fangname,"布衣");
}
else printf("你没有布衣可以装备\n\n\n");
break;
case 11:
if(fang2n>=1){
printf("穿上了鳞甲\n\n\n");
fang=fang2;
strcpy(fangname,"鳞甲");
}
else printf("你没有鳞甲可以装备\n\n\n");
break;
case 12:
if(fang7n>=1){
printf("穿上了战斗马甲\n\n\n");
fang=fang7;
strcpy(fangname,"战斗马甲");
}
else printf("你没有战斗马甲可以装备\n\n\n");
break;
case 13:
if(fang3n>=1){
printf("穿上了重甲\n\n\n");
fang=fang3;
strcpy(fangname,"重甲");
}
else printf("你没有重甲可以装备\n\n\n");
break;
case 14:
if(fang6n>=1){
printf("穿上了石铠甲\n\n\n");
fang=fang6;
strcpy(fangname,"石凯甲");
}
else printf("你没有石凯甲可以装备\n\n\n");
break;
case 15:
if(fang4n>=1){
printf("穿上了传说圣甲\n\n\n");
fang=fang4;
strcpy(fangname,"传说圣甲");
}
else printf("你没有传说圣甲可以装备\n\n\n");
break;
case 16:
if(fang5n>=1){
printf("穿上了金龙铠\n\n\n");
fang=fang5;
strcpy(fangname,"金龙铠");
}
else printf("你没有金龙铠可以装备\n\n\n");
break;
case 17:
if(fang4Xn>=1){
printf("穿上了X传说圣甲X\n\n\n");
fang=fang4X;
strcpy(fangname,"X传说圣甲X");
}
else printf("你没有X传说圣甲X可以装备\n\n\n");
break;
case 18:
if(mfangn>=1){
printf("穿上了命令之甲\n\n\n");
fang=mfang;
strcpy(fangname,"命令之甲");
}
else printf("你没有命令之甲可以装备\n\n\n");
break;
case 0:
printf("未更换装备\n\n\n");
break;
default:
printf("change error!");
}
break;
case 6:
printf(" 您好,欢迎您玩斗破苍穹(苍穹世界)。");
cout<<"为了给您更好的游戏体验,";Sleep(250);
cout<<"zty时不时会优化本游戏,";Sleep(250);
cout<<"优化后会尽快发布在网上。";Sleep(250);
cout<<"关于外挂方面,";Sleep(250);
cout<<"开启外挂的方式是设定勇者姓名时,";Sleep(250);
cout<<"输入";Sleep(250);
cout<<"“";Sleep(250);
cout<<"z";Sleep(250);
cout<<"t";Sleep(250);
cout<<"y";Sleep(250);
cout<<"”";Sleep(250);
cout<<"(不包括双引号)。";Sleep(250);
cout<<"我们在";Sleep(250);
cout<<"2.";Sleep(250);
cout<<"11.";Sleep(250);
cout<<"2";Sleep(250);
cout<<"版本内容";Sleep(250);
cout<<"的基础上进行添加,";Sleep(250);
cout<<"主要内容为新的开始界面";Sleep(250);
cout<<"已更新完毕,。";Sleep(250);
cout<<"希望大家喜欢。";Sleep(250);
cout<<"在这里要感谢";Sleep(250);
cout<<"吴";Sleep(250);
cout<<"昊";Sleep(250);
cout<<"同学,";Sleep(250);
cout<<"他给了我许多宝贵的建议,";Sleep(250);
cout<<"谢";Sleep(250);
cout<<"谢";Sleep(250);
cout<<"。\n";Sleep(250);
system("color 8E");
break;
case 0:
printf("确定退出游戏?(Y/N)\n\n\n");system("color 8E");
getchar();
proof=getchar();
if(proof=='y'||proof=='Y'){
printf("按回车退出");system("color 8E");
getchar();
return;
}
else if(proof=='n'||proof=='N')printf("继续游戏!\n\n\n");
else printf("继续!\n\n\n");
break;
case 8:
printf("合成台:                   0:退出\n\n");system("color 8E");
cout<<"命令之书:"<<mingshu<<"\n1: 命令之剑   需要材料:1*X尚方宝剑X + 3*命令之书\n\n";Sleep(150);
cout<<"2:X尚方宝剑X  需要材料:1* 尚方宝剑  + 1*命令之书\n\n";Sleep(150);
cout<<"3: 命令之甲   需要材料:1*X传说圣甲X + 3*命令之书\n\n";Sleep(150);
cout<<"4:X传说圣甲X  需要材料:1* 传说圣甲  + 1*命令之书\n\n";Sleep(150);
cout<<"5: 毁灭炸弹   需要材料:5*手抛原子弹 + 3*命令之书\n\n";Sleep(150);
cin>>he;
if(he==1)
if(he==1&&gong4Xn>=1&&mingshu>=3){
	gong4Xn--;
	mingshu-=3;
	mgongn++;
	cout<<"恭喜获得命令之剑\n";
}else cout<<"材料不足\n\n";
if(he==2)
if(he==2&&gong4n>=1&&mingshu>=1){
	gong4n--;
	mingshu--;
	gong4Xn++;
	cout<<"恭喜获得X尚方宝剑X\n";
}else cout<<"材料不足\n\n";
if(he==3)
if(he==3&&fang4Xn>=1&&mingshu>=3){
	fang4Xn--;
	mingshu-=3;
	mfangn++;
	cout<<"恭喜获得命令之甲\n";
}else cout<<"材料不足\n\n";
if(he==4)
if(he==4&&fang4n>=1&&mingshu>=1){
	fang4n--;
	mingshu--;
	fang4Xn++;
	cout<<"恭喜获得X传说圣甲X\n";
}else cout<<"材料不足\n\n";
if(he==5)
if(he==5&&yuanzidan>=5&&mingshu>=3){
	yuanzidan-=5;
	mingshu-=3;
	zhadan++;
	cout<<"恭喜获得毁灭炸弹\n";
}else cout<<"材料不足\n\n";
if(he==0) break;
break;
case 7:
	int mi;
	cout<<"=====*【后台 开挂 测试Bug】*==================\n请输入密码=============*【想要后台密码问郑桐羽,只能输数字,否则死循环】*=========\n密码:";
	cin>>mi;
	if(mi%20120913==0&&mi!=0){
		cout<<"输入正确!\n欢迎进入后台!\n后台服务:\n=======================\n1.金币加999999\n2.血量上限加9999\n3.现有血量加9999\n4.攻击加9999\n5.防御加9999\n0.退出\n=======================\n输入>>> "<<endl;
		cin>>htsr;
		if(htsr==1){
			cout<<"成功获得效果 *金币加9999\n";
			money+=999999;
		}
		if(htsr==2){
			cout<<"成功获得效果 *血量加9999\n";
			player.health+=9999;
		}
		if(htsr==3){
			cout<<"成功获得效果 *血量上限加9999\n";
			player.max_health+=9999;
		}
		if(htsr==4){
			cout<<"成功获得效果 *攻击加9999\n";
			player.attack+=9999;
		}
		if(htsr==5){
			cout<<"成功获得效果 *防御加9999\n";
			player.defense+=9999;
		}
		if(htsr==0){
			cout<<"成功退出\n";
			continue;
		}
    }
	else{
	    cout<<"输入错误!请检查!"<<endl;
	    continue;
    }

    break;
}
}
}
void DisplayState()
{
printf("%s 攻击力:%d+%d=%d 防御力:%d+%d=%d HP:%d/%d \n\n\n",player.name,player.attack,gong,player.attack+gong,player.defense,fang,player.defense+fang,player.health,player.max_health);
printf("武器: %s 防具: %s \n\n\n",gongname,fangname);
printf("等级:%d 经验:%d/%d 还需要%d经验升级 金币:%d \n\n\n",player.level,player.exp,player.max_exp,player.max_exp-player.exp,money);
}
void BattleAct()
{
while(1)
{
puts("=============================================================================");
printf("要怎么办?\n\n\n 1,攻击 2,使用物品 3,查看状态 4,逃跑\n\n\n");
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
s=SuiJi();
printf("%s攻击! %sHP减少%d\n\n\n",player.name,guai.name,player.attack+s+gong-guai.defense/3);
guai.health-=player.attack+s+gong-guai.defense/3;
if(AttackResult())return; //如果攻击有结果(敌人或玩家战死)退出函数
else continue;
case 2:
ChooseWupin();
break; //选择物品,可以使用,战斗中允许使用攻击性物品
case 3:
DisplayState();
break; //显示状态
case 4:
s=SuiJi();
if(s<4) //40%的概率可以逃跑
{
printf("%s逃跑了~\n\n\n",player.name);
battle=0;
return;
}
else printf("%s逃跑失败!\n\n\n",player.name);
break;
default:
printf("输入错误,重新输入!\n\n\n");
}
}
}
void printf(char *p)
{
while(1)
{
if(*p!=0)
printf("%c",*p++);
else
break;
Sleep(100);
}
}

2.11.4

#include<stdio.h>
#include<iostream>
#include<ctime>
#include<bits/stdc++.h>
#include<conio.h>
#include<time.h>
#include<cmath>
#include<windows.h> //SLEEP函数
using namespace std;
void SetColorAndBackground(int ForgC, int BackC) {
	WORD wColor = ((BackC & 0x0F) << 4) + (ForgC & 0x0F);
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), wColor);
}
void Bling()
{
    for(int i=0;i<=5;i++)
    {
        system("color 1A");Sleep(20);
        system("color 2B");Sleep(20);
        system("color 3C");Sleep(20);
        system("color 4D");Sleep(20);
        system("color 5D");Sleep(20);
        system("color 6E");Sleep(20);
        system("color 7F");Sleep(20);
    }
}
void Start(){
    system("color 8E");
	cout<<"          ■                       ■                                  \n";Sleep(100);
    cout<<"       ■ ■        ■■■■    ■■■■■                        \n";Sleep(100);
    cout<<"    ■ ■ ■           ■      ■  ■  ■                  \n";Sleep(100);
    cout<<"     ■   ■         ■        ■  ■                         \n";Sleep(100);
    cout<<"    ■■■■■■   ■■■■   ■ ■■■                    \n";Sleep(100);
    cout<<"          ■     ■  ■  ■  ■  ■  ■                         \n";Sleep(100);
    cout<<"          ■         ■■■ ■     ■            ■            \n";Sleep(100);
    cout<<"          ■               ■    ■  ■  ▆▆▆▆▆▆▆▆▆                \n";Sleep(100);
    cout<<"                                       ▆               ▆              \n";Sleep(100);
    cout<<" 欢迎来到 [斗破苍穹]    ■      ■        ■           ■                \n";Sleep(100);
    cout<<"                     ▆▆▆▆▆▆▆▆    ■ ▆▆▆▆▆  ■          \n";Sleep(100);
    cout<<"  zty工作室出品         ■      ■                  ■     \n";Sleep(100);
    cout<<"                            ▆              ▆▆▆▆▆                   \n";Sleep(100);
    cout<<"  2.11.4 正式版         ▆■  ■▆          ■                   \n";Sleep(100);
    cout<<"                      ▆  ▆▆▆  ▆        ▆▆▆▆▆                  \n";Sleep(100);
    cout<<" 新增 合成台功能          ■  ■                     ■  \n";Sleep(100);
    cout<<"                          ■■■                 ▆  ■               \n";Sleep(100);
    cout<<" zty出品,必属精品        ■    ■                 ■                \n";Sleep(100);
    cout<<"                           ▆▆▆                                \n";Sleep(100);
    cout<<" 努力通关吧!                                             \n";Sleep(100);
	cout<<"                                                              \n";Sleep(100);
    cout<<" 输入“1 ”下一页                           \n\n";Sleep(100);
    A:char y=_getch();
    if(y=='1') return;
    else goto A;
}
void Start2(){
    system("color 8E");
	cout<<"                                                \n";Sleep(100);
    cout<<"        ■ ■■■        ■■■  ■      ■     \n";Sleep(100);
    cout<<"    ■■      ■       ■   ■  ■       ■     \n";Sleep(100);
    cout<<"            ■      ■     ■   ■       ■     \n";Sleep(100);
    cout<<"           ■   ■■      ■    ■       ■     \n";Sleep(100);
    cout<<"         ■  ■            ■  ■ ■     ■     \n";Sleep(100);
    cout<<"       ■■■               ■■    ■■■      \n";Sleep(100);
    cout<<"                                         ■     \n";Sleep(100);
    cout<<"                                 ■      ■     \n";Sleep(100);
    cout<<" 欢迎来到 [斗破苍穹]               ■    ■     \n";Sleep(100);
    cout<<"                                     ■■       \n";Sleep(100);
    cout<<"  zty工作室出品          ■                     \n";Sleep(100);
    cout<<"                     ■  ■  ■     ■■■■    \n";Sleep(100);
    cout<<"  2.11.4 正式版      ■■■■■     ■    ■    \n";Sleep(100);
    cout<<"                         ■         ■■■■    \n";Sleep(100);
    cout<<" 新增 合成台功能     ■  ■  ■                 \n";Sleep(100);
    cout<<"                     ■■■■■  ■■■  ■■■ \n";Sleep(100);
    cout<<" zty出品,必属精品               ■  ■  ■  ■ \n";Sleep(100);
    cout<<"                                 ■■■  ■■■ \n";Sleep(100);
    cout<<" 努力通关吧!                                   \n";Sleep(100);
	cout<<"                                                \n";Sleep(100);
    cout<<" 输入“1 ”开始游戏                    \n\n";Sleep(100);
    A:char y=_getch();
    if(y=='1') return;
    else goto A;
}
int boss1=0,boss2=0;
struct Player{//玩家结构体,并初始化player
	char name[21];
	int attack;
	int defense;
	int health;
	long int max_health;
	int level;
	int exp;
	int range_exp;
	long int max_exp;
} player= {"勇者",100,80,200,200,1,0,0,100};
struct Enemy {//怪的结构体,并初始化各种怪
	char name[20];
	char wupin[20];
	int attack;
	int defense;
	int health;
	int money;
	long int exp;
	int wupin_sign;
	int wupinpro;
	int double_attack;
	int miss;
}
//怪,拿格伦石人举例
// 怪变量  怪名     掉落的装备 攻   防  血  金币 经验 掉落装备编号 掉落概率 真伤(被防御后的破甲伤害)   不能改
//  gl= {"格伦石人","石铠甲",  30, 150,1000,500, 250,      11,       7,        1,                         0},
    gl= {"格伦石人","石铠甲",30,150,1000,500,250,11,7,1,0},
    zhizhu= {"洞穴蜘蛛","蜘蛛毒剑",140,20,250,400,200,12,5,1,0},
    ymr= {"野蛮人","粗制石剑",20,20,150,100,50,13,5,1,0},
    nz= {"牛仔","战斗马甲",80,20,250,500,250,14,10,1,0},
    strongman= {"森林巨人","传说圣甲",50,50,580,200,100,1,5,1,0},
    witch= {"兽人","重甲",35,55,250,50,50,2,4,1,1},
    xiyi= {"毒蜴","鳞片",20,25,80,30,35,3,8,2,2},
    huolong= {"喷火龙","巨龙晶石",40*5,50*5,200*5,200*5,100*5,4,4,2,0},
    lion= {"皇家士兵","尚方宝剑",100,30,380,200,100,5,5,1,0},
    horse= {"独眼巨人","碧血战锤",50,22,360,50,50,6,5,1,1},
    bee= {"剑客","西洋剑",27,11,60,30,35,7,5,2,2},
    bossno1= {"凋零女巫","凋零通行证",1400,500,15000,10000,5000,15,10,1,0},
    dljs= {"凋零巨兽","凋零之心",1200,700,20000,10000,500,10,7,1,0},
    pika= {"皮卡超人","\0",300,40*8,1000,2000,1000,0,0,1,0},
    dapika= {"雷霆皮卡","雷霆之刃",350,40*10,1500,3000,2000,8,6,6,0},
    cl= {"熔岩飞龙","\0",450,50*10,2000,3500,2500,0,0,1,0},
    jl= {"裂凯金龙","龙鳞",500,40*20,5000,8000,4500,9,6,6,1},
    gst={"凋零共生体","命令之书",1800,65*10,15000,20000,1000,16,10,1,0},
    dlkl= {"凋零骷髅","凋零之骨",3000,30*10,12000,20000,1000,0,0,1,0},
    dlfb= {".+*凋零风暴*+.","\0",9000,1500,49000,0,500000,17,10,1,0},
    guai= {"\0","\0",0,0,0,0,0,0,0,0,0};
struct Place{
int bar,hotel,forest1,forest2,forest3,grass1,grass2,grass3,te1,te2,te3,te4;
} place= {1,2,3,4,5,6,7,8,9,10,11,12};
int max_exp=0;
int htsr;int he=0;
int choose_number=0,s=0,strongman_arm=0,battle=0,money=500,place_sign=10;
int cao=3,jijiubao=3,baiyao=3,superbaiyao=3,miansi=1,boom=3,dubiao=2,yuanzidan=1;
int fang=0,fang1=10,fang1n=0,fang2=120,fang2n=0,fang3=40,fang3n=0,fang4=100,fang4n=0,fang5=600,fang5n=0,fang6=150,fang6n=0,fang7=60,fang7n=0,fang4X=550,fang4Xn=0,mfang=1000,mfangn=0;
int gong=0,gong1=10,gong1n=0,gong2=20,gong2n=0,gong3=45,gong3n=0,gong4=100,gong4n=0,gong5=300,gong5n=0,gong6=150,gong6n=0,gong7=45,gong7n=0,gong4X=500,gong4Xn=0,mgong=1000,mgongn=0;
int jingyancao=0,jingyanbao=0,jingyanshi=0,htmmcs=5;
int diaolingxinhave=0,diaolingxin=0,mingshu=0,zhadan=0;
char gongname[20]="无",fangname[20]="无";
char proof;
int lp=0,ll=0;
void AddWupin(int);
int AttackResult();
void BattleAct();  //      ____
void ChooseWupin();  //   /___/|
void DisplayState();  //  |   |/
void OrdinaryAct();     //▔▔
int SuiJi();
int SuiJi100();
void WhetherLevelUp();
void SlowDisplay(char *);
int main(){
MessageBox(NULL, "欢迎来到斗破苍穹 2.11.4 正式版 !", "斗破苍穹 游戏开始提示", MB_OK);
int i=0,j=0,k=0;
Start();
Bling();
Start2();
Bling();
int kaishi;
char player_name[21];
//Sleep(100);system("color A3");
//Sleep(50);system("color E4");
//Sleep(50);system("color B3");
//Sleep(50);system("color E4");
//Sleep(50);system("color 34");
//Sleep(50);system("color E3");
//Sleep(50);system("color 54");
//Sleep(50);system("color E3");
//Sleep(50);system("color 43");
//Sleep(50);system("color E4");
//Sleep(50);system("color 93");
//Sleep(50);system("color E4");
//Sleep(50);system("color C3");
//Sleep(50);system("color E4");
//Sleep(50);system("color D3");
//Sleep(50);system("color E4");
//Sleep(50);system("color F3");
//Sleep(50);system("color E4");
//Sleep(50);system("color 8E");
//printf("                            _________________________________                    ");system("color 8E");
//printf("                          /________________________________/|                    ");system("color 8E");
//printf("                _.+=*^--{|欢迎来到 [斗破苍穹] 2.11.1 正式版|}--^*=+.              ");system("color 8E");
//printf("                          ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔                      \n");system("color 8E");
//如果想使用外挂,名字请输入:“zty ”。
Sleep(300);
printf("这里是斗破苍穹(苍穹世界)! 契晋赫苟国的漓嘉茜公主被神秘人绑架了!\n\n\n 伟大的勇者啊~拿起你的武器,营救公主!\n\n\n输入你的名字: (20个字符)\n\n\n");system("color 8E");
scanf("%s",player_name);
Sleep(300);
strncpy(player.name,player_name,20);
if(strcmp(player.name,"zty")==0){
	printf("\n\n\n封印多年的官方血统啊!你终于觉醒了!\n\n\nzty,你成为了天选之人,请你救出公主吧!\n\n\n");
	player.attack=99999;
	player.defense=99999;
	player.health=999999;
	player.max_health=999999;
}
getchar();
OrdinaryAct();
return 0;
}
int SuiJi(){
srand((unsigned)time(NULL));
return rand()%10;
}
int SuiJi100(){
srand((unsigned)time(NULL));
return rand()%100;
}
void ChooseWupin(){//选择物品 并使用
printf("物品: 1,止血草%d个 2,急救包%d个 3,云南白药%d个 4,超级云南白药%d个 5,手雷%d个 6,毒标%d个 7,手抛式原子弹%d个 8,经验草%d个 9,经验包%d个 10,经验石%d个 11,巨龙晶石%d个 12,免死金牌%d个 13,凋零之心%d个 14,毁灭炸弹%d个 0,返回\n\n\n",cao,jijiubao,baiyao,superbaiyao,boom,dubiao,yuanzidan,jingyancao,jingyanbao,jingyanshi,strongman_arm,miansi,diaolingxin,zhadan);system("color 8A");
switch(scanf("%d",&choose_number),choose_number){
case 1:
if(cao>0){
printf("使用止血草,HP增加120\n\n\n");system("color 8A");
cao--;
if(player.health+120>player.max_health)player.health=player.max_health;
else player.health+=120;
}
else printf("没有止血草了\n\n\n");system("color 8A");
break;
case 2:
if(jijiubao>0){
printf("使用急救包,HP增加180\n\n\n");system("color 8A");
jijiubao--;
if(player.health+180>player.max_health)player.health=player.max_health;
else player.health+=180;
}
else printf("没有急救包了\n\n\n");system("color 8A");
break;
case 3:
if(baiyao>0){
printf("使用云南白药,HP增加240\nz\n\n");system("color 8A");
baiyao--;
if(player.health+240>player.max_health)player.health=player.max_health;
else player.health+=240;
}
else printf("没有云南白药了\n\n\n");system("color 8A");
break;
case 4:
if(superbaiyao>0){
printf("使用超级云南白药,HP增加400\n\n\n");system("color 8A");
superbaiyao--;
if(player.health+400>player.max_health)player.health=player.max_health;
else player.health+=400;
}
else printf("没有超级云南白药了\n\n\n");system("color 8A");
break;
case 5:
if(battle){//在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(boom>0){
printf("使用手雷,敌人HP减少100\n\n\n");system("color 84");
boom--;
guai.health-=100;
AttackResult();
}
}
else printf("非战斗状态,不能使用手雷!\n\n\n");system("color 84");
break;
case 6:
if(battle){ //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(dubiao>0){
printf("使用毒标,敌人HP减少200\n\n\n");system("color 84");
dubiao--;
guai.health-=200;
AttackResult();
}
}
else printf("非战斗状态,不能使用毒标!\n\n\n");system("color 84");
break;
case 7:
if(battle){ //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(yuanzidan>0){
printf("使用手抛式原子弹,敌人HP减少1500\n\n\n");system("color 84");
yuanzidan--;
guai.health-=1500;
AttackResult();
}
}
else printf("非战斗状态,不能使用手抛式原子弹!\n\n\n");system("color 84");
break;
case 8:
if(jingyancao>0 && player.level<200){
printf("使用经验草,等级增加3级\n\n\n");system("color 8E");
jingyancao--;
player.max_health=player.max_health+60;
player.attack+=9;
player.defense+=6;
player.level+=3;
player.health=player.max_health;
printf("等级:%d\n",player.level);system("color 8E");
}
else    if(jingyancao<1){
printf("没有经验草了\n\n\n");system("color 8E");
}
else printf("等级超过200级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 9:
if(jingyanbao>0 && player.level<200){
if(player.level>197&&player.level<200){
int sheng;
sheng=100-player.level;
player.level+=sheng;
jingyanbao--;
player.max_health=player.max_health+sheng*20;
player.attack+=sheng*3;
player.defense+=sheng*2;
player.health=player.max_health;
printf("使用经验包,等级增加%d级",sheng);system("color 8E");
printf("等级:%d\n",player.level);system("color 8E");
}
else{
printf("使用经验包,等级增加5级\n\n\n");system("color 8E");
jingyanbao--;
player.max_health=player.max_health+100;
player.attack+=15;
player.defense+=10;
player.level+=5;
player.health=player.max_health;
printf("等级:%d\n",player.level);system("color 8E");
}
}
else if(jingyanbao<1){
printf("没有经验包了");system("color 8E");
}
else printf("等级超过200级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 10:
if(jingyanshi>0 && player.level<200){
if(player.level>192&&player.level<200){
int sheng;
sheng=100-player.level;
player.level+=sheng;
player.max_health+=sheng*20;
player.attack+=sheng*3;
player.defense+=sheng*2;
player.health=player.max_health;
printf("使用经验石,等级增加%d级\n",sheng);system("color 8E");
printf("等级:%d\n",player.level);system("color 8E");
}
else{
printf("使用经验石,等级增加10级\n");system("color 8E");
jingyanshi--;
player.max_health=player.max_health+200;
player.attack+=30;
player.defense+=20;
player.level+=10;
player.health=player.max_health;
}
}
else if(jingyanshi<1)
{
printf("没有经验石了\n\n\n");system("color 8E");
}
else printf("等级超过200级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 11:
if(strongman_arm>0 && player.level<500)
{
if(player.level>482&&player.level<500)
{
int sheng;
sheng=500-player.level;
player.level+=sheng;
player.max_health=player.max_health+sheng*20;
player.attack+=sheng*3;
player.defense+=sheng*2;
player.health=player.max_health;
printf("使用巨龙晶石,等级增加%d级",sheng);system("color 8E");
printf("等级:%d\n",player.level);system("color 8E");
}
else
{
printf("使用巨龙晶石,等级增加20级\n\n\n");system("color 8E");
strongman_arm--;
player.max_health=player.max_health+400;
player.attack+=60;
player.defense+=40;
player.health=player.max_health;
player.level+=20;
printf("等级:%d\n",player.level);system("color 8E");
}
}
else if(strongman_arm<1)
{
printf("没有巨龙晶石了。\n\n\n");system("color 8E");
}
else printf("等级超过500级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 12:
if(miansi>0)
{
cout<<"使";Sleep(50);
cout<<"用";Sleep(50);
cout<<"免";Sleep(50);
cout<<"死";Sleep(50);
cout<<"金";Sleep(50);
cout<<"牌";Sleep(50);
cout<<"HP";Sleep(50);
cout<<"满";Sleep(50);
system("color 8b");
miansi--;
if(player.health+999999>player.max_health)player.health=player.max_health;
else player.health+=999999;
}else printf("没有免死金牌了\n\n\n"); system("color 8b");break;
break;
case 13:
if(diaolingxin>0)
{
printf("使用凋零之心\nHP上限+100  攻击+100\n\n\n");system("color 8b");
diaolingxin--;
player.max_health+=100;
player.attack+=100;
}else printf("没有凋零之心了\n\n\n"); system("color 8b");break;
case 14:
if(battle){ //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(zhadan>0){
printf("使用毁灭炸弹,敌人HP减少15000\n\n\n");system("color 84");
zhadan--;
guai.health-=15000;
AttackResult();
}
}
case 0:
break;
default:
printf("ChooseWupin error!\n\n\n");
}
}
int AttackResult(){ //攻击结果:判断是否获胜 是否获得物品 和 是否升级
	if(guai.health<=0){
	battle=0;
	printf("战斗胜利!获得金币%d,经验%d\n\n\n",guai.money,guai.exp);system("color 8C");
	player.exp+=guai.exp;
	player.range_exp+=guai.exp;
	money+=guai.money;
	s=SuiJi();
	if(s<guai.wupinpro){
		cout<<"从";Sleep(100);
		cout<<"敌";Sleep(100);
		cout<<"人";Sleep(100);
		cout<<"尸";Sleep(100);
		cout<<"骸";Sleep(100);
		cout<<"中";Sleep(100);
		cout<<"发";Sleep(100);
		cout<<"现";Sleep(100);
		system("color 8C");
		printf("%s\n\n\n",guai.wupin);
		AddWupin(guai.wupin_sign);
	}
	WhetherLevelUp();
	if(strcmp(guai.name,".+*凋零风暴*+.")==0){
	printf("结束了\n\n");
	system("color 8C");
	}
	return 1; //攻击有结果了返回1,否则返回0,用于判断是否继续做战斗行为
}
else
{
int s=SuiJi();

if((guai.attack+s-player.defense/3)<0)
{
player.health-=1;
printf("%s反击,你的HP减少了 1\n\n",guai.name);system("color 8C");
}
else
{
player.health-=guai.attack+s-player.defense/3;
printf("%s反击,你的HP减少了%d\n\n",guai.name,guai.attack+s-player.defense/3);system("color 8C");
}
if(player.health<0)
{
battle=0;
printf("%s战死!金币掉落%d\n\n\n",player.name,player.level*500);system("color CC");
money-=player.level*500;
player.health=player.max_health/5;
OrdinaryAct();//
return 1;
}
}
return 0;
}
void AddWupin(int wupin_sign)
{

switch(wupin_sign)
{
case 1:
fang4n++;
break;
case 2:
fang3n++;
break;
case 3:
lp++;
break;
case 4:
strongman_arm++;
break;
case 5:
gong4n++;
break;
case 6:
gong3n++;
break;
case 7:
gong2n++;
break;
case 8:
gong5n++;
break;
case 9:
ll++;
break;
case 10:
diaolingxin++;
break;
case 11:
fang6n++;
break;
case 12:
gong6n++;
break;
case 13:
gong7n++;
break;
case 14:
fang7n++;
break;
case 15:
diaolingxinhave++;
boss1++;
break;
case 16:
mingshu++;
break;
case 17:
boss2++;
break;
default:
printf("AddWupin error\n\n\n");
}

}
void WhetherLevelUp()
{
int i=0,j=0;
int l1=player.range_exp/150;
int l2=player.range_exp/300;
int l3=player.range_exp/600;
if(player.level<=15&&l1>0) //15级以下,经验足够 都满足则升级
{
if(l1==1)
{
printf("%s",player.name);
printf(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=100;
}
else
{
printf("好厉害!连升%d级!",l1);system("color 8E");
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l1,2*l1,20*l1);system("color 8E");
player.exp=(player.exp+guai.exp) || player.exp-((player.exp+guai.exp) || player.exp)%100;
player.attack+=3*l1;
player.defense+=2*l1;
player.max_health+=20*l1;
player.health=player.max_health;
player.level+=l1;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=100*l1;
}
}
else if(player.level<=40&&l2>0)
{
if(l2==1)
{
printf("%s",player.name);
printf(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=300;
}
else
{
printf("好厉害!连升%d级!",l1);system("color 8E");
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l2,2*l2,20*l2);system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3*l2;
player.defense+=2*l2;
player.max_health+=20*l2;
player.health=player.max_health;
player.level+=l2;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=300*l2;
}
}
else if(l3>0)
{
if(l3==1)
{
printf("%s",player.name);
printf(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=600;
}
else
{
printf("好厉害!连升%d级!",l1);
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l3,2*l3,20*l3);system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3*l3;
player.defense+=2*l3;
player.max_health+=20*l3;
player.health=player.max_health;
player.level+=l3;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=600*l3;
}
}
}
void OrdinaryAct() //正常行为菜单(移动,物品,对话,查看状态,装备,退出游戏)
{

while(1)
{
// \(1000);
// system("cls");
puts("=============================================================================");system("color 8E");
printf("要做什么?\n\n 1,移动 2,道具 3,对话 4,查看状态 5,装备 6,关于游戏 7,后台 8,合成台 0,退出游戏\n\n\n");system("color 8E");
puts("=============================================================================");system("color 8E");
switch(scanf("%d",&choose_number),choose_number)
{
case 1: //显示移动菜单
printf("要去哪里?\n\n\n");system("color 8E");
//printf("  ");
cout<<"1,小郑子酒吧  ";Sleep(150);
cout<<"2,诺亚方舟酒店  ";Sleep(150);
cout<<"3,北朝商会  ";Sleep(150);
cout<<"4,红玉拍卖行  ";Sleep(150);
cout<<"5,冒险荒野\n\n\n";Sleep(150);system("color 8E");
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
place_sign=place.bar; //记录目前位置-酒吧
// OrdinaryAct();
break;
case 2:
place_sign=place.hotel; //进入旅店
printf("金币:%d",money);system("color 8E");
printf("要开房吗? 200个金币 \n 1,是 0,否\n\n\n");system("color 8E");
choose_number=1;
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
if(money-200<=0) //判断钱是否够
{
printf("Sorry,你的钱不够~\n\n\n");system("color 8E");
printf("金币:%d",money);system("color 8E");
}
else
{
printf("好好休息\nHP满\n第二天了\n\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
money-=200; //花费200住店费
player.health=player.max_health; //体力满
}
break;
case 0:
printf("下次再来!\n\n\n");system("color 8E");
break;
default:
printf("hotel talk error!\n\n\n");system("color 8E");
}
place_sign=0;
break;
case 3:
int yongju,gong,fang;
printf("请问您要购买什么类型的物品?\n\n\n");system("color 8E");
cout<<"1,攻击装备 ";Sleep(50);
cout<<"2,防御装备 ";Sleep(50);
cout<<"3,一次性伤害武器\n\n\n";Sleep(50);
scanf("%d",&yongju);
switch(yongju)
{
case 1:
printf("请问您要购买什么武器?\n\n\n 1,匕首¥300 2,西洋剑¥500 3,碧血战锤¥1000\n\n\n");system("color 8E");
scanf("%d",&gong);
switch(gong)
{
case 1:
if(money>=300)
{
gong1n++;
money=money-300;
printf ("匕首+1\n");system("color 8E");
printf("匕首:%d个\n",gong1n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
case 2:
if(money>=500)
{
gong2n++;
money=money-500;
printf ("西洋剑+1\n");system("color 8E");
printf("西洋剑:%d个\n",gong2n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
case 3:
if(money>=1000)
{
gong3n++;
money=money-1000;
printf ("碧血战锤+1\n");system("color 8E");
printf("碧血战锤:%d个\n",gong3n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
default:
printf("对不起,我们只会打造以上武器。");system("color 8E");
break;

}
break;
case 2:
int fang;
printf("请问您要购买什么防具?\n\n\n 1,布衣¥300 2,鳞甲¥500 3,重甲¥1000\n\n\n");system("color 8E");
scanf("%d",&fang);
switch(fang)
{
case 1:
if(money>=300)
{
fang1n++;
money=money-300;
printf ("布衣+1\n");system("color 8E");
printf("布衣:%d个\n",fang1n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}

break;
case 2:
if(money>=500)
{
fang2n++;
money=money-500;
printf ("鳞甲+1\n");system("color 8E");
printf("鳞甲:%d个\n",fang2n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d",money);system("color 8E");
}
break;
case 3:
if(money>=1000)
{
fang3n++;
money=money-1000;
printf ("重甲+1\n");system("color 8E");
printf("重甲:%d个\n",fang3n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
default:
printf("对不起,我们只会打造以上防具。");system("color 8E");
break;

}
printf("金币:%d\n",money);system("color 8E");
break;
case 3:
printf("请问您要购买什么一次性伤害武器?\n 1,手雷 2,毒镖 3,手抛式原子弹\n\n\n");system("color 8E");
int yi;
scanf("%d",&yi);
switch(yi)
{
case 1:
if(money>=300 && boom<5)
{
boom++;
money=money-300;
printf("手雷+1\n");system("color 8E");
printf("手雷:%d\n",boom);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d",money);system("color 8E");
}
break;
case 2:
if(money>=600 && dubiao<9999999)
{
dubiao++;
money=money-600;
printf("毒镖+1\n");system("color 8E");
printf("毒镖:%d\n",dubiao);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
break;
case 3:
if(money>=1000 && yuanzidan<5)
{
yuanzidan=yuanzidan+1;
money=money-1000;
printf("手抛式原子弹+1\n");system("color 8E");
printf("手抛式原子弹:%d\n",yuanzidan);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n\n\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}

break;
}
}
break;
case 4:
printf ("欢迎您光临本拍卖行,请问您要卖什么东西?\n\n");system("color 8E");
printf("攻击装备: 1,匕首:%d个 2,西洋剑:%d个 3,粗制石剑:%n 4,碧血战锤:%d个 5,蜘蛛毒剑:%n个 6,尚方宝剑:%d个 7,皮卡大剑:%d个\n",gong1n,gong2n,gong7n,gong3n,gong6n,gong4n,gong5n);system("color 8E");
printf("防御装备: 8,布衣:%d个 9,鳞甲:%d个 10,战斗马甲:%d个 11,重甲:%d个 12,石铠甲:%d个 13,传说圣甲:%d个 14,金龙铠:%d个 15,巨龙晶石:%d个\n 0,返回\n\n\n",fang1n,fang2n,fang7n,fang3n,fang6n,fang4n,fang5n,strongman_arm);system("color 8E");
int pai,shu,i;
scanf("%d",&pai);system("color 8E");
switch(pai)
{
case 1:
printf("请问您要出售几件?");system("color 8E");
scanf("%d",&shu);
if(gong1n>=shu)
{
gong1n=gong1n-shu;
money=money+shu*240;
printf("匕首:%d\n",gong1n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
else
{
printf("装备数不够,无法出售!\n");system("color 8E");
break;
}
break;
case 2:
printf("请问您要出售几件?\n");system("color 8E");
scanf("%d",&shu);
if(gong2n>=shu)
{
gong2n=gong2n-shu;
money=money+shu*400;
printf("西洋剑:%d\n",gong2n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 3:
printf("请问您要出售几件?\n");system("color 8E");
scanf("%d",&shu);
if(gong7n>=shu)
{
gong7n=gong7n-shu;
money=money+shu*800;
printf("粗制石剑:%d\n",gong7n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 4:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(gong3n>=shu)
{
gong3n=gong3n-shu;
money=money+shu*800;
printf("碧血战锤:%d\n",gong3n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 5:
printf("请问您要出售几件?\n");system("color 8E");
scanf("%d",&shu);
if(gong6n>=shu)
{
gong6n=gong6n-shu;
money=money+shu*1000;
printf("蜘蛛毒剑:%d\n",gong6n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 6:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(gong4n>=shu)
{
gong4n=gong4n-shu;
money=money+shu*1500;
printf("尚方宝剑:%d\n",gong4n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 7:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(gong5n>=shu)
{
gong5n=gong5n-shu;
money=money+shu*3000;
printf("皮卡大剑:%d\n",gong5n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 8:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang1n>=shu)
{
fang1n=fang1n-shu;
money=money+shu*240;
printf("布衣:%d\n",fang1n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 9:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang2n>=shu)
{
fang2n=fang2n-shu;
money=money+shu*500;
printf("鳞甲:%d\n",fang2n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 10:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang7n>=shu)
{
fang7n=fang7n-shu;
money=money+shu*1000;
printf("战斗马甲:%d\n",fang7n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 11:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang3n>=shu)
{
fang3n=fang3n-shu;
money=money+shu*800;
printf("重甲:%d\n",fang3n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
break;
case 12:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang6n>=shu)
{
fang6n=fang6n-shu;
money=money+shu*2000;
printf("石凯甲:%d\n",fang6n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 13:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang4n>=shu)
{
fang4n=fang4n-shu;
money=money+shu*1500;
printf("传说圣甲:%d\n",fang4n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}

case 14:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang5n>=shu)
{
fang5n=fang5n-shu;
money=money+shu*3000;
printf("金龙铠:%d\n",fang5n);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 15:
printf("请问您要出售几颗?");
scanf("%d",&shu);
if(strongman_arm>=shu)
{
strongman_arm=strongman_arm-shu;
money=money+shu*4000;
printf("巨龙晶石:%d\n",strongman_arm);
printf("金币:%d\n",money);
}
else{
printf("晶石数不够,无法出售!\n");
break;
}
break;
case 0:
break;
break;
default:
printf("没有该装备,无法出售!\n");
break;
}
break;
case 5:
int yewai;
while(1){
puts("=============================================================================");
printf("要去哪冒险呢?");system("color 8c");
printf("\n\n");
cout<<"1,神秘沼泽 危险程度:★\n\n";Sleep(50);system("color 8c");
cout<<"2,星耀草原 危险程度:★★★\n\n";Sleep(50);
cout<<"3,诡异森林 危险程度:★★★\n\n";Sleep(50);
cout<<"4,荒漠矿场 危险程度:★★★★\n\n";Sleep(50);
cout<<"5,炽热炎洞 危险程度:★★★★★\n\n";Sleep(50);
cout<<"6,皮卡营地 危险程度:★★★★★★\n\n";Sleep(50);
cout<<"7,花朵宫殿 危险程度:★★★★★★\n\n";Sleep(50);
cout<<"8,熔岩龙穴 危险程度:★★★★★★★\n\n";Sleep(50);
cout<<"9,凋零宇宙 危险程度:★★★★★★★★\n\n";Sleep(50);
cout<<"0,离开\n";Sleep(150);
system("color 8c");
puts("=============================================================================");
scanf("%d",&yewai);
switch(yewai)
{
case 1:
place_sign=place.forest1;
s=SuiJi();
if(s<7)
{
battle=1;
guai=xiyi;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<9)
{
battle=1;
guai=witch;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else
{
printf("这里安全\n\n\n");
//不用调用OAct函数,会自动执行OAct函数;
}
break;
case 3:
place_sign=place.forest2;
s=SuiJi();
if(s<4)
{
battle=1;
guai=witch;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<7)
{
battle=1;
guai=strongman;
printf("横冲直撞的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else
{
battle=1;
guai=zhizhu;
printf("可怕的%s爬了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 5:
place_sign=place.forest3;
s=SuiJi();
if(s<=3){
battle=1;
guai=strongman;
printf("横冲直撞的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<5){
battle=1;
guai=huolong;
printf("炽热的%s拍打着翅膀扑了过来!\n\n\n",guai.name);
BattleAct();
} else if(s<8){
battle=1;
guai=gl;
printf("全身长满矿石的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}else{
battle=1;
guai=zhizhu;
printf("可怕的%s扑爬了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 2:
place_sign=place.grass1;
s=SuiJi();
if(s<=3){
battle=1;
guai=bee;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<5){
battle=1;
guai=horse;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}else if(s<8){
battle=1;
guai=ymr;
printf("横冲直撞的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}else{
battle=1;
guai=nz;
printf("帅气但令人讨厌的%s向你开枪!\n\n\n",guai.name);
BattleAct();
}
break;
case 4:
place_sign=place.grass2;
s=SuiJi();
if(s<5){
battle=1;
guai=horse;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<7){
battle=1;
guai=lion;
printf("%s举着尚方宝剑拦住了你!\n\n\n",guai.name);
BattleAct();}
else{
battle=1;
guai=gl;
printf("全身长满矿石的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 6:
s=SuiJi();
if(s<7){
battle=1;
guai=pika;
printf("你感到了强烈的电流涌入全身,%s走了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<9){
battle=1;
guai=dapika;
printf("天空一声巨响,三道闪电劈到%s的身上,%s手持雷霆之刃冲了过来!\n\n\n",guai.name,guai.name);
BattleAct();
}
else{
printf("这里安全\n\n\n");
}
break;
case 8:
s=SuiJi();
if(s<=3)
{
battle=1;
guai=cl;
printf("一条飞龙横卧洞内,你定睛一看,是%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<=8 && s>=4)
{
battle=1;
guai=huolong;
printf("炽热的%s拍打着翅膀扑了过来!\n\n\n",guai.name);
BattleAct();
}
else {
battle=1;
guai=jl;
printf("一条金光闪闪的飞龙盘旋空中,,是传说中的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 7:
place_sign=place.grass3;
s=SuiJi();
if(s<5){
battle=1;
guai=lion;
printf("%s举着尚方宝剑拦住了你!\n\n\n",guai.name);
BattleAct();
}
else if(s<7||boss1==0){
battle=1;
if(strongman_arm>=1){
printf("神秘老人:\n\n\n 哈哈,年轻人,做的不错,不过...嘿嘿,你上当啦!巨龙晶石我要了,公主你也别想带走!\n\n\n");
guai=bossno1;
printf("瞬间,你被一团黑雾笼罩,你被拉入了凋零幻境,%s向你发起攻击!\n\n\n",guai.name);
BattleAct();
}
else printf("神秘老人:\n\n\n 年轻人,你好啊.如果你有巨龙晶石,我可以告诉你公主的下落哦~\n\n\n");
}
else{
battle=1;
guai=nz;
printf("帅气但令人讨厌的%s向你开枪!\n\n\n",guai.name);
BattleAct();
}
break;
case 9:
s=SuiJi();
if(diaolingxinhave!=0){
if(s==1&&boss2==0){
battle=1;
guai=dlfb;
printf("一个巨大的黑暗物体,周围环绕着大量的由破碎方块组成的黑色颗粒云环的%s向你发起攻击!\n\n\n",guai.name);
BattleAct();
}else if(s>=2 && s<=4)
{
battle=1;
guai=dlkl;
printf("手持凋零剑的黑色凶恶%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s>=5&&s<=7){
battle=1;
guai=gst;
printf("一个巨大的触手向你打来,你挡了下来%s扑了过来!\n\n\n",guai.name);
BattleAct();
} else{
battle=1;
guai=dljs;
printf("一只巨大的猛兽%s冲了过来!\n\n\n",guai.name);
BattleAct();
}
}if(diaolingxinhave==0){
cout<<"你没有击败过凋零女巫,请去花朵宫殿击败凋零女巫。" <<endl;
}
break;
if(yewai!=0)
{
printf("该区域为未知区域,无法进入。\n\n\n");system("color 8E");
break;
}
}
if(yewai==0)
{
break;
printf("已离开荒野。");system("color 8E");
}
}

}
break;

case 2:
ChooseWupin();
break; //显示道具,并可以使用.
case 3: //对话选项
if(place_sign==place.bar)
{
printf("要和谁说话?\n\n\n1,红发女郎 2,赏金猎人 3,酒吧老板 4,药品商人\n\n\n"); system("color 8E");//显示对话人物
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
printf("红发女郎:\n\n\n 吧台边那个Hunter好帅啊!(~脸红~)\n\n\n听说他经常外出打猎,外面的路他应该很熟悉的!\n\n\n");system("color 8E");
break;
case 2:
if(fang1n<1&&gong1n<1)
{
printf("赏金猎人:\n\n\n 你要救公主啊!好胆量!\n\n\n 不过外面的世界很险恶,而且越深越危险,这是匕首和布衣,对你会有些帮助的,拿去吧!\n\n\n");system("color 8E");
printf("%s心想:哇,这位大叔人真好啊!\n\n\n)",player.name);
gong1n++;
fang1n++;
}
else printf("赏金猎人:\n\n\n 加油吧,年轻人!\n\n\n 不要被外面世界所吓倒!\n\n\n");system("color 8E");
break;
case 3:
printf("要喝点什么?\n\n\n 1,二锅头25金币 HP+20 2,伏特加80金币 HP+50 3,人头马面150金币 HP+100 0,返回\n\n\n");system("color 8E");
choose_number=1;
while(choose_number)
{
switch(scanf("%d",&choose_number),choose_number){
case 1:
if(money<25){
printf("钱不够!");system("color 8E");
}
else
{
if(player.health+20<=player.max_health){
printf("HP+20.");system("color 8E");
money-=25;
player.health+=20;
}
else{
printf("HP满了");system("color 8E");
player.health=player.max_health;
}
}
break;
case 2:
if(money<80){
printf("钱不够!");system("color 8E");
}
else{
if(player.health+50<=player.max_health){
printf("HP+50.");system("color 8E");
money-=80;
player.health+=50;
}
else{
printf("HP满了");system("color 8E");
player.health=player.max_health;
}
}
break;
case 3:
if(money<150){
printf("钱不够!");system("color 8E");
}
else{
if(player.health+100<=player.max_health){
printf("HP+100.");system("color 8E");
money-=150;
player.health+=100;
}
else{
printf("HP满了");system("color 8E");
player.health=player.max_health;
}
}
break;
case 0:
printf("下次再来!\n");system("color 8E");
break;
default:
printf("输入错误\n\n\n");system("color 8E");
break;
}
break;
}
break;
case 4:
printf("你要干什么?\n\n\n 1,买东西 2,聊天 \n\n\n");system("color 8E");
int mai;
scanf("%d",&mai);
if(mai==1){
printf("买点什么呢?\n1,止血草¥100 HP+60\n2,急救包¥150 HP+80 \n3,云南白药¥250 HP+120\n4,超级云南白药¥400 HP+200 \n5,经验草¥150 经验+300 \n6,经验包¥600 经验+600\n7,经验石¥500 经验+1000 \n0,拜拜\n");system("color 8E");
int dongxi;
scanf("%d",&dongxi);
switch(dongxi){
case 1:
if(money>=100&&cao<6){
cao++;
money=money-100;
printf ("止血草+1\n");system("color 8E");
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 2:
if(money>=150&&jijiubao<10){
jijiubao++;
money=money-150;
printf ("急救包+1\n");system("color 8E");
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 3:
if(money>=250&&baiyao<10){
baiyao++;
money=money-250;
printf ("云南白药+1\n");system("color 8E");
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 4:
if(money>=400&&superbaiyao<10){
superbaiyao++;
money=money-400;
printf ("超级云南白药+1\n");system("color 8E");

}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 5:
if(money>=150){
jingyancao++;
money=money-150;
printf ("经验草+1\n");system("color 8E");
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 6:
if(money>=300){
jingyanbao++;
money=money-300;
printf ("经验包+1\n");system("color 8E");
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 7:
if(money>=500){
jingyanshi++;
money=money-500;
printf ("经验石+1\n");system("color 8E");
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
}
case 0:
printf("金币:%d\n",money);system("color 8E");
printf("再见,欢迎下次再来!\n");system("color 8E");
break;

}
if(mai==2){
printf("药品商人:去去去,老子没时间陪你聊。\n");system("color 8E");
}
}
}
else if(place_sign==place.hotel)
printf("“老板娘!我...”\n\n\n“我忙着呢,没空理你~”\n\n\n");
else printf("这里好像没人可以聊天\n\n\n");system("color 8E");
break;
case 4:
DisplayState();
break; //显示状态
case 5: //装备
printf("攻击装备: 1,匕首:%d个 2,西洋剑:%d个 3,粗制石剑:%d个 4,碧血战锤:%d个 5,蜘蛛毒剑:%d个 6,尚方宝剑:%d个 7,雷霆之刃:%d个 8,X尚方宝剑X:%d个 9,命令之剑:%d个\n\n\n",gong1n,gong2n,gong7n,gong3n,gong6n,gong4n,gong5n,gong4Xn,mgongn);system("color 8E");
printf("防御装备: 10,布衣:%d个 11,鳞甲:%d个 12,战斗马甲:%d个 13,重甲:%d个 14,石铠甲:%d个 15,传说圣甲:%d个 16,金龙铠:%d个 17,X传说圣甲X:%d个 18,命令之甲:%d个\t\t0,返回\n\n\n",fang1n,fang2n,fang7n,fang3n,fang6n,fang4n,fang5n,fang4Xn,mfangn);system("color 8E");
printf("选择要装备的武器或防具:\n\n\n");system("color 8E");
switch(scanf("%d",&choose_number),choose_number){
case 1:
if(gong1n>=1){
printf("拿起了匕首\n\n\n");system("color 8E");
gong=gong1;
strcpy(gongname,"匕首");system("color 8E");
}
else printf("你没有匕首可以装备\n\n\n");system("color 8E");
break;
case 2:
if(gong2n>=1){
printf("拿起了西洋剑\n\n\n");system("color 8E");
gong=gong2;
strcpy(gongname,"西洋剑");system("color 8E");
}
else printf("你没有西洋剑可以装备\n\n\n");system("color 8E");
break;
case 3:
if(gong7n>=1){
printf("拿起了粗制石剑\n\n\n");
gong=gong7;
strcpy(gongname,"粗制石剑");
}
else printf("你没有粗制石剑可以装备\n\n\n");
break;
case 4:
if(gong3n>=1){
printf("拿起了碧血战锤\n\n\n");
gong=gong3;
strcpy(gongname,"碧血战锤");
}
else printf("你没有碧血战锤可以装备\n\n\n");
break;
case 5:
if(gong6n>=1){
printf("拿起了蜘蛛毒剑\n\n\n");
gong=gong6;
strcpy(gongname,"蜘蛛毒剑");
}
else printf("你没有蜘蛛毒剑可以装备\n\n\n");
break;
case 6:
if(gong4n>=1){
printf("拿起了尚方宝剑\n\n\n");
gong=gong4;
strcpy(gongname,"尚方宝剑");
}
else printf("你没有尚方宝剑可以装备\n\n\n");
break;
case 7:
if(gong5n>=1){
printf("拿起了雷霆之刃\n\n\n");
gong=gong5;
strcpy(gongname,"雷霆之刃");
}
else printf("你没有雷霆之刃可以装备\n\n\n");
break;
case 8:
if(gong4Xn>=1){
printf("拿起了X尚方宝剑X\n\n\n");
gong=gong4X;
strcpy(gongname,"X尚方宝剑X");
}
else printf("你没有X尚方宝剑X可以装备\n\n\n");
break;
case 9:
if(mgongn>=1){
printf("拿起了命令之剑\n\n\n");
gong=mgong;
strcpy(gongname,"命令之剑");
}
else printf("你没有命令之剑可以装备\n\n\n");
break;
case 10:
if(fang1n>=1){
printf("穿上了布衣\n\n\n");
fang=fang1;
strcpy(fangname,"布衣");
}
else printf("你没有布衣可以装备\n\n\n");
break;
case 11:
if(fang2n>=1){
printf("穿上了鳞甲\n\n\n");
fang=fang2;
strcpy(fangname,"鳞甲");
}
else printf("你没有鳞甲可以装备\n\n\n");
break;
case 12:
if(fang7n>=1){
printf("穿上了战斗马甲\n\n\n");
fang=fang7;
strcpy(fangname,"战斗马甲");
}
else printf("你没有战斗马甲可以装备\n\n\n");
break;
case 13:
if(fang3n>=1){
printf("穿上了重甲\n\n\n");
fang=fang3;
strcpy(fangname,"重甲");
}
else printf("你没有重甲可以装备\n\n\n");
break;
case 14:
if(fang6n>=1){
printf("穿上了石铠甲\n\n\n");
fang=fang6;
strcpy(fangname,"石凯甲");
}
else printf("你没有石凯甲可以装备\n\n\n");
break;
case 15:
if(fang4n>=1){
printf("穿上了传说圣甲\n\n\n");
fang=fang4;
strcpy(fangname,"传说圣甲");
}
else printf("你没有传说圣甲可以装备\n\n\n");
break;
case 16:
if(fang5n>=1){
printf("穿上了金龙铠\n\n\n");
fang=fang5;
strcpy(fangname,"金龙铠");
}
else printf("你没有金龙铠可以装备\n\n\n");
break;
case 17:
if(fang4Xn>=1){
printf("穿上了X传说圣甲X\n\n\n");
fang=fang4X;
strcpy(fangname,"X传说圣甲X");
}
else printf("你没有X传说圣甲X可以装备\n\n\n");
break;
case 18:
if(mfangn>=1){
printf("穿上了命令之甲\n\n\n");
fang=mfang;
strcpy(fangname,"命令之甲");
}
else printf("你没有命令之甲可以装备\n\n\n");
break;
case 0:
printf("未更换装备\n\n\n");
break;
default:
printf("change error!");
}
break;
case 6:
printf(" 您好,欢迎您玩斗破苍穹(苍穹世界)。");
cout<<"为了给您更好的游戏体验,";Sleep(250);
cout<<"zty时不时会优化本游戏,";Sleep(250);
cout<<"优化后会尽快发布在网上。";Sleep(250);
cout<<"关于外挂方面,";Sleep(250);
cout<<"开启外挂的方式是设定勇者姓名时,";Sleep(250);
cout<<"输入";Sleep(250);
cout<<"“";Sleep(250);
cout<<"z";Sleep(250);
cout<<"t";Sleep(250);
cout<<"y";Sleep(250);
cout<<"”";Sleep(250);
cout<<"(不包括双引号)。";Sleep(250);
cout<<"我们在";Sleep(250);
cout<<"2.";Sleep(250);
cout<<"11.";Sleep(250);
cout<<"3";Sleep(250);
cout<<"版本内容";Sleep(250);
cout<<"的基础上进行添加,";Sleep(250);
cout<<"主要内容为修改鳞甲和金龙铠的数值及获取方式";Sleep(250);
cout<<"已更新完毕,。";Sleep(250);
cout<<"希望大家喜欢。";Sleep(250);
cout<<"在这里要感谢";Sleep(250);
cout<<"吴";Sleep(250);
cout<<"昊";Sleep(250);
cout<<"同学,";Sleep(250);
cout<<"他给了我许多宝贵的建议,";Sleep(250);
cout<<"谢";Sleep(250);
cout<<"谢";Sleep(250);
cout<<"。\n";Sleep(250);
system("color 8E");
break;
case 0:
printf("确定退出游戏?(Y/N)\n\n\n");system("color 8E");
getchar();
proof=getchar();
if(proof=='y'||proof=='Y'){
printf("按回车退出");system("color 8E");
getchar();
return;
}
else if(proof=='n'||proof=='N')printf("继续游戏!\n\n\n");
else printf("继续!\n\n\n");
break;
case 8:
printf("合成台:                   0:退出\n\n");system("color 8E");
cout<<"命令之书:"<<mingshu<<"\n1: 命令之剑   需要材料:1*X尚方宝剑X + 3*命令之书\n\n";Sleep(150);
cout<<"2:X尚方宝剑X  需要材料:1* 尚方宝剑  + 1*命令之书\n\n";Sleep(150);
cout<<"3: 命令之甲   需要材料:1*X传说圣甲X + 3*命令之书\n\n";Sleep(150);
cout<<"4:X传说圣甲X  需要材料:1* 传说圣甲  + 1*命令之书\n\n";Sleep(150);
cout<<"5: 毁灭炸弹   需要材料:5*手抛原子弹 + 3*命令之书\n\n";Sleep(150);
cout<<"6:  金龙铠    需要材料:5*龙鳞  \n\n";Sleep(150);
cout<<"7:   鳞甲     需要材料:5*鳞片  \n\n";Sleep(150);
cin>>he;
if(he==1)
if(he==1&&gong4Xn>=1&&mingshu>=3){
	gong4Xn--;
	mingshu-=3;
	mgongn++;
	cout<<"恭喜获得命令之剑\n";
}else cout<<"材料不足\n\n";
if(he==2)
if(he==2&&gong4n>=1&&mingshu>=1){
	gong4n--;
	mingshu--;
	gong4Xn++;
	cout<<"恭喜获得X尚方宝剑X\n";
}else cout<<"材料不足\n\n";
if(he==3)
if(he==3&&fang4Xn>=1&&mingshu>=3){
	fang4Xn--;
	mingshu-=3;
	mfangn++;
	cout<<"恭喜获得命令之甲\n";
}else cout<<"材料不足\n\n";
if(he==4)
if(he==4&&fang4n>=1&&mingshu>=1){
	fang4n--;
	mingshu--;
	fang4Xn++;
	cout<<"恭喜获得X传说圣甲X\n";
}else cout<<"材料不足\n\n";
if(he==5)
if(he==5&&yuanzidan>=5&&mingshu>=3){
	yuanzidan-=5;
	mingshu-=3;
	zhadan++;
	cout<<"恭喜获得毁灭炸弹\n";
}else cout<<"材料不足\n\n";
if(he==6)
if(he==6&&ll>=5){
	ll-=5;
	fang5n++;
	cout<<"恭喜获得金龙铠\n";
}else cout<<"材料不足\n\n";
if(he==7)
if(he==7&&lp>=5){
	lp-=5;
	fang2n++;
	cout<<"恭喜获得鳞甲\n";
}else cout<<"材料不足\n\n";
if(he==0) break;
break;
case 7:
	int mi;
	cout<<"=====*【后台 开挂 测试Bug】*==================\n请输入密码=============*【想要后台密码问郑桐羽,只能输数字,否则死循环】*=========\n密码:";
	cin>>mi;
	if(mi%20120913==0&&mi!=0){
		cout<<"输入正确!\n欢迎进入后台!\n后台服务:\n=======================\n1.金币加999999\n2.血量上限加9999\n3.现有血量加9999\n4.攻击加9999\n5.防御加9999\n0.退出\n=======================\n输入>>> "<<endl;
		cin>>htsr;
		if(htsr==1){
			cout<<"成功获得效果 *金币加999999\n";
			money+=999999;
		}
		if(htsr==2){
			cout<<"成功获得效果 *血量加9999\n";
			player.health+=9999;
		}
		if(htsr==3){
			cout<<"成功获得效果 *血量上限加9999\n";
			player.max_health+=9999;
		}
		if(htsr==4){
			cout<<"成功获得效果 *攻击加9999\n";
			player.attack+=9999;
		}
		if(htsr==5){
			cout<<"成功获得效果 *防御加9999\n";
			player.defense+=9999;
		}
		if(htsr==0){
			cout<<"成功退出\n";
			continue;
		}
    }
	else{
	    cout<<"输入错误!请检查!"<<endl;
	    continue;
    }

    break;
}
}
}
void DisplayState()
{
printf("%s 攻击力:%d+%d=%d 防御力:%d+%d=%d HP:%d/%d \n\n\n",player.name,player.attack,gong,player.attack+gong,player.defense,fang,player.defense+fang,player.health,player.max_health);
printf("武器: %s 防具: %s \n\n\n",gongname,fangname);
printf("等级:%d 经验:%d/%d 还需要%d经验升级 金币:%d \n\n\n",player.level,player.exp,player.max_exp,player.max_exp-player.exp,money);
}
void BattleAct()
{
while(1)
{
puts("=============================================================================");
printf("要怎么办?\n\n\n 1,攻击 2,使用物品 3,查看状态 4,逃跑\n\n\n");
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
s=SuiJi();
printf("%s攻击! %sHP减少%d\n\n\n",player.name,guai.name,player.attack+s+gong-guai.defense/3);
guai.health-=player.attack+s+gong-guai.defense/3;
if(AttackResult())return; //如果攻击有结果(敌人或玩家战死)退出函数
else continue;
case 2:
ChooseWupin();
break; //选择物品,可以使用,战斗中允许使用攻击性物品
case 3:
DisplayState();
break; //显示状态
case 4:
s=SuiJi();
if(s<4) //40%的概率可以逃跑
{
printf("%s逃跑了~\n\n\n",player.name);
battle=0;
return;
}
else printf("%s逃跑失败!\n\n\n",player.name);
break;
default:
printf("输入错误,重新输入!\n\n\n");
}
}
}
void printf(char *p)
{
while(1)
{
if(*p!=0)
printf("%c",*p++);
else
break;
Sleep(100);
}
}

2.11.5

#include<stdio.h>
#include<iostream>
#include<ctime>
#include<bits/stdc++.h>
#include<conio.h>
#include<time.h>
#include<cmath>
#include<windows.h> //SLEEP函数
using namespace std;
	int shen=0;
int ui=0;
int sheng=1;
void SetColorAndBackground(int ForgC, int BackC) {
	WORD wColor = ((BackC & 0x0F) << 4) + (ForgC & 0x0F);
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), wColor);
}
void Bling()
{
    for(int i=0;i<=5;i++)
    {
        system("color 1A");Sleep(20);if(sheng==1) if(sheng==1) Beep(1200,100);
        system("color 2B");Sleep(20);
        system("color 3C");Sleep(20);
        system("color 4D");Sleep(20);if(sheng==1) Beep(1200,100);
        system("color 5D");Sleep(20);
        system("color 6E");Sleep(20);
        system("color 7F");Sleep(20);if(sheng==1) Beep(1200,100);
    }
}
void Start(){
	if(sheng==1) Beep(3200,100);
    system("color 8E");
	cout<<"          ■                       ■                                  \n";Sleep(100);
    cout<<"       ■ ■        ■■■■    ■■■■■                        \n";Sleep(100);
    cout<<"    ■ ■ ■           ■      ■  ■  ■                  \n";Sleep(100);
    cout<<"     ■   ■         ■        ■  ■                         \n";Sleep(100);
    cout<<"    ■■■■■■   ■■■■   ■ ■■■                    \n";Sleep(100);
    cout<<"          ■     ■  ■  ■  ■  ■  ■                         \n";Sleep(100);
    cout<<"          ■         ■■■ ■     ■            ■            \n";Sleep(100);
    cout<<"          ■               ■    ■  ■  ▆▆▆▆▆▆▆▆▆                \n";Sleep(100);
    cout<<"                                       ▆               ▆              \n";Sleep(100);
    cout<<" 欢迎来到 [斗破苍穹]    ■      ■        ■           ■                \n";Sleep(100);
    cout<<"                     ▆▆▆▆▆▆▆▆    ■ ▆▆▆▆▆  ■          \n";Sleep(100);
    cout<<"  zty郑桐羽出品         ■      ■                  ■     \n";Sleep(100);
    cout<<"                            ▆              ▆▆▆▆▆                   \n";Sleep(100);
    cout<<"  2.11.5 正式版         ▆■  ■▆          ■                   \n";Sleep(100);
    cout<<"                      ▆  ▆▆▆  ▆        ▆▆▆▆▆                  \n";Sleep(100);
    cout<<" 新增 合成台功能          ■  ■                     ■  \n";Sleep(100);
    cout<<"                          ■■■                 ▆  ■               \n";Sleep(100);
    cout<<" zty出品,必属精品        ■    ■                 ■                \n";Sleep(100);
    cout<<"                           ▆▆▆                                \n";Sleep(100);
    cout<<" 努力通关吧!                                             \n";Sleep(100);
	cout<<"                                                              \n";Sleep(100);
    cout<<" 输入“1 ”下一页                           \n\n";Sleep(100);
    A:char y=_getch();
    if(y=='1') return;
    else goto A;
}
void Start2(){
    system("color 8E");
    if(sheng==1) Beep(3200,100);
	cout<<"                                                \n";Sleep(100);
    cout<<"        ■ ■■■        ■■■  ■      ■     \n";Sleep(100);
    cout<<"    ■■      ■       ■   ■  ■       ■     \n";Sleep(100);
    cout<<"            ■      ■     ■   ■       ■     \n";Sleep(100);
    cout<<"           ■   ■■      ■    ■       ■     \n";Sleep(100);
    cout<<"         ■  ■            ■  ■ ■     ■     \n";Sleep(100);
    cout<<"       ■■■               ■■    ■■■      \n";Sleep(100);
    cout<<"                                         ■     \n";Sleep(100);
    cout<<"                                 ■      ■     \n";Sleep(100);
    cout<<" 欢迎来到 [斗破苍穹]               ■    ■     \n";Sleep(100);
    cout<<"                                     ■■       \n";Sleep(100);
    cout<<"  zty工作室出品          ■                     \n";Sleep(100);
    cout<<"                     ■  ■  ■     ■■■■    \n";Sleep(100);
    cout<<"  2.11.5 正式版      ■■■■■     ■    ■    \n";Sleep(100);
    cout<<"                         ■         ■■■■    \n";Sleep(100);
    cout<<" 新增 合成台功能     ■  ■  ■                 \n";Sleep(100);
    cout<<"                     ■■■■■  ■■■  ■■■ \n";Sleep(100);
    cout<<" zty出品,必属精品               ■  ■  ■  ■ \n";Sleep(100);
    cout<<"                                 ■■■  ■■■ \n";Sleep(100);
    cout<<" 努力通关吧!                                   \n";Sleep(100);
	cout<<"                                                \n";Sleep(100);
    cout<<" 输入“1 ”开始游戏                    \n\n";Sleep(100);
    A:char y=_getch();
    if(y=='1') return;
    else goto A;
}
int boss1=0,boss2=0;
struct Player{//玩家结构体,并初始化player
	char name[21];
	int attack;
	int defense;
	int health;
	long int max_health;
	int level;
	int exp;
	int range_exp;
	long int max_exp;
} player= {"勇者",100,80,200,200,1,0,0,100};
struct Enemy {//怪的结构体,并初始化各种怪
	char name[20];
	char wupin[20];
	int attack;
	int defense;
	int health;
	int money;
	long int exp;
	int wupin_sign;
	int wupinpro;
	int double_attack;
	int miss;
}
//怪,拿格伦石人举例
// 怪变量  怪名     掉落的装备 攻   防  血  金币 经验 掉落装备编号 掉落概率 真伤(被防御后的破甲伤害)   不能改
//  gl= {"格伦石人","石铠甲",  30, 150,1000,500, 250,      11,       7,        1,                         0},
    gl= {"格伦石人","石铠甲",30,150,1000,500,250,11,7,1,0},
    zhizhu= {"洞穴蜘蛛","蜘蛛毒剑",140,20,250,400,200,12,5,1,0},
    ymr= {"野蛮人","粗制石剑",20,20,150,100,50,13,5,1,0},
    nz= {"牛仔","战斗马甲",80,20,250,500,250,14,10,1,0},
    strongman= {"森林巨人","传说圣甲",50,50,580,200,100,1,5,1,0},
    witch= {"兽人","重甲",35,55,250,50,50,2,4,1,1},
    xiyi= {"毒蜴","鳞片",20,25,80,30,35,3,8,2,2},
    huolong= {"喷火龙","巨龙晶石",40*5,50*5,200*5,200*5,100*5,4,4,2,0},
    lion= {"皇家士兵","尚方宝剑",100,30,380,200,100,5,5,1,0},
    horse= {"独眼巨人","碧血战锤",50,22,360,50,50,6,5,1,1},
    bee= {"剑客","西洋剑",27,11,60,30,35,7,5,2,2},
    bossno1= {"凋零女巫","凋零通行证",1400,500,15000,10000,5000,15,10,1,0},
    dljs= {"凋零巨兽","凋零之心",1200,700,20000,10000,500,10,7,1,0},
    pika= {"皮卡超人","\0",300,40*8,1000,2000,1000,0,0,1,0},
    dapika= {"雷霆皮卡","雷霆之刃",350,40*10,1500,3000,2000,8,6,6,0},
    cl= {"熔岩飞龙","\0",450,50*10,2000,3500,2500,0,0,1,0},
    jl= {"裂凯金龙","龙鳞",500,40*20,5000,8000,4500,9,6,6,1},
    gst={"凋零共生体","命令之书",1800,65*10,15000,20000,1000,16,10,1,0},
    dlkl= {"凋零骷髅","凋零之骨",3000,30*10,12000,20000,1000,0,0,1,0},
    dlfb= {".+*凋零风暴*+.","\0",9000,1500,49000,0,500000,17,10,1,0},
    guai= {"\0","\0",0,0,0,0,0,0,0,0,0};
struct Place{
int bar,hotel,forest1,forest2,forest3,grass1,grass2,grass3,te1,te2,te3,te4;
} place= {1,2,3,4,5,6,7,8,9,10,11,12};
int max_exp=0;
int htsr;int he=0;
int choose_number=0,s=0,strongman_arm=0,battle=0,money=500,place_sign=10;
int cao=3,jijiubao=3,baiyao=3,superbaiyao=3,miansi=1,boom=3,dubiao=2,yuanzidan=1;
int fang=0,fang1=10,fang1n=0,fang2=120,fang2n=0,fang3=40,fang3n=0,fang4=100,fang4n=0,fang5=600,fang5n=0,fang6=150,fang6n=0,fang7=60,fang7n=0,fang4X=550,fang4Xn=0,mfang=1000,mfangn=0;
int gong=0,gong1=10,gong1n=0,gong2=20,gong2n=0,gong3=45,gong3n=0,gong4=100,gong4n=0,gong5=300,gong5n=0,gong6=150,gong6n=0,gong7=45,gong7n=0,gong4X=500,gong4Xn=0,mgong=1000,mgongn=0;
int jingyancao=0,jingyanbao=0,jingyanshi=0,htmmcs=5;
int diaolingxinhave=0,diaolingxin=0,mingshu=0,zhadan=0;
char gongname[20]="无",fangname[20]="无";
char proof;
int lp=0,ll=0;
void AddWupin(int);
int AttackResult();
void BattleAct();  //      ____
void ChooseWupin();  //   /___/|
void DisplayState();  //  |   |/
void OrdinaryAct();     //▔▔
int SuiJi();
int SuiJi100();
void WhetherLevelUp();
void SlowDisplay(char *);
int main(){
	if(sheng==1) Beep(1200,100);
MessageBox(NULL, "欢迎来到斗破苍穹 2.11.5 正式版 !", "斗破苍穹 游戏开始提示", MB_OK);
int i=0,j=0,k=0;
Start();
Bling();
Start2();
Bling();
int kaishi;
char player_name[21];
//Sleep(100);system("color A3");
//Sleep(50);system("color E4");
//Sleep(50);system("color B3");
//Sleep(50);system("color E4");
//Sleep(50);system("color 34");
//Sleep(50);system("color E3");
//Sleep(50);system("color 54");
//Sleep(50);system("color E3");
//Sleep(50);system("color 43");
//Sleep(50);system("color E4");
//Sleep(50);system("color 93");
//Sleep(50);system("color E4");
//Sleep(50);system("color C3");
//Sleep(50);system("color E4");
//Sleep(50);system("color D3");
//Sleep(50);system("color E4");
//Sleep(50);system("color F3");
//Sleep(50);system("color E4");
//Sleep(50);system("color 8E");
//printf("                            _________________________________                    ");system("color 8E");
//printf("                          /________________________________/|                    ");system("color 8E");
//printf("                _.+=*^--{|欢迎来到 [斗破苍穹] 2.11.1 正式版|}--^*=+.              ");system("color 8E");
//printf("                          ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔                      \n");system("color 8E");
//如果想使用外挂,名字请输入:“zty ”。
Sleep(300);if(sheng==1) Beep(1200,100);
printf("这里是斗破苍穹(苍穹世界)! 契晋赫苟国的漓嘉茜公主被神秘人绑架了!\n\n\n 伟大的勇者啊~拿起你的武器,营救公主!\n\n\n输入你的名字: (20个字符)\n\n\n");system("color 8E");
scanf("%s",player_name);
Sleep(300);
strncpy(player.name,player_name,20);
if(strcmp(player.name,"zty")==0){
	if(sheng==1) Beep(5200,300);
	printf("\n\n\n封印多年的官方血统啊!你终于觉醒了!\n\n\nzty,你成为了天选之人,请你救出公主吧!\n\n\n");
	player.attack=99999;
	player.defense=99999;
	player.health=999999;
	player.max_health=999999;
}
getchar();
OrdinaryAct();
return 0;
}
int SuiJi(){
srand((unsigned)time(NULL));
return rand()%10;
}
int SuiJi100(){
srand((unsigned)time(NULL));
return rand()%100;
}
void ChooseWupin(){//选择物品 并使用
if(sheng==1) Beep(1200,100);
printf("物品: 1,止血草%d个 2,急救包%d个 3,云南白药%d个 4,超级云南白药%d个 5,手雷%d个 6,毒标%d个 7,手抛式原子弹%d个 8,经验草%d个 9,经验包%d个 10,经验石%d个 11,巨龙晶石%d个 12,免死金牌%d个 13,凋零之心%d个 14,毁灭炸弹%d个 0,返回\n\n\n",cao,jijiubao,baiyao,superbaiyao,boom,dubiao,yuanzidan,jingyancao,jingyanbao,jingyanshi,strongman_arm,miansi,diaolingxin,zhadan);system("color 8A");
switch(scanf("%d",&choose_number),choose_number){
case 1:
if(cao>0){
printf("使用止血草,HP增加120\n\n\n");system("color 8A");if(sheng==1) Beep(1200,100);
cao--;
if(player.health+120>player.max_health)player.health=player.max_health;
else player.health+=120;
}
else printf("没有止血草了\n\n\n");system("color 8A");
break;
case 2:
if(jijiubao>0){
printf("使用急救包,HP增加180\n\n\n");system("color 8A");if(sheng==1) Beep(1200,100);
jijiubao--;
if(player.health+180>player.max_health)player.health=player.max_health;
else player.health+=180;
}
else printf("没有急救包了\n\n\n");system("color 8A");
break;
case 3:
if(baiyao>0){
printf("使用云南白药,HP增加240\nz\n\n");system("color 8A");if(sheng==1) Beep(1200,100);
baiyao--;
if(player.health+240>player.max_health)player.health=player.max_health;
else player.health+=240;
}
else printf("没有云南白药了\n\n\n");system("color 8A");
break;
case 4:
if(superbaiyao>0){
printf("使用超级云南白药,HP增加400\n\n\n");system("color 8A");if(sheng==1) Beep(1200,100);
superbaiyao--;
if(player.health+400>player.max_health)player.health=player.max_health;
else player.health+=400;
}
else printf("没有超级云南白药了\n\n\n");system("color 8A");
break;
case 5:
if(battle){//在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(boom>0){
printf("使用手雷,敌人HP减少100\n\n\n");system("color 84");if(sheng==1) Beep(1200,100);
boom--;
guai.health-=100;
AttackResult();
}
}
else printf("非战斗状态,不能使用手雷!\n\n\n");system("color 84");
break;
case 6:
if(battle){ //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(dubiao>0){
printf("使用毒标,敌人HP减少200\n\n\n");system("color 84");if(sheng==1) Beep(1200,100);
dubiao--;
guai.health-=200;
AttackResult();
}
}
else printf("非战斗状态,不能使用毒标!\n\n\n");system("color 84");
break;
case 7:
if(battle){ //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(yuanzidan>0){
printf("使用手抛式原子弹,敌人HP减少1500\n\n\n");system("color 84");if(sheng==1) Beep(1200,100);
yuanzidan--;
guai.health-=1500;
AttackResult();
}
}
else printf("非战斗状态,不能使用手抛式原子弹!\n\n\n");system("color 84");
break;
case 8:
if(jingyancao>0 && player.level<200){
printf("使用经验草,等级增加3级\n\n\n");system("color 8E");if(sheng==1) Beep(1200,100);
jingyancao--;
player.max_health=player.max_health+60;
player.attack+=9;
player.defense+=6;
player.level+=3;
player.health=player.max_health;
printf("等级:%d\n",player.level);system("color 8E");if(sheng==1) Beep(1200,100);
}
else    if(jingyancao<1){
printf("没有经验草了\n\n\n");system("color 8E");
}
else printf("等级超过200级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 9:
if(jingyanbao>0 && player.level<200){
if(player.level>197&&player.level<200){
int sheng;
sheng=100-player.level;
player.level+=sheng;
jingyanbao--;
player.max_health=player.max_health+sheng*20;
player.attack+=sheng*3;
player.defense+=sheng*2;
player.health=player.max_health;
printf("使用经验包,等级增加%d级",sheng);system("color 8E");if(sheng==1) Beep(1200,100);
printf("等级:%d\n",player.level);system("color 8E");
}
else{
printf("使用经验包,等级增加5级\n\n\n");system("color 8E");if(sheng==1) Beep(1200,100);
jingyanbao--;
player.max_health=player.max_health+100;
player.attack+=15;
player.defense+=10;
player.level+=5;
player.health=player.max_health;
printf("等级:%d\n",player.level);system("color 8E");
}
}
else if(jingyanbao<1){
printf("没有经验包了");system("color 8E");
}
else printf("等级超过200级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 10:
if(jingyanshi>0 && player.level<200){
if(player.level>192&&player.level<200){
int sheng;
sheng=100-player.level;
player.level+=sheng;
player.max_health+=sheng*20;
player.attack+=sheng*3;
player.defense+=sheng*2;
player.health=player.max_health;
printf("使用经验石,等级增加%d级\n",sheng);system("color 8E");if(sheng==1) Beep(1200,100);
printf("等级:%d\n",player.level);system("color 8E");
}
else{
printf("使用经验石,等级增加10级\n");system("color 8E");if(sheng==1) Beep(1200,100);
jingyanshi--;
player.max_health=player.max_health+200;
player.attack+=30;
player.defense+=20;
player.level+=10;
player.health=player.max_health;
}
}
else if(jingyanshi<1)
{
printf("没有经验石了\n\n\n");system("color 8E");
}
else printf("等级超过200级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 11:
if(strongman_arm>0 && player.level<500)
{
if(player.level>482&&player.level<500)
{
int sheng;
sheng=500-player.level;
player.level+=sheng;
player.max_health=player.max_health+sheng*20;
player.attack+=sheng*3;
player.defense+=sheng*2;
player.health=player.max_health;
printf("使用巨龙晶石,等级增加%d级",sheng);system("color 8E");if(sheng==1) Beep(1200,100);
printf("等级:%d\n",player.level);system("color 8E");
}
else
{
printf("使用巨龙晶石,等级增加20级\n\n\n");system("color 8E");if(sheng==1) Beep(1200,100);
strongman_arm--;
player.max_health=player.max_health+400;
player.attack+=60;
player.defense+=40;
player.health=player.max_health;
player.level+=20;
printf("等级:%d\n",player.level);system("color 8E");
}
}
else if(strongman_arm<1)
{
printf("没有巨龙晶石了。\n\n\n");system("color 8E");if(sheng==1) Beep(1200,100);
}
else printf("等级超过500级,修为太高,无法使用。\n\n\n");system("color 8E");
break;
case 12:
if(miansi>0)
{
	if(sheng==1) Beep(1200,100);
cout<<"使";Sleep(50);
cout<<"用";Sleep(50);
cout<<"免";Sleep(50);
cout<<"死";Sleep(50);
cout<<"金";Sleep(50);
cout<<"牌";Sleep(50);
cout<<"HP";Sleep(50);
cout<<"满";Sleep(50);
system("color 8b");
miansi--;
if(player.health+999999>player.max_health)player.health=player.max_health;
else player.health+=999999;
}else printf("没有免死金牌了\n\n\n"); system("color 8b");break;
break;
case 13:
if(diaolingxin>0)
{
printf("使用凋零之心\nHP上限+100  攻击+100\n\n\n");system("color 8b");if(sheng==1) Beep(1200,100);
diaolingxin--;
player.max_health+=100;
player.attack+=100;
}else printf("没有凋零之心了\n\n\n"); system("color 8b");break;
case 14:
if(battle){ //在战斗中(battle=1),否则(battle=0)不能使用攻击性物品
if(zhadan>0){
printf("使用毁灭炸弹,敌人HP减少15000\n\n\n");system("color 84");if(sheng==1) Beep(1200,100);
zhadan--;
guai.health-=15000;
AttackResult();
}
}
case 0:
break;
default:
printf("ChooseWupin error!\n\n\n");
}
}
int AttackResult(){ //攻击结果:判断是否获胜 是否获得物品 和 是否升级
	if(guai.health<=0){
	battle=0;
	printf("战斗胜利!获得金币%d,经验%d\n\n\n",guai.money,guai.exp);system("color 8C");if(sheng==1) Beep(1200,100);
	player.exp+=guai.exp;
	player.range_exp+=guai.exp;
	money+=guai.money;
	s=SuiJi();
	if(s<guai.wupinpro){
		cout<<"从";Sleep(100);if(sheng==1) Beep(1200,100);
		cout<<"敌";Sleep(100);
		cout<<"人";Sleep(100);
		cout<<"尸";Sleep(100);
		cout<<"骸";Sleep(100);
		cout<<"中";Sleep(100);
		cout<<"发";Sleep(100);
		cout<<"现";Sleep(100);
		system("color 8C");
		printf("%s\n\n\n",guai.wupin);
		AddWupin(guai.wupin_sign);
	}
	WhetherLevelUp();
	if(strcmp(guai.name,".+*凋零风暴*+.")==0){
	printf("结束了\n\n");if(sheng==1) Beep(1200,100);
	system("color 8C");
	}
	return 1; //攻击有结果了返回1,否则返回0,用于判断是否继续做战斗行为
}
else
{
int s=SuiJi();

if((guai.attack+s-player.defense/3)<0)
{
player.health-=1;
printf("%s反击,你的HP减少了 1\n\n",guai.name);system("color 8C");
}
else
{
player.health-=guai.attack+s-player.defense/3;
printf("%s反击,你的HP减少了%d\n\n",guai.name,guai.attack+s-player.defense/3);system("color 8C");
}
if(player.health<0)
{
battle=0;
printf("%s战死!金币掉落%d\n\n\n",player.name,player.level*500);system("color CC");
money-=player.level*500;
player.health=player.max_health/5;
OrdinaryAct();//
return 1;
}
}
return 0;
}
void AddWupin(int wupin_sign)
{

switch(wupin_sign)
{
case 1:
fang4n++;if(sheng==1) Beep(1200,100);
break;
case 2:
fang3n++;if(sheng==1) Beep(1200,100);
break;
case 3:
lp++;if(sheng==1) Beep(1200,100);
break;
case 4:
strongman_arm++;if(sheng==1) Beep(1200,100);
break;
case 5:
gong4n++;if(sheng==1) Beep(1200,100);
break;
case 6:
gong3n++;if(sheng==1) Beep(1200,100);
break;
case 7:
gong2n++;if(sheng==1) Beep(1200,100);
break;
case 8:
gong5n++;if(sheng==1) Beep(1200,100);
break;
case 9:
ll++;if(sheng==1) Beep(1200,100);
break;
case 10:
diaolingxin++;if(sheng==1) Beep(1200,100);
break;
case 11:
fang6n++;if(sheng==1) Beep(1200,100);
break;
case 12:
gong6n++;if(sheng==1) Beep(1200,100);
break;
case 13:
gong7n++;if(sheng==1) Beep(1200,100);
break;
case 14:
fang7n++;if(sheng==1) Beep(1200,100);
break;
case 15:
diaolingxinhave++;if(sheng==1) Beep(1200,100);
boss1++;
break;
case 16:
mingshu++;if(sheng==1) Beep(1200,100);
break;
case 17:
boss2++;if(sheng==1) Beep(1200,100);
break;
default:
printf("AddWupin error\n\n\n");
}

}
void WhetherLevelUp()
{
int i=0,j=0;
int l1=player.range_exp/150;
int l2=player.range_exp/300;
int l3=player.range_exp/600;
if(player.level<=15&&l1>0) //15级以下,经验足够 都满足则升级
{
if(l1==1)
{
printf("%s",player.name);
printf(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=100;
}
else
{
printf("好厉害!连升%d级!",l1);system("color 8E");
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l1,2*l1,20*l1);system("color 8E");
player.exp=(player.exp+guai.exp) || player.exp-((player.exp+guai.exp) || player.exp)%100;
player.attack+=3*l1;
player.defense+=2*l1;
player.max_health+=20*l1;
player.health=player.max_health;
player.level+=l1;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=100*l1;
}
}
else if(player.level<=40&&l2>0)
{
if(l2==1)
{
printf("%s",player.name);
printf(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=300;
}
else
{
printf("好厉害!连升%d级!",l2);system("color 8E");
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l2,2*l2,20*l2);system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3*l2;
player.defense+=2*l2;
player.max_health+=20*l2;
player.health=player.max_health;
player.level+=l2;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=300*l2;
}
}
else if(l3>0)
{
if(l3==1)
{
printf("%s",player.name);
printf(" 升级!\n\n\n攻击力+3, 防御力+2, HP上限+20\n\n\n");system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3;
player.defense+=2;
player.max_health+=20;
player.health=player.max_health;
player.level++;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=600;
}
else
{
printf("好厉害!连升%d级!",l3);
printf("攻击力+%d, 防御力+%d, HP上限+%d\n\n\n",3*l3,2*l3,20*l3);system("color 8E");
player.exp=player.exp+guai.exp-(player.exp+guai.exp)%100;
player.attack+=3*l3;
player.defense+=2*l3;
player.max_health+=20*l3;
player.health=player.max_health;
player.level+=l3;
player.range_exp=0;
player.exp=player.max_exp;
player.max_exp+=600*l3;
}
}
}
void OrdinaryAct() //正常行为菜单(移动,物品,对话,查看状态,装备,退出游戏)
{

while(1)
{
// \(1000);
// system("cls");
if(ui==0){
puts("=============================================================================");system("color 8E");
printf("要做什么?\n\n  1,移动     2,道具     3,对话  4,查看状态 \n\n  5,装备  6,关于游戏    7,后台   8,合成台 \n\n  9,设置  0,退出游戏\n\n");system("color 8E");if(sheng==1) Beep(1200,100);
puts("=============================================================================");system("color 8E");
}else{
	puts("=============================================================================");system("color 8E");
	printf("要做什么?\n\n1,移动 2,道具 3,对话 4,查看状态 5,装备 6,关于游戏 7,后台 8,合成台 9,设置 \n0,退出游戏\n\n\n");system("color 8E");
	puts("=============================================================================");system("color 8E");
}
switch(scanf("%d",&choose_number),choose_number)
{
case 1: //显示移动菜单
printf("要去哪里?\n\n\n");system("color 8E");
//printf("  ");
cout<<"1,小郑子酒吧  ";Sleep(150);if(sheng==1) Beep(1200,100);
cout<<"2,诺亚方舟酒店  ";Sleep(150);if(sheng==1) Beep(1200,100);
cout<<"3,北朝商会  ";Sleep(150);if(sheng==1) Beep(1200,100);
cout<<"4,红玉拍卖行  ";Sleep(150);if(sheng==1) Beep(1200,100);
cout<<"5,冒险荒野\n\n\n";Sleep(150);system("color 8E");if(sheng==1) Beep(1200,100);
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
place_sign=place.bar; //记录目前位置-酒吧
// OrdinaryAct();
break;
case 2:
place_sign=place.hotel; //进入旅店
printf("金币:%d",money);system("color 8E");
printf("要开房吗? 200个金币 \n 1,是 0,否\n\n\n");system("color 8E");if(sheng==1) Beep(1200,100);
choose_number=1;
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
if(money-200<=0) //判断钱是否够
{
printf("Sorry,你的钱不够~\n\n\n");system("color 8E");
printf("金币:%d",money);system("color 8E");
}
else
{
printf("好好休息\nHP满\n第二天了\n\n");system("color 8E");if(sheng==1) Beep(1200,100);
printf("金币:%d\n",money);system("color 8E");
money-=200; //花费200住店费
player.health=player.max_health; //体力满
}
break;
case 0:
printf("下次再来!\n\n\n");system("color 8E");
break;
default:
printf("hotel talk error!\n\n\n");system("color 8E");
}
place_sign=0;
break;
case 3:
int yongju,gong,fang;
printf("请问您要购买什么类型的物品?\n\n\n");system("color 8E");if(sheng==1) Beep(1200,100);
cout<<"1,攻击装备 ";Sleep(50);
cout<<"2,防御装备 ";Sleep(50);
cout<<"3,一次性伤害武器\n\n\n";Sleep(50);
scanf("%d",&yongju);
switch(yongju)
{
case 1:
printf("请问您要购买什么武器?\n\n\n 1,匕首¥300 2,西洋剑¥500 3,碧血战锤¥1000\n\n\n");system("color 8E");if(sheng==1) Beep(1200,100);
scanf("%d",&gong);
switch(gong)
{
case 1:
if(money>=300)
{
gong1n++;
money=money-300;
printf ("匕首+1\n");system("color 8E");if(sheng==1) Beep(1200,100);
printf("匕首:%d个\n",gong1n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
case 2:
if(money>=500)
{
gong2n++;
money=money-500;
printf ("西洋剑+1\n");system("color 8E");if(sheng==1) Beep(1200,100);
printf("西洋剑:%d个\n",gong2n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
else
{
printf("钱不够!\n");system("color 8E");if(sheng==1) Beep(1200,100);
printf("金币:%d\n",money);system("color 8E");
break;
}
case 3:
if(money>=1000)
{
gong3n++;
money=money-1000;
printf ("碧血战锤+1\n");system("color 8E");if(sheng==1) Beep(1200,100);
printf("碧血战锤:%d个\n",gong3n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
break;
}
default:
printf("对不起,我们只会打造以上武器。");system("color 8E");
break;

}
break;
case 2:
int fang;
printf("请问您要购买什么防具?\n\n\n 1,布衣¥300 2,鳞甲¥500 3,重甲¥1000\n\n\n");system("color 8E");if(sheng==1) Beep(1200,100);
scanf("%d",&fang);
switch(fang)
{
case 1:
if(money>=300)
{
fang1n++;
money=money-300;
printf ("布衣+1\n");system("color 8E");if(sheng==1) Beep(1200,100);
printf("布衣:%d个\n",fang1n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}

break;
case 2:
if(money>=500)
{
fang2n++;
money=money-500;
printf ("鳞甲+1\n");system("color 8E");if(sheng==1) Beep(1200,100);
printf("鳞甲:%d个\n",fang2n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d",money);system("color 8E");
}
break;
case 3:
if(money>=1000)
{
fang3n++;
money=money-1000;
printf ("重甲+1\n");system("color 8E");if(sheng==1) Beep(1200,100);
printf("重甲:%d个\n",fang3n);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
default:
printf("对不起,我们只会打造以上防具。");system("color 8E");
break;

}
printf("金币:%d\n",money);system("color 8E");
break;
case 3:
printf("请问您要购买什么一次性伤害武器?\n 1,手雷 2,毒镖 3,手抛式原子弹\n\n\n");system("color 8E");
int yi;
scanf("%d",&yi);
switch(yi)
{
case 1:
if(money>=300 && boom<5)
{
boom++;
money=money-300;
printf("手雷+1\n");system("color 8E");if(sheng==1) Beep(1200,100);
printf("手雷:%d\n",boom);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d",money);system("color 8E");
}
break;
case 2:
if(money>=600 && dubiao<9999999)
{
dubiao++;
money=money-600;
printf("毒镖+1\n");system("color 8E");if(sheng==1) Beep(1200,100);
printf("毒镖:%d\n",dubiao);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
break;
case 3:
if(money>=1000 && yuanzidan<5)
{
yuanzidan=yuanzidan+1;
money=money-1000;
printf("手抛式原子弹+1\n");system("color 8E");if(sheng==1) Beep(1200,100);
printf("手抛式原子弹:%d\n",yuanzidan);system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}
else
{
printf("钱不够!\n\n\n");system("color 8E");
printf("金币:%d\n",money);system("color 8E");
}

break;
}
}
break;
case 4:
	if(sheng==1) Beep(1200,100);
printf ("欢迎您光临本拍卖行,请问您要卖什么东西?\n\n");system("color 8E");
printf("攻击装备: 1,匕首:%d个 2,西洋剑:%d个 3,粗制石剑:%n 4,碧血战锤:%d个 5,蜘蛛毒剑:%n个 6,尚方宝剑:%d个 7,皮卡大剑:%d个\n",gong1n,gong2n,gong7n,gong3n,gong6n,gong4n,gong5n);system("color 8E");
printf("防御装备: 8,布衣:%d个 9,鳞甲:%d个 10,战斗马甲:%d个 11,重甲:%d个 12,石铠甲:%d个 13,传说圣甲:%d个 14,金龙铠:%d个 15,巨龙晶石:%d个\n 0,返回\n\n\n",fang1n,fang2n,fang7n,fang3n,fang6n,fang4n,fang5n,strongman_arm);system("color 8E");
int pai,shu,i;
scanf("%d",&pai);system("color 8E");
switch(pai)
{
case 1:
printf("请问您要出售几件?");system("color 8E");
scanf("%d",&shu);
if(gong1n>=shu)
{
gong1n=gong1n-shu;
money=money+shu*240;
printf("匕首:%d\n",gong1n);system("color 8E");if(sheng==1) Beep(1200,100);
printf("金币:%d\n",money);system("color 8E");
break;
}
else
{
printf("装备数不够,无法出售!\n");system("color 8E");
break;
}
break;
case 2:
printf("请问您要出售几件?\n");system("color 8E");
scanf("%d",&shu);
if(gong2n>=shu)
{
gong2n=gong2n-shu;
money=money+shu*400;
printf("西洋剑:%d\n",gong2n);if(sheng==1) Beep(1200,100);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 3:
printf("请问您要出售几件?\n");system("color 8E");
scanf("%d",&shu);
if(gong7n>=shu)
{
gong7n=gong7n-shu;
money=money+shu*800;
printf("粗制石剑:%d\n",gong7n);
printf("金币:%d\n",money);if(sheng==1) Beep(1200,100);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 4:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(gong3n>=shu)
{
gong3n=gong3n-shu;
money=money+shu*800;
printf("碧血战锤:%d\n",gong3n);if(sheng==1) Beep(1200,100);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 5:
printf("请问您要出售几件?\n");system("color 8E");
scanf("%d",&shu);
if(gong6n>=shu)
{
gong6n=gong6n-shu;
money=money+shu*1000;
printf("蜘蛛毒剑:%d\n",gong6n);if(sheng==1) Beep(1200,100);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 6:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(gong4n>=shu)
{
gong4n=gong4n-shu;
money=money+shu*1500;
printf("尚方宝剑:%d\n",gong4n);if(sheng==1) Beep(1200,100);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 7:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(gong5n>=shu)
{
gong5n=gong5n-shu;
money=money+shu*3000;
printf("皮卡大剑:%d\n",gong5n);if(sheng==1) Beep(1200,100);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 8:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang1n>=shu)
{
fang1n=fang1n-shu;
money=money+shu*240;
printf("布衣:%d\n",fang1n);if(sheng==1) Beep(1200,100);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 9:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang2n>=shu)
{
fang2n=fang2n-shu;
money=money+shu*500;
printf("鳞甲:%d\n",fang2n);if(sheng==1) Beep(1200,100);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 10:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang7n>=shu)
{
fang7n=fang7n-shu;
money=money+shu*1000;
printf("战斗马甲:%d\n",fang7n);if(sheng==1) Beep(1200,100);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 11:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang3n>=shu)
{
fang3n=fang3n-shu;
money=money+shu*800;
printf("重甲:%d\n",fang3n);if(sheng==1) Beep(1200,100);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
break;
case 12:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang6n>=shu)
{
fang6n=fang6n-shu;
money=money+shu*2000;
printf("石凯甲:%d\n",fang6n);if(sheng==1) Beep(1200,100);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 13:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang4n>=shu)
{
fang4n=fang4n-shu;
money=money+shu*1500;
printf("传说圣甲:%d\n",fang4n);if(sheng==1) Beep(1200,100);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}

case 14:
printf("请问您要出售几件?\n");
scanf("%d",&shu);
if(fang5n>=shu)
{
fang5n=fang5n-shu;
money=money+shu*3000;
printf("金龙铠:%d\n",fang5n);if(sheng==1) Beep(1200,100);
printf("金币:%d\n",money);
break;
}
else
{
printf("装备数不够,无法出售!\n");
break;
}
case 15:
printf("请问您要出售几颗?");
scanf("%d",&shu);
if(strongman_arm>=shu)
{
strongman_arm=strongman_arm-shu;
money=money+shu*4000;
printf("巨龙晶石:%d\n",strongman_arm);if(sheng==1) Beep(1200,100);
printf("金币:%d\n",money);
}
else{
printf("晶石数不够,无法出售!\n");
break;
}
break;
case 0:
break;
break;
default:
printf("没有该装备,无法出售!\n");
break;
}
break;
case 5:
int yewai;
while(1){
puts("=============================================================================");
printf("要去哪冒险呢?");system("color 8c");if(sheng==1) Beep(1200,100);
printf("\n\n");
cout<<"1,神秘沼泽 危险程度:★\n\n";Sleep(50);system("color 8c");
cout<<"2,星耀草原 危险程度:★★★\n\n";Sleep(50);
cout<<"3,诡异森林 危险程度:★★★\n\n";Sleep(50);
cout<<"4,荒漠矿场 危险程度:★★★★\n\n";Sleep(50);
cout<<"5,炽热炎洞 危险程度:★★★★★\n\n";Sleep(50);
cout<<"6,皮卡营地 危险程度:★★★★★★\n\n";Sleep(50);
cout<<"7,花朵宫殿 危险程度:★★★★★★\n\n";Sleep(50);
cout<<"8,熔岩龙穴 危险程度:★★★★★★★\n\n";Sleep(50);
cout<<"9,凋零宇宙 危险程度:★★★★★★★★\n\n";Sleep(50);
cout<<"0,离开\n";Sleep(150);
system("color 8c");
puts("=============================================================================");
scanf("%d",&yewai);
switch(yewai)
{
case 1:
place_sign=place.forest1;
s=SuiJi();
if(s<7)
{
battle=1;
guai=xiyi;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<9)
{
battle=1;
guai=witch;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else
{
printf("这里安全\n\n\n");
//不用调用OAct函数,会自动执行OAct函数;
}
break;
case 3:
place_sign=place.forest2;
s=SuiJi();
if(s<4)
{
battle=1;
guai=witch;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<7)
{
battle=1;
guai=strongman;
printf("横冲直撞的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else
{
battle=1;
guai=zhizhu;
printf("可怕的%s爬了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 5:
place_sign=place.forest3;
s=SuiJi();
if(s<=3){
battle=1;
guai=strongman;
printf("横冲直撞的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<5){
battle=1;
guai=huolong;
printf("炽热的%s拍打着翅膀扑了过来!\n\n\n",guai.name);
BattleAct();
} else if(s<8){
battle=1;
guai=gl;
printf("全身长满矿石的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}else{
battle=1;
guai=zhizhu;
printf("可怕的%s扑爬了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 2:
place_sign=place.grass1;
s=SuiJi();
if(s<=3){
battle=1;
guai=bee;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<5){
battle=1;
guai=horse;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}else if(s<8){
battle=1;
guai=ymr;
printf("横冲直撞的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}else{
battle=1;
guai=nz;
printf("帅气但令人讨厌的%s向你开枪!\n\n\n",guai.name);
BattleAct();
}
break;
case 4:
place_sign=place.grass2;
s=SuiJi();
if(s<5){
battle=1;
guai=horse;
printf("%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<7){
battle=1;
guai=lion;
printf("%s举着尚方宝剑拦住了你!\n\n\n",guai.name);
BattleAct();}
else{
battle=1;
guai=gl;
printf("全身长满矿石的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 6:
s=SuiJi();
if(s<7){
battle=1;
guai=pika;
printf("你感到了强烈的电流涌入全身,%s走了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<9){
battle=1;
guai=dapika;
printf("天空一声巨响,三道闪电劈到%s的身上,%s手持雷霆之刃冲了过来!\n\n\n",guai.name,guai.name);
BattleAct();
}
else{
printf("这里安全\n\n\n");
}
break;
case 8:
s=SuiJi();
if(s<=3)
{
battle=1;
guai=cl;
printf("一条飞龙横卧洞内,你定睛一看,是%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s<=8 && s>=4)
{
battle=1;
guai=huolong;
printf("炽热的%s拍打着翅膀扑了过来!\n\n\n",guai.name);
BattleAct();
}
else {
battle=1;
guai=jl;
printf("一条金光闪闪的飞龙盘旋空中,,是传说中的%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
break;
case 7:
place_sign=place.grass3;
s=SuiJi();
if(s<5){
battle=1;
guai=lion;
printf("%s举着尚方宝剑拦住了你!\n\n\n",guai.name);
BattleAct();
}
else if(s<7||boss1==0){
battle=1;
if(strongman_arm>=1){
printf("神秘老人:\n\n\n 哈哈,年轻人,做的不错,不过...嘿嘿,你上当啦!巨龙晶石我要了,公主你也别想带走!\n\n\n");
guai=bossno1;
printf("瞬间,你被一团黑雾笼罩,你被拉入了凋零幻境,%s向你发起攻击!\n\n\n",guai.name);
BattleAct();
}
else printf("神秘老人:\n\n\n 年轻人,你好啊.如果你有巨龙晶石,我可以告诉你公主的下落哦~\n\n\n");
}
else{
battle=1;
guai=nz;
printf("帅气但令人讨厌的%s向你开枪!\n\n\n",guai.name);
BattleAct();
}
break;
case 9:
s=SuiJi();
if(diaolingxinhave!=0){
if(s==1&&boss2==0){
battle=1;
guai=dlfb;
printf("一个巨大的黑暗物体,周围环绕着大量的由破碎方块组成的黑色颗粒云环的%s向你发起攻击!\n\n\n",guai.name);
BattleAct();
}else if(s>=2 && s<=4)
{
battle=1;
guai=dlkl;
printf("手持凋零剑的黑色凶恶%s扑了过来!\n\n\n",guai.name);
BattleAct();
}
else if(s>=5&&s<=7){
battle=1;
guai=gst;
printf("一个巨大的触手向你打来,你挡了下来%s扑了过来!\n\n\n",guai.name);
BattleAct();
} else{
battle=1;
guai=dljs;
printf("一只巨大的猛兽%s冲了过来!\n\n\n",guai.name);
BattleAct();
}
}if(diaolingxinhave==0){
cout<<"你没有击败过凋零女巫,请去花朵宫殿击败凋零女巫。" <<endl;
}
break;
if(yewai!=0)
{
printf("该区域为未知区域,无法进入。\n\n\n");system("color 8E");
break;
}
}
if(yewai==0)
{
break;
printf("已离开荒野。");system("color 8E");if(sheng==1) Beep(1200,100);
}
}

}
break;

case 2:
ChooseWupin();
break; //显示道具,并可以使用.
case 3: //对话选项
if(sheng==1) Beep(1200,100);
if(place_sign==place.bar)
{
printf("要和谁说话?\n\n\n1,红发女郎 2,赏金猎人 3,酒吧老板 4,药品商人\n\n\n"); system("color 8E");if(sheng==1) Beep(1200,100);//显示对话人物
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
printf("红发女郎:\n\n\n 吧台边那个Hunter好帅啊!(~脸红~)\n\n\n听说他经常外出打猎,外面的路他应该很熟悉的!\n\n\n");system("color 8E");if(sheng==1) Beep(1200,100);
break;
case 2:
if(fang1n<1&&gong1n<1)
{
printf("赏金猎人:\n\n\n 你要救公主啊!好胆量!\n\n\n 不过外面的世界很险恶,而且越深越危险,这是匕首和布衣,对你会有些帮助的,拿去吧!\n\n\n");system("color 8E");if(sheng==1) Beep(1200,100);
printf("%s心想:哇,这位大叔人真好啊!\n\n\n)",player.name);
gong1n++;
fang1n++;
}
else printf("赏金猎人:\n\n\n 加油吧,年轻人!\n\n\n 不要被外面世界所吓倒!\n\n\n");system("color 8E");if(sheng==1) Beep(1200,100);
break;
case 3:
printf("要喝点什么?\n\n\n 1,二锅头25金币 HP+20 2,伏特加80金币 HP+50 3,人头马面150金币 HP+100 0,返回\n\n\n");system("color 8E");if(sheng==1) Beep(1200,100);
choose_number=1;
while(choose_number)
{
switch(scanf("%d",&choose_number),choose_number){
case 1:
if(money<25){
printf("钱不够!");system("color 8E");if(sheng==1) Beep(1200,100);
}
else
{
if(player.health+20<=player.max_health){
printf("HP+20.");system("color 8E");
money-=25;if(sheng==1) Beep(1200,100);
player.health+=20;
}
else{
printf("HP满了");system("color 8E");if(sheng==1) Beep(1200,100);
player.health=player.max_health;
}
}
break;
case 2:
if(money<80){
printf("钱不够!");system("color 8E");
}
else{
if(player.health+50<=player.max_health){
printf("HP+50.");system("color 8E");if(sheng==1) Beep(1200,100);
money-=80;
player.health+=50;
}
else{
printf("HP满了");system("color 8E");if(sheng==1) Beep(1200,100);
player.health=player.max_health;
}
}
break;
case 3:
if(money<150){
printf("钱不够!");system("color 8E");if(sheng==1) Beep(1200,100);
}
else{
if(player.health+100<=player.max_health){
printf("HP+100.");system("color 8E");if(sheng==1) Beep(1200,100);
money-=150;
player.health+=100;
}
else{
printf("HP满了");system("color 8E");if(sheng==1) Beep(1200,100);
player.health=player.max_health;
}
}
break;
case 0:
printf("下次再来!\n");system("color 8E");
break;
default:
printf("输入错误\n\n\n");system("color 8E");
break;
}
break;
}
break;
case 4:
printf("你要干什么?\n\n\n 1,买东西 2,聊天 \n\n\n");system("color 8E");if(sheng==1) Beep(1200,100);
int mai;
scanf("%d",&mai);
if(mai==1){
printf("买点什么呢?\n1,止血草¥100 HP+60\n2,急救包¥150 HP+80 \n3,云南白药¥250 HP+120\n4,超级云南白药¥400 HP+200 \n5,经验草¥150 经验+300 \n6,经验包¥600 经验+600\n7,经验石¥500 经验+1000 \n0,拜拜\n");system("color 8E");if(sheng==1) Beep(1200,100);
int dongxi;
scanf("%d",&dongxi);
switch(dongxi){
case 1:
if(money>=100&&cao<6){
cao++;
money=money-100;
printf ("止血草+1\n");system("color 8E");if(sheng==1) Beep(1200,100);
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 2:
if(money>=150&&jijiubao<10){
jijiubao++;
money=money-150;
printf ("急救包+1\n");system("color 8E");if(sheng==1) Beep(1200,100);
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 3:
if(money>=250&&baiyao<10){
baiyao++;
money=money-250;
printf ("云南白药+1\n");system("color 8E");if(sheng==1) Beep(1200,100);
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 4:
if(money>=400&&superbaiyao<10){
superbaiyao++;
money=money-400;
printf ("超级云南白药+1\n");system("color 8E");if(sheng==1) Beep(1200,100);

}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 5:
if(money>=150){
jingyancao++;
money=money-150;
printf ("经验草+1\n");system("color 8E");if(sheng==1) Beep(1200,100);
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 6:
if(money>=300){
jingyanbao++;
money=money-300;
printf ("经验包+1\n");system("color 8E");if(sheng==1) Beep(1200,100);
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
case 7:
if(money>=500){
jingyanshi++;
money=money-500;
printf ("经验石+1\n");system("color 8E");if(sheng==1) Beep(1200,100);
}
else{
printf("钱不够!\n");system("color 8E");
}
break;
}
case 0:
printf("金币:%d\n",money);system("color 8E");
printf("再见,欢迎下次再来!\n");system("color 8E");if(sheng==1) Beep(1200,100);
break;

}
if(mai==2){
printf("药品商人:去去去,老子没时间陪你聊。\n");system("color 8E");
}
}
}
else if(place_sign==place.hotel)
printf("“老板娘!我...”\n\n\n“我忙着呢,没空理你~”\n\n\n");
else printf("这里好像没人可以聊天\n\n\n");system("color 8E");
break;
case 4:
DisplayState();
break; //显示状态
case 5: //装备
if(sheng==1) Beep(1200,100);
printf("攻击装备: 1,匕首:%d个 2,西洋剑:%d个 3,粗制石剑:%d个 4,碧血战锤:%d个 5,蜘蛛毒剑:%d个 6,尚方宝剑:%d个 7,雷霆之刃:%d个 8,X尚方宝剑X:%d个 9,命令之剑:%d个\n\n\n",gong1n,gong2n,gong7n,gong3n,gong6n,gong4n,gong5n,gong4Xn,mgongn);system("color 8E");
printf("防御装备: 10,布衣:%d个 11,鳞甲:%d个 12,战斗马甲:%d个 13,重甲:%d个 14,石铠甲:%d个 15,传说圣甲:%d个 16,金龙铠:%d个 17,X传说圣甲X:%d个 18,命令之甲:%d个\t\t0,返回\n\n\n",fang1n,fang2n,fang7n,fang3n,fang6n,fang4n,fang5n,fang4Xn,mfangn);system("color 8E");
printf("选择要装备的武器或防具:\n\n\n");system("color 8E");
switch(scanf("%d",&choose_number),choose_number){
case 1:
if(gong1n>=1){
printf("拿起了匕首\n\n\n");system("color 8E");if(sheng==1) Beep(1200,100);
gong=gong1;
strcpy(gongname,"匕首");system("color 8E");
}
else printf("你没有匕首可以装备\n\n\n");system("color 8E");
break;
case 2:
if(gong2n>=1){
printf("拿起了西洋剑\n\n\n");system("color 8E");if(sheng==1) Beep(1200,100);
gong=gong2;
strcpy(gongname,"西洋剑");system("color 8E");
}
else printf("你没有西洋剑可以装备\n\n\n");system("color 8E");
break;
case 3:
if(gong7n>=1){
printf("拿起了粗制石剑\n\n\n");
gong=gong7;
strcpy(gongname,"粗制石剑");
}
else printf("你没有粗制石剑可以装备\n\n\n");if(sheng==1) Beep(1200,100);
break;
case 4:
if(gong3n>=1){
printf("拿起了碧血战锤\n\n\n");
gong=gong3;
strcpy(gongname,"碧血战锤");
}
else printf("你没有碧血战锤可以装备\n\n\n");if(sheng==1) Beep(1200,100);
break;
case 5:
if(gong6n>=1){
printf("拿起了蜘蛛毒剑\n\n\n");
gong=gong6;
strcpy(gongname,"蜘蛛毒剑");
}
else printf("你没有蜘蛛毒剑可以装备\n\n\n");if(sheng==1) Beep(1200,100);
break;
case 6:
if(gong4n>=1){
printf("拿起了尚方宝剑\n\n\n");
gong=gong4;
strcpy(gongname,"尚方宝剑");
}
else printf("你没有尚方宝剑可以装备\n\n\n");if(sheng==1) Beep(1200,100);
break;
case 7:
if(gong5n>=1){
printf("拿起了雷霆之刃\n\n\n");if(sheng==1) Beep(1200,100);
gong=gong5;
strcpy(gongname,"雷霆之刃");
}
else printf("你没有雷霆之刃可以装备\n\n\n");
break;
case 8:
if(gong4Xn>=1){
printf("拿起了X尚方宝剑X\n\n\n");if(sheng==1) Beep(1200,100);
gong=gong4X;
strcpy(gongname,"X尚方宝剑X");
}
else printf("你没有X尚方宝剑X可以装备\n\n\n");
break;
case 9:
if(mgongn>=1){
printf("拿起了命令之剑\n\n\n");if(sheng==1) Beep(1200,100);
gong=mgong;
strcpy(gongname,"命令之剑");
}
else printf("你没有命令之剑可以装备\n\n\n");
break;
case 10:
if(fang1n>=1){
printf("穿上了布衣\n\n\n");if(sheng==1) Beep(1200,100);
fang=fang1;
strcpy(fangname,"布衣");
}
else printf("你没有布衣可以装备\n\n\n");
break;
case 11:
if(fang2n>=1){
printf("穿上了鳞甲\n\n\n");if(sheng==1) Beep(1200,100);
fang=fang2;
strcpy(fangname,"鳞甲");
}
else printf("你没有鳞甲可以装备\n\n\n");
break;
case 12:
if(fang7n>=1){
printf("穿上了战斗马甲\n\n\n");if(sheng==1) Beep(1200,100);
fang=fang7;
strcpy(fangname,"战斗马甲");
}
else printf("你没有战斗马甲可以装备\n\n\n");
break;
case 13:
if(fang3n>=1){
printf("穿上了重甲\n\n\n");if(sheng==1) Beep(1200,100);
fang=fang3;
strcpy(fangname,"重甲");
}
else printf("你没有重甲可以装备\n\n\n");
break;
case 14:
if(fang6n>=1){
printf("穿上了石铠甲\n\n\n");if(sheng==1) Beep(1200,100);
fang=fang6;
strcpy(fangname,"石凯甲");
}
else printf("你没有石凯甲可以装备\n\n\n");
break;
case 15:
if(fang4n>=1){
	if(sheng==1) Beep(1200,100);
printf("穿上了传说圣甲\n\n\n");
fang=fang4;
strcpy(fangname,"传说圣甲");
}
else printf("你没有传说圣甲可以装备\n\n\n");
break;
case 16:
if(fang5n>=1){
printf("穿上了金龙铠\n\n\n");if(sheng==1) Beep(1200,100);
fang=fang5;
strcpy(fangname,"金龙铠");
}
else printf("你没有金龙铠可以装备\n\n\n");
break;
case 17:
if(fang4Xn>=1){
printf("穿上了X传说圣甲X\n\n\n");if(sheng==1) Beep(1200,100);
fang=fang4X;
strcpy(fangname,"X传说圣甲X");
}
else printf("你没有X传说圣甲X可以装备\n\n\n");
break;
case 18:
if(mfangn>=1){
printf("穿上了命令之甲\n\n\n");if(sheng==1) Beep(1200,100);
fang=mfang;
strcpy(fangname,"命令之甲");
}
else printf("你没有命令之甲可以装备\n\n\n");
break;
case 0:
printf("未更换装备\n\n\n");
break;
default:
printf("change error!");
}
break;
case 6:
if(sheng==1) Beep(1200,100);
printf(" 您好,欢迎您玩斗破苍穹(苍穹世界)。");
cout<<"为了给您更好的游戏体验,";Sleep(250);
cout<<"zty时不时会优化本游戏,";Sleep(250);
cout<<"优化后会尽快发布在网上。";Sleep(250);
cout<<"关于外挂方面,";Sleep(250);
cout<<"开启外挂的方式是设定勇者姓名时,";Sleep(250);
cout<<"输入";Sleep(250);
cout<<"“";Sleep(250);
cout<<"z";Sleep(250);
cout<<"t";Sleep(250);
cout<<"y";Sleep(250);
cout<<"”";Sleep(250);
cout<<"(不包括双引号)。";Sleep(250);
cout<<"我们在";Sleep(250);
cout<<"2.";Sleep(250);
cout<<"11.";Sleep(250);
cout<<"4";Sleep(250);
cout<<"版本内容";Sleep(250);
cout<<"的基础上进行添加,";Sleep(250);
cout<<"主要内容为增加声音与UI的变更";Sleep(250);
cout<<"已更新完毕,。";Sleep(250);
cout<<"希望大家喜欢。";Sleep(250);
cout<<"在这里要感谢";Sleep(250);
cout<<"吴";Sleep(250);
cout<<"昊";Sleep(250);
cout<<"同学,";Sleep(250);
cout<<"他给了我许多宝贵的建议,";Sleep(250);
cout<<"谢";Sleep(250);
cout<<"谢";Sleep(250);
cout<<"。\n";Sleep(250);
system("color 8E");
break;
case 0:
printf("确定退出游戏?(Y/N)\n\n\n");system("color 8E");
getchar();
proof=getchar();
if(proof=='y'||proof=='Y'){
printf("按回车退出");system("color 8E");
getchar();
return;
}
else if(proof=='n'||proof=='N')printf("继续游戏!\n\n\n");
else printf("继续!\n\n\n");
break;

case 8:
	if(sheng==1) Beep(1200,100);
printf("合成台:                   0:退出\n\n");system("color 8E");
cout<<"命令之书:"<<mingshu<<"\n1: 命令之剑   需要材料:1*X尚方宝剑X + 3*命令之书\n\n";Sleep(150);if(sheng==1) Beep(1200,100);
cout<<"2:X尚方宝剑X  需要材料:1* 尚方宝剑  + 1*命令之书\n\n";Sleep(150);if(sheng==1) Beep(1200,100);
cout<<"3: 命令之甲   需要材料:1*X传说圣甲X + 3*命令之书\n\n";Sleep(150);if(sheng==1) Beep(1200,100);
cout<<"4:X传说圣甲X  需要材料:1* 传说圣甲  + 1*命令之书\n\n";Sleep(150);if(sheng==1) Beep(1200,100);
cout<<"5: 毁灭炸弹   需要材料:5*手抛原子弹 + 3*命令之书\n\n";Sleep(150);if(sheng==1) Beep(1200,100);
cout<<"6:  金龙铠    需要材料:5*龙鳞  \n\n";Sleep(150);if(sheng==1) Beep(1200,100);
cout<<"7:   鳞甲     需要材料:5*鳞片  \n\n";Sleep(150);if(sheng==1) Beep(1200,100);
cin>>he;
if(he==1)
if(he==1&&gong4Xn>=1&&mingshu>=3){
	gong4Xn--;
	mingshu-=3;
	mgongn++;
	cout<<"恭喜获得命令之剑\n";if(sheng==1) Beep(1200,100);
}else cout<<"材料不足\n\n";
if(he==2)
if(he==2&&gong4n>=1&&mingshu>=1){
	gong4n--;
	mingshu--;
	gong4Xn++;
	cout<<"恭喜获得X尚方宝剑X\n";if(sheng==1) Beep(1200,100);
}else cout<<"材料不足\n\n";
if(he==3)
if(he==3&&fang4Xn>=1&&mingshu>=3){
	fang4Xn--;
	mingshu-=3;
	mfangn++;
	cout<<"恭喜获得命令之甲\n";if(sheng==1) Beep(1200,100);
}else cout<<"材料不足\n\n";
if(he==4)
if(he==4&&fang4n>=1&&mingshu>=1){
	fang4n--;
	mingshu--;
	fang4Xn++;
	cout<<"恭喜获得X传说圣甲X\n";if(sheng==1) Beep(1200,100);
}else cout<<"材料不足\n\n";
if(he==5)
if(he==5&&yuanzidan>=5&&mingshu>=3){
	yuanzidan-=5;
	mingshu-=3;
	zhadan++;
	cout<<"恭喜获得毁灭炸弹\n";if(sheng==1) Beep(1200,100);
}else cout<<"材料不足\n\n";
if(he==6)
if(he==6&&ll>=5){
	ll-=5;
	fang5n++;
	cout<<"恭喜获得金龙铠\n";if(sheng==1) Beep(1200,100);
}else cout<<"材料不足\n\n";
if(he==7)
if(he==7&&lp>=5){
	lp-=5;
	fang2n++;
	cout<<"恭喜获得鳞甲\n";if(sheng==1) Beep(1200,100);
}else cout<<"材料不足\n\n";
if(he==0) break;
break;
case 9:
	cout<<"设置        0:退出\n\n";
	cout<<"1:声音 ";if(sheng==1) cout<<"开\n";else cout<<"关\n";
	cout<<"2:UI界面 ";if(ui==1) cout<<"老版";else cout<<"新版";
	cin>>shen;
	if(shen==1){
		if(sheng==1) sheng=0;
		else sheng=1;
	}if(shen==2){
		if(ui==1) ui=0;
		else ui=1;
	}
	if(shen==0) break;
break;
case 7:
	if(sheng==1) Beep(1200,100);
	int mi;
	cout<<"=====*【后台 开挂 测试Bug】*==================\n请输入密码=============*【想要后台密码问郑桐羽,只能输数字,否则死循环】*=========\n密码:";
	cin>>mi;
	if(mi%20120913==0&&mi!=0){
		cout<<"输入正确!\n欢迎进入后台!\n后台服务:\n=======================\n1.金币加999999\n2.血量上限加9999\n3.现有血量加9999\n4.攻击加9999\n5.防御加9999\n0.退出\n=======================\n输入>>> "<<endl;
		cin>>htsr;
		if(htsr==1){
			cout<<"成功获得效果 *金币加999999\n";if(sheng==1) Beep(1200,100);
			money+=999999;
		}
		if(htsr==2){
			cout<<"成功获得效果 *血量加9999\n";if(sheng==1) Beep(1200,100);
			player.health+=9999;
		}
		if(htsr==3){
			cout<<"成功获得效果 *血量上限加9999\n";if(sheng==1) Beep(1200,100);
			player.max_health+=9999;
		}
		if(htsr==4){
			cout<<"成功获得效果 *攻击加9999\n";if(sheng==1) Beep(1200,100);
			player.attack+=9999;
		}
		if(htsr==5){
			cout<<"成功获得效果 *防御加9999\n";if(sheng==1) Beep(1200,100);
			player.defense+=9999;
		}
		if(htsr==0){
			cout<<"成功退出\n";if(sheng==1) Beep(1200,100);
			continue;
		}
    }
	else{
	    cout<<"输入错误!请检查!"<<endl;
	    continue;
    }

    break;
}
}
}
void DisplayState()
{
printf("%s 攻击力:%d+%d=%d 防御力:%d+%d=%d HP:%d/%d \n\n\n",player.name,player.attack,gong,player.attack+gong,player.defense,fang,player.defense+fang,player.health,player.max_health);
printf("武器: %s 防具: %s \n\n\n",gongname,fangname);
printf("等级:%d 经验:%d/%d 还需要%d经验升级 金币:%d \n\n\n",player.level,player.exp,player.max_exp,player.max_exp-player.exp,money);
}
void BattleAct()
{
while(1)
{
puts("=============================================================================");if(sheng==1) Beep(1200,100);
printf("要怎么办?\n\n\n 1,攻击 2,使用物品 3,查看状态 4,逃跑\n\n\n");
switch(scanf("%d",&choose_number),choose_number)
{
case 1:
s=SuiJi();
printf("%s攻击! %sHP减少%d\n\n\n",player.name,guai.name,player.attack+s+gong-guai.defense/3);
guai.health-=player.attack+s+gong-guai.defense/3;
if(AttackResult())return; //如果攻击有结果(敌人或玩家战死)退出函数
else continue;
case 2:
ChooseWupin();
break; //选择物品,可以使用,战斗中允许使用攻击性物品
case 3:
DisplayState();
break; //显示状态
case 4:
s=SuiJi();
if(s<4) //40%的概率可以逃跑
{
printf("%s逃跑了~\n\n\n",player.name);if(sheng==1) Beep(1200,100);
battle=0;
return;
}
else printf("%s逃跑失败!\n\n\n",player.name);if(sheng==1) Beep(200,100);
break;
default:
printf("输入错误,重新输入!\n\n\n");if(sheng==1) Beep(200,100);
}
}
}
void printf(char *p)
{
while(1)
{
if(*p!=0)
printf("%c",*p++);
else
break;
Sleep(100);
}
}

标签:color,money,system,C++,break,player,斗破,zty,printf
From: https://blog.csdn.net/zty20120913/article/details/139423210

相关文章

  • 编程奇境:C++之旅,从新手村到ACM/OI算法竞赛大门(武器:排序算法)
    引言现在你已经拥有了c++的基础语法知识,人物已经有了基本属性,那么想要打怪,手里必须要有趁手的武器,各种算法就是手中的武器,要根据怪物的不同特性来选择不同的武器。本章节讲的就是新手第一把武器:排序算法。所谓排序算法就是把一些乱序的序列按照从小到大或从大到小进行排序,是......
  • C++:priority_queue的模拟实现 | 仿函数
    ✨✨✨学习的道路很枯燥,希望我们能并肩走下来!文章目录文章目录前言一priority_queue的介绍二priority_queue的使用三 priority_queue的初步模拟实现四仿函数  4.1什么是仿函数4.2常见仿函数 ​编辑 4.3常见仿函数的模拟实现4.3.1less 4.3.2 gre......
  • c++在Linux下把gbk编码转为utf8编码类型
    #include<iostream>#include<string.h>#include<iconv.h>#include<memory>std::stringgbk_to_utf8(conststd::string&gbk_str){size_tin_len=gbk_str.size();size_tout_len=in_len*4;//设置足够大,确保可以存放转换后的UTF-8字符串std::uni......
  • C++用于开发大厅类规划展馆等设备终端开发实现还是很友好的
     C++用于开发大厅类规划展馆等设备终端开发实现还是很友好的......
  • C++的std::optional的用法
    C++的std::optional的用法在编程中,处理可能为空的变量或结果是一个常见的挑战。确实,传统的几种方法都有其局限性,可能导致代码的可读性和可维护性降低。如下的方式:使用特殊值标记:虽然使用特殊值(如-1、INFINITY、nullptr等)来标记无效或缺失的值很常见,但这种方法有其缺点。......
  • C++中的‘位’操作
    目录摘要基本位操作1.按位与(AND)`&`:2.按位或(OR)`|`:3.按位异或(XOR)`^`:4.按位取反(NOT)`~`:5.左移(LeftShift)`<<`:高级用法1.快速乘除以2的幂:2.交换两个数(不使用临时变量):3.检测奇偶性:4.清除最低位的1:5.获取最低位的1:6.统计二进制中1的个数:7.快速判断是否是2......
  • opencv c++编程基础
    1、图片的本质图像在OpenCV中的本质在OpenCV中,图像被表示为一个多维数组,其中每个元素对应于图像中的单个像素。图像的维度取决于其通道数和像素数。**通道数:**图像可以有多个通道,每个通道存储图像的不同信息。例如,彩色图像通常有3个通道(红色、绿色和蓝色),而灰度图像只......
  • C++实现线程池详解
    在现代软件开发中,高效地管理和利用计算资源是一项关键任务。线程池(ThreadPool)是一种非常有效的并发编程技术,它允许我们管理和重用一组线程,从而避免频繁创建和销毁线程带来的性能开销。1.线程池的基本概念线程池是一组预先创建的线程,这些线程等待并执行任务。当任务到达时,它......
  • C++实现进制转换工具
    下面是一个使用C++编写的简单数制转换工具,该工具包含了二进制、十进制和十六进制之间的转换功能。二进制转十进制intbinaryToDecimal(conststd::string&binary){intdecimal=0,base=1;intlen=binary.length();for(inti=len-1;i>=0;--i){......
  • C++ primer plus习题及解析第七章(函数C++编程模块)
    题目:7.1编写一个程序,不断要求用户输入两个数,直到其中的一个为0。对于每两个数,程序将使用一个函数来计算它们的调和平均数,并将结果返回给main(),而后者将报告结果。调和平均数指的是倒数平均值的倒数,计算公式如下:调和平均数=2.0*x*y/(x+y)代码: intharmonic_averag......