求修复
[此贴子已经被作者于2017-8-26 17:03编辑过]
void OrdinaryAct() //正常行为菜单(移动,物品,对话,查看状态,装备,退出游戏) {//这里有个很大的bug:有的时候会没输入就跳出错误 while(1) { Setjindutiao(25); if(place.sign==0||place.sign==1||place.sign==2||place.sign==18||place.sign==19){strcpy(fujin1,bar.name);strcpy(fujin2,hotel.name);strcpy(fujin3,fsyg.name);strcpy(fujin4,"秘道");} else if(place.sign==3||place.sign==4||place.sign==5||place.sign==14){strcpy(fujin1,forest.name);strcpy(fujin2,forest1.name);strcpy(fujin3,forest2.name);strcpy(fujin4,forest3.name);} else if(place.sign==6||place.sign==7||place.sign==8||place.sign==15){strcpy(fujin1,grass.name);strcpy(fujin2,grass1.name);strcpy(fujin3,grass2.name);strcpy(fujin4,grass3.name);} else if(place.sign==11||place.sign==12||place.sign==13||place.sign==16){strcpy(fujin1,sea.name);strcpy(fujin2,sea1.name);strcpy(fujin3,sea2.name);strcpy(fujin4,sea3.name);} else if(place.sign==9||place.sign==19||place.sign==20||place.sign==21||place.sign==23){strcpy(fujin1,mlgb.name);strcpy(fujin2,cnm.name);strcpy(fujin3,fky.name);strcpy(fujin4,zysd.name);} gotoxy(1,10); printf("这里是%s",place.name); if(place.sign==0)Map("草原边上","森林边上","圣地","海边"); else if(place.sign==9)Map("草泥马平原","马勒戈壁","法克鱿大海","职业圣殿"); if(place.sign!=0) { gotoxy(12,58); printf("5、回学校"); } if(place.sign==19||place.sign==20||place.sign==21||place.sign==23) { gotoxy(12,68); printf("6、去圣地"); } gotoxy(21,4); if(place.sign!=9&&place.sign!=14&&place.sign!=15&&place.sign!=16) printf("\t附近的地点:1、%s\t2、%s\t3、%s\t4、%s\n\t菜单(m)\n",fujin1,fujin2,fujin3,fujin4); else if(place.sign==14&&place.sign==15&&place.sign==16) { gotoxy(10,28); Map2(); } gotoxy(22,0); puts("============================================================================="); puts("要去哪里?"); scanf("%c",&proof); Setjindutiao(20); if(proof=='m'||proof=='M')Menu(); else { switch(place.sign) { case 0: switch(proof) { case 'w':place=grass;system("color A0");break; case 's':place=forest;system("color 2F");break; case 'a':system("color 70"); if(yaoshi3>0) { SlowDisplay("你缓缓地向上飘去,来到了圣地\n");//bug:这里到了圣地就会掉下来 place=mountain; yaoshi3--; } else { SlowDisplay("圣地守门人发现你没有钥匙,把你扔到了山里\n"); place=mountain1; Battle(); } break; case 'd':place=sea;system("color 9F");break; case '1':place=bar;system("color 6F");break; case '2':place=hotel;system("color 1F");break; case '3':place=fsyg;system("color 4F");break; case '4':system("color 8F"); SlowDisplay("秘道纵横交错,你误打误撞地来到了"); s=SuiJi(); if(s<6) { place=mesh; printf("%s",mesh.name); Battle(); } else { place=jd;//bug:到了基地发现在机械之城 printf("%s",jd.name); Battle(); } default:MessageBox(NULL,"错误!","警告",MB_OK); } break; case 1:Yidong1();break; case 2:Yidong1();break; case 3:Yidong2();break; case 4:Yidong2();break; case 5:Yidong2();break; case 6:Yidong3();break; case 7:Yidong3();break; case 8:Yidong3();break; case 9: switch(proof) { case 'w':place=cnm;system("color A0");Battle();break; case 's':place=mlgb;system("color 7F");Battle();break; case 'a':place=fkk;system("color 9F");Battle();break; case 'd':system("color E0"); printf("勇士,有什么事:1,领悟职业技能 2,购买职业顶级装备 0,返回\n\n\n"); choose_number=1; while(choose_number) { switch(scanf("%d",&choose_number),choose_number) { case 1: SlowDisplay("1 坦克专属 万仞崩山破\n2 战士专属 大荒芜经\n3 刺客专属 地狱之魂\n4 法师专属 佛怒火莲\n5 射手专属 狂风之息\n0 返回\n以上技能来源于游戏或小说,如有侵权请找陈曦\n\n\n"); choose_number=1; while(choose_number) { scanf("%d",&choose_number); Setjindutiao(20); switch(choose_number) { case 1: if(n==1) { SlowDisplay("领悟成功\n\n\n"); wrbsp++; n++; strcpy(zyname,"万仞崩山破"); } else SlowDisplay("滚!\n\n\n"); break; case 2: if(nn==1) { SlowDisplay("领悟成功\n\n\n"); dhwj++; nn++; strcpy(zyname,"大荒芜经"); } else SlowDisplay("滚!\n\n\n"); break; case 3: if(nnn==1) { SlowDisplay("领悟成功\n\n\n"); dysls++; nnn++; strcpy(zyname,"地狱之魂"); } else SlowDisplay("滚!\n\n\n"); break; case 4: if(nnnn==1) { SlowDisplay("领悟成功\n\n\n"); fnhl++; nnnn++; strcpy(zyname,"佛怒火莲"); } else SlowDisplay("滚!\n\n\n"); break; case 5: if(nnnnn==1) { SlowDisplay("领悟成功\n\n\n"); kfzx++; nnnnn++; strcpy(zyname,"狂风之息"); } else SlowDisplay("滚!\n\n\n"); break; case 0: SlowDisplay("走你!!!\n\n\n"); OrdinaryAct() ; break; default:MessageBox(NULL,"错误!","警告",MB_OK); } } break; case 2:SlowDisplay("此部分暂未完成,下次再来吧");break; case 0: SlowDisplay("走你!!!\n\n\n"); break; } } } case '5':place=school;system("color 0F");break; default:MessageBox(NULL,"错误!","警告",MB_OK); break; case 10:Yidong5();break; case 11:Yidong4();break; case 12:Yidong4();break; case 13:Yidong4();break; case 14:Yidong2();break; case 15:Yidong3();break; case 16:Yidong4();break; case 17:if(proof=='5'){place=school;system("color 0F");}else{MessageBox(NULL,"错误!","警告",MB_OK);}break; case 18:Yidong1();break; case 19:Yidong1();break; case 20:Yidong5();break; case 21:Yidong5();break; case 22:Yidong1();break; case 23:Yidong5();break; } } } }
void DisplayState() { gotoxy(16,2); printf("%s 攻击力:%d+%d+%d=%d 防御力:%d+%d+%d=%d HP:%d/%d MP:%d/%d \n\n",player.name,player.attack,gong,diaozhui2nn,player.attack+gong+diaozhui2nn,player.defense,fang,diaozhui3nn,player.defense+fang+diaozhui3nn,player.health+diaozhui1nn,player.max_health+diaozhui1nn,player.mp+diaozhui1nn/4,player.max_mp+diaozhui1nn/4); printf("武器: %s 防具: %s 逼能: %d 剩余氧气: %d/%d 子弹:%d 饰品:%s %s %s\n\n",gongname,fangname,bi,player.air,player.max_air,zidan,diaozhui1name,diaozhui2name,diaozhui3name); printf("等级:%d 经验:%d/%d 还需要%d经验升级 金币:%d \n\n",player.level,player.exp,player.max_exp,player.max_exp-player.exp,money); printf("程序猿令牌%d 草泥马令牌%d 法克鱿令牌%d 黄学长令牌%d\n\n",lingpai0,lingpai1,lingpai2,lingpai3); system("pause"); } void Battle()//bug:经常出现没有怪或一直重复一个怪的情况 { Setjindutiao(20); battle=1; s=SuiJi(); s2=0; switch(place.sign) { case 3:guai1=xiyi;guai2=witch;break; case 4:guai1=witch;guai2=strongman;break; case 5:guai1=strongman;guai2=big_strongman;break; case 6:guai1=bee;guai2=horse;break; case 7:guai1=horse;guai2=lion;break; case 8:guai1=lion;guai2=lions;break; case 17:guai1=asshole;guai2=stone;break; case 11:guai1=fish;guai2=pangxie;break; case 12:guai1=lanjing;guai2=smallshark;break; case 13:guai1=wugui;guai2=shark;break; } if(place.sign<10||place.sign==17) { if(s<6)guai=guai1; else if(s<9)guai=guai2; else { battle=0; SlowDisplay("\n\n\t\t这里安全\n\n\n"); system("pause"); } } else if(place.sign<11) { if(s<5) { battle=1; guai=cxy; } else if(s<9) { battle=1; if(lingpai0>0) { SlowDisplay("程序廖:\n\n\n 哈哈,年轻人,做的不错,不过...嘿嘿,你上当啦!程序猿令牌我要了,校花你也别想带走!\n\n\n"); guai=shitu; } else SlowDisplay("程序廖:\n\n\n 年轻人,你好啊.如果你有程序猿令牌,我可以告诉你校花的下落哦~\n\n\n"); } else { battle=0; SlowDisplay("\n\n\t\t这里安全\n\n\n"); system("pause"); } } else if(place.sign<13) { if(yaoshi1==0&&place.sign==12) { battle=0; SlowDisplay("\n\n\t\t先去海洋一层拿把钥匙吧\n\n\n"); } if(yaoshi2==0&&place.sign==13) { battle=0; SlowDisplay("\n\n\t\t先去海洋二层拿把钥匙吧\n\n\n"); } if(s<4)guai=guai1; else if(s<7)guai=guai2; else if(s<9) { battle=0; printf("\n\n\t\t一群小鱼撞了过来!!!%s受了小伤。\n\n\n",player.name); if(place.sign==12)yaoshi1++; else if(place.sign==13)yaoshi2++; player.health=player.health-5; system("pause"); } else { if(place.sign==12)yaoshi1++; else if(place.sign==13)yaoshi2++; battle=0; SlowDisplay("\n\n\t\t这里安全\n\n\n"); system("pause"); } } else if(place.sign==18) { if(s<7)guai=Bman; else if(s<9) { battle=0; printf("\n\n\t\t齿轮轧到了%s!!!\n\n\n",player.name); player.health=player.health-15; if(player.health<=0) { printf("%s死得很难看\n\n\n",player.name); money-=100; player.health=player.max_health/5; } } else if(place.sign==19) { if(s<3)guai=fashu; else if(s<6)guai=hongshi; else if(s<9)guai=gushi; else { battle=0; SlowDisplay("\n\n\t\t这里安全\n\n\n"); system("pause"); } } else if(place.sign==20) { if(s<5) { battle=1; guai=ccm; } else if(s<9) { battle=1; if(lingpai1>0) { SlowDisplay("\n\n\t\t草泥曦:\n\n\n\t\t\t哈哈,想救校花,先打败我!!\n\n\n"); guai=cnx; } else SlowDisplay("\n\n\t\t草泥曦:\n\n\n\t\t\t年轻人,你好啊.如果你有草泥马令牌,我可以告诉你校花的下落哦~\n\n\n"); } else { battle=0; SlowDisplay("\n\n\t\t这里安全\n\n\n"); system("pause"); } } else if(place.sign==21) { if(s<7)guai=ffk; else if(s<9) { battle=1; if(lingpai2>0) { SlowDisplay("\n\n\t\t法克逸:\n\n\n\t\t\t想救校花?来打架呀!!\n\n\n"); guai=fky; } else SlowDisplay("\n\n\t\t法克逸:\n\n\n\t\t\t年轻人,你好啊.如果你有法克鱿令牌,我可以告诉你校花的下落哦~\n\n\n"); } else { battle=0; SlowDisplay("\n\n\t\t这里安全\n\n\n"); system("pause"); } } else if(place.sign==22) { if(s<4) { battle=0; SlowDisplay("\n\n\t\t前方迷雾重重\n\n\n"); system("pause"); } else { if(lingpai3>0) { guai=zk;//这个由于前面的bug导致无法使用 SlowDisplay("\n\n\t\tHzwer:\n\n\n\t\t\t打败我就可以救出校花,来吧\n\n\n"); } else SlowDisplay("\n\n\t\tHzwer:\n\n\n\t\t\t年轻人,你好啊.如果你有我的令牌,我可以告诉你校花的下落哦~\n\n\n"); } } } if(battle==1) { switch(guai.guai_number) { case 4: SlowDisplay("\n\n\t\t一阵巨响在森林中回响:咚!!!咚!!!咚!!!随即森林巨人王扑了过来!!!\n\n\n"); BattleAct();break; case 5: SlowDisplay("\n\n\t\t一大波狮子飞快的冲了过来!!!\n\n\n"); BattleAct();break; case 12: SlowDisplay("\n\n 巨......龟......以......一......种......慢......到......令......人......绝......望......的......速......度......游......了......过......来......\n\n\n"); BattleAct();break; case 13: printf("\n\n\t\t%s飞快的游了过来!\n\n\n",guai.name); BattleAct();break; case 17 : SlowDisplay("\n\n\t\t小...蓝...鲸...缓...慢...的...游...了...过...来...\n\n\n"); BattleAct();break; case 21: SlowDisplay("\n\n\t\tB-boom投手发现你了!\n\n\n"); BattleAct();break; case 11: SlowDisplay("\n\n\t\t冲了过来,并扇了你一巴掌,大吼一声:你不好好做作业,来这搞什么事情!!!n\n\n"); printf("\t\t(你的HP减少了%d)\n\n\n",guai.attack+s-player.defense/3); player.health-=guai.attack+s-player.defense/3; SlowDisplay("一股神秘力量限制了B-boom的使用\n\n\n"); B=0; if(strcmp(player.name,"Hzwer")==0) { SlowDisplay("Hzwer看着对面那个和自己一样的人,输入了一段代码,对方顿时灰飞烟灭"); Boom(); } BattleAct(); break; default: printf("\n\n\t\t%s%s了过来!\n\n\n",guai.name,guai.a); BattleAct(); } } else OrdinaryAct(); } void BattleAct() { if(place.sign==sea1.sign||place.sign==sea2.sign||place.sign==sea3.sign) if(s2==0)Setjindutiao(20); while(1) { gotoxy(2,5); printf("%sHP:%d ",player.name,player.health); gotoxy(3,5); printf("攻击力%d 防御力%d",player.attack+gong,player.defense+fang); gotoxy(2,40); printf("%sHP:%d ",guai.name,guai.health); gotoxy(3,40); printf("攻击力%d 防御力%d",guai.attack,guai.defense); gotoxy(21,0); puts("============================================================================="); printf("要怎么办?\n\n\n 1,攻击 2,物品 3,查看状态 4,逃跑\n\n\n"); gotoxy(27,0); printf("\t"); gotoxy(27,0); switch(scanf("%d",&choose_number),choose_number) { case 1: s=SuiJi(); gotoxy(4,40); printf("\t\t\t\t"); if(s>=guai.miss||yun!=0) { gotoxy(4,40); printf("-%d\n",player.attack+s+gong-guai.defense/3); guai.health-=player.attack+s+gong-guai.defense/3; if(place.sign==sea1.sign||place.sign==sea2.sign||place.sign==sea3.sign)player.air--; else player.air=player.max_air; if(player.air<=0)player.health=-1; } else { gotoxy(4,40); printf("%s躲开了攻击!\n",guai.name); } if(AttackResult())return; //如果攻击有结果(敌人或玩家战死)退出函数 else continue; case 2:ChooseWupin();break; //选择物品,可以使用,战斗中允许使用攻击性物品 case 3:DisplayState();break; //显示状态 case 4: s=SuiJi(); if(s<4) //40%的概率可以逃跑 { gotoxy(4,5); printf("%s逃跑了~\n\n\n",player.name); battle=0; return; } else if(s<7) { gotoxy(4,5); printf("%s逃跑失败!还遭到了%s的反攻!!!\n\n\n",player.name,guai.name); if(AttackResult())return; //如果攻击有结果(敌人或玩家战死)退出函数 else continue; } else { gotoxy(4,5); printf("%s逃跑失败!\n\n\n",player.name); } break; default:MessageBox(NULL,"错误!","警告",MB_OK); } s2=1; } }
void Menu() { gotoxy(4,30);puts("1、物品"); gotoxy(6,30);puts("2、对话"); gotoxy(8,30);puts("3、状态"); gotoxy(10,30);puts("4、装备"); gotoxy(12,30);puts("0、退出"); switch(scanf("%d",&choose_number),choose_number) { case 1: ChooseWupin();break; //显示道具,并可以使用. case 2: Setjindutiao(25); //对话选项 if(place.sign==bar.sign) { SlowDisplay("要和谁说话?\n\n\n1,红发女郎 2,赏金猎人 3,酒吧老板 4,道具店老板\n\n\n"); //显示对话人物 scanf("%d",&choose_number); Setjindutiao(25); switch(choose_number) { case 1: SlowDisplay("红发女郎:\n\n\n 吧台边那个Hunter好帅啊!(~脸红~)\n\n\n听说他经常外出打猎,外面的路他应该很熟悉的!\n\n\n"); break; case 2: if(player.level<=30) SlowDisplay("赏金猎人:\n\n\n 年轻人!\n\n\n 你需要从山脉里的怪兽开始,\n\n\n 打败森林最深处的巨人王!\n\n\n 最后打败4位好人才可以救回校花!\n\n\n"); if(player.level>30) SlowDisplay("赏金猎人:\n\n\n FUCK !!!!!!!!!!!!!!!!!,你这么强了,还找我干铞\n\n\n"); break; case 3: choose_number=1; while(choose_number) { SlowDisplay("要喝点什么?\n\n\n 1,二锅头20金币 HP+30 2,XO酒50金币 HP+100 3,人头马100金币 HP+150 4,我要卖东西 0,返回\n\n\n"); scanf("%d",&choose_number); Setjindutiao(25); switch(choose_number) { case 1:if(money<20) { SlowDisplay("钱不够!"); } else { if(player.health+30<=player.max_health) { SlowDisplay("HP+30."); money-=20; player.health+=30; } else { SlowDisplay("HP满了"); player.health=player.max_health; } } break; case 2:if(money<50) { SlowDisplay("钱不够!"); } else { if(player.health+80<=player.max_health) { SlowDisplay("HP+80."); money-=50; player.health+=80; } else { SlowDisplay("HP满了"); player.health=player.max_health; } } break; case 3:if(money<100) { SlowDisplay("钱不够!"); } else { if(player.health+150<=player.max_health) { SlowDisplay("HP+150."); money-=100; player.health+=150; } else { SlowDisplay("HP满了"); player.health=player.max_health; } } break; case 4: while(choose_number) { SlowDisplay("要卖啥? 1,匕首50金币 2,长剑100金币 3,布衣50金币 4,铁甲100金币 0,返回\n\n\n"); scanf("%d",&choose_number); Setjindutiao(25); switch(choose_number) { case 1:if(gong1n>1) { SlowDisplay("金币加50.\n"); gong1n--; money+=50; } else { SlowDisplay("匕首不够\n"); } break; case 2:if(gong2n>1) { SlowDisplay("金币加100.\n"); gong2n--; money+=100; } else { SlowDisplay("长剑不够\n"); } break; case 3:if(fang1n>1) { SlowDisplay("金币加50.\n"); fang1n--; money+=50; } else { SlowDisplay("布衣不够\n"); } break; case 4:if(fang2n>1) { SlowDisplay("金币加100.\n"); fang2n--; money+=10; } else { SlowDisplay("铁甲不够\n"); } break; case 0:SlowDisplay("下次再来!\n");break; default:MessageBox(NULL,"错误!","警告",MB_OK); } } break; case 0:SlowDisplay("下次再来!\n");break; default:MessageBox(NULL,"错误!","警告",MB_OK); } } break; case 4: choose_number=1; while(choose_number) { SlowDisplay("要买点什么?\n\n\n 1:止血草100金币 2:急救包180金币 3:云南白药200金币 4:手雷150金币 5:氧气袋100金币 6:电棍1200金币 7:鱼雷500金币 0,返回\n\n\n"); scanf("%d",&choose_number); Setjindutiao(25); switch(choose_number) { case 1:if(money<100) { SlowDisplay("钱不够!\n"); } else { SlowDisplay("止血草+1\n"); money=money-100; cao++; } break; case 2:if(money<180) { SlowDisplay("钱不够!\n"); } else { SlowDisplay("急救包+1\n"); money=money-180; jijiubao++; } break; case 3:if(money<200) { SlowDisplay("钱不够!\n"); } else { SlowDisplay("云南白药+1\n"); money=money-200; baiyao++; } break; case 4:if(money<150) { SlowDisplay("钱不够!\n"); } else { SlowDisplay("手雷+1\n"); money=money-150; boom++; } break; case 5:if(money<100) { SlowDisplay("钱不够!\n"); } else { SlowDisplay("氧气袋+1\n"); money=money-100; aircase++; } break; case 6:if(money<1200) { SlowDisplay("钱不够!\n"); } else { SlowDisplay("电棍+1\n"); money=money-1200; diangun++; } break; case 7:if(money<500) { SlowDisplay("钱不够!\n"); } else { SlowDisplay("鱼雷+1\n"); money=money-500; yulei++; } break; case 0:SlowDisplay("下次在来!\n");break; default:MessageBox(NULL,"错误!","警告",MB_OK); } } case 5: printf("这些是我最新研制的心法:\n\n\n 1,秘药 10金币,回魔30\n\n\n 2,魔法卷轴 500金币\n\n\n 3,猩红卷轴 魔法卷轴+猩红精华\n\n\n 4,远古卷轴 魔法卷轴+远古精华\n\n\n 5大爆菊术 伤害150 耗魔30 等级要求15 魔法卷轴消耗10\n\n\n 6,饮血 伤害100 耗魔25 等级要求25 猩红卷轴消耗14 偷窃一定生命\n\n\n 7,太极生万物 伤害50 耗魔150 等级要求50 远古卷轴消耗20 状态全满 消耗性法术\n\n\n 0,离开\n\n\n"); choose_number=1; while(choose_number) { switch(scanf("%d",&choose_number),choose_number) { case 1:if(money<10) { SlowDisplay("钱不够!\n\n\n"); } else { if(player.mp+diaozhui1nn/4+30<=diaozhui1nn/4+player.max_mp) { SlowDisplay("MP+20.\n\n\n"); money-=10; player.mp+=30; } else { SlowDisplay("MP满了\n\n\n"); player.mp=player.max_mp; } } break; case 2: { if(money<500) { SlowDisplay("钱不够!\n\n\n"); } else { printf("这是你的了\n\n\n"); money-=500; juan1++; } } break; case 3: if(juan1<1||honghua<1) { SlowDisplay("材料不够!\n\n\n"); } else if(juan1>=1&&honghua>=1) { printf("合成了猩红卷轴!\n\n\n"); juan1--; honghua--; juan2++; } break; case 4: if(juan1<1||guhua<1) { SlowDisplay("材料不够!\n\n\n"); } else if(juan1>=1&&guhua>=1) { printf("合成了远古卷轴!\n\n\n"); juan1--; guhua--; juan3++; } break; { case 5:if(player.level<15||juan1<10) { SlowDisplay("你的力量还不够!\n\n\n"); } else { if(player.level>=15&&juan1>=10) { SlowDisplay("爆菊心法尽收脑海\n\n\n"); juan1-=10; dbjs++; } } break; case 6:if(player.level<25||juan2<14) { SlowDisplay("你的心理承受能力还不够!\n\n\n"); } else { if(player.level>=25&&juan2>=14) { SlowDisplay("恐怖的声音在心中回响\n\n\n"); juan2-=14; yinxie++; } } break; case 7:if(player.level<50||juan3<20) { SlowDisplay("你的力量还不够!\n\n\n"); } else { if(player.level>=50&&juan3>=20) { SlowDisplay("伏羲的幻影悄悄浮现\n\n\n"); juan3-=20; tjsww++; } } break; case 0:SlowDisplay("去吧,加油!!!\n\n\n"); break; default:MessageBox(NULL,"错误!","警告",MB_OK); } } } case 0:SlowDisplay("下次在来!\n");break; default:MessageBox(NULL,"错误!","警告",MB_OK); } } else SlowDisplay("这里好像没人可以聊天\n\n\n"); break; case 3: Setjindutiao(25);DisplayState(); break; //显示状态 case 4: Setjindutiao(25);//装备 printf("攻装: 1,匕首:%d个 2,长剑:%d个 3,碧血剑:%d个 4,绝世好剑:%d个 9,狂鲨利齿:%d个\n\n\n",gong1n,gong2n,gong3n,gong4n,gong5n); printf("防装: 5,布衣:%d个 6,铁甲:%d个 7,银甲:%d个 8,黄金圣衣:%d个 10,神龟之盾:%d个\t\t0,返回\n\n\n",fang1n,fang2n,fang3n,fang4n,fang5n); printf("饰品:11,程序猿吊坠%d(生命,法术) 12,草泥马吊坠%d(攻击) 13,法克鱿吊坠%d(防御)\n\n\n",diaozhui1n,diaozhui2n,diaozhui3n); SlowDisplay("选择要装备的武器或防具:\n\n\n"); switch(scanf("%d",&choose_number),choose_number) { case 1:if(gong1n>=1) { SlowDisplay("拿起了匕首\n\n\n"); gong=gong1; strcpy(gongname,"匕首"); } else SlowDisplay("你没有匕首可以装备\n\n\n"); break; case 2:if(gong2n>=1) { SlowDisplay("拿起了长剑\n\n\n"); gong=gong2; strcpy(gongname,"长剑"); } else SlowDisplay("你没有长剑可以装备\n\n\n"); break; case 3:if(gong3n>=1) { SlowDisplay("拿起了碧血剑\n\n\n"); gong=gong3; strcpy(gongname,"碧血剑"); } else SlowDisplay("你没有碧血剑可以装备\n\n\n"); break; case 4:if(gong4n>=1) { SlowDisplay("拿起了绝世好剑\n\n\n"); gong=gong4; strcpy(gongname,"绝世好剑"); } else SlowDisplay("你没有绝世好剑可以装备\n\n\n"); break; case 5:if(fang1n>=1) { SlowDisplay("穿上了布衣\n\n\n"); fang=fang1; strcpy(fangname,"布衣"); } else SlowDisplay("你没有布衣可以装备\n\n\n"); break; case 6:if(fang2>=1) { SlowDisplay("穿上了铁甲\n\n\n"); fang=fang2; strcpy(fangname,"铁甲"); } else SlowDisplay("你没有铁甲可以装备\n\n\n"); break; case 7:if(fang3n>=1) { SlowDisplay("穿上了银甲\n\n\n"); fang=fang3; strcpy(fangname,"银甲"); } else SlowDisplay("你没有银甲可以装备\n\n\n"); break; case 8:if(fang4n>=1) { SlowDisplay("穿上了黄金圣衣\n\n\n"); fang=fang4; strcpy(fangname,"黄金圣衣"); } else SlowDisplay("你没有黄金圣衣可以装备\n\n\n"); break; case 9:if(gong5n>=1) { SlowDisplay("拿起了狂鲨利齿\n\n\n"); gong=gong5; strcpy(gongname,"狂鲨利齿"); } else SlowDisplay("你没有狂鲨利齿可以装备\n\n\n"); break; case 10:if(fang5n>=1) { SlowDisplay("拿起了神龟之盾\n\n\n"); fang=fang5; strcpy(fangname,"神龟之盾"); } else SlowDisplay("你没有神龟之盾可以装备\n\n\n"); break; case 11:if(diaozhui1n>=1) { SlowDisplay("戴上了程序猿吊坠\n\n\n"); diaozhui1nn=diaozhui1; strcpy(diaozhui1name,"程序猿吊坠"); } else SlowDisplay("你没有程序猿吊坠可以装备\n\n\n"); break; case 12:if(diaozhui2n>=1) { SlowDisplay("戴上了草泥马吊坠\n\n\n"); diaozhui2nn=diaozhui2; strcpy(diaozhui2name,"草泥马吊坠"); } else SlowDisplay("你没有草泥马吊坠可以装备\n\n\n"); break; case 13:if(diaozhui3n>=1) { SlowDisplay("戴上了法克鱿吊坠\n\n\n"); diaozhui3nn=diaozhui3; strcpy(diaozhui3name,"法克鱿吊坠"); } else SlowDisplay("你没有法克鱿吊坠可以装备\n\n\n"); break; case 0:SlowDisplay("未更换装备\n\n\n");break; default:MessageBox(NULL,"错误!","警告",MB_OK); } break; case 0:Setjindutiao(25); res=MessageBox(NULL,"确定退出游戏?","提示",MB_YESNO); if(res==IDYES) { MessageBox(NULL,"数据存储中","提示",MB_OK); //向文件中更新数据; getchar(); MessageBox(NULL,"退出","注意",MB_OK); return; } else MessageBox(NULL,"继续游戏!","提示",MB_OK); break; default:MessageBox(NULL,"错误!","警告",MB_OK); } }
void Map(char n[50],char s[50],char w[50],char e[50]) { gotoxy(8,48);printf("%c北(w): %s",24,n);gotoxy(12,48);printf("%c南(s): %s",25,s); gotoxy(10,32);printf("西(a): %s%c",w,27);gotoxy(10,52);printf("%c东(d): %s",26,e); } void Map2() { gotoxy(8,24);printf("%c(1): %s\t%c(2): %s\t%c(3): %s\t%c(4): %s\t",26,fujin1,26,fujin2,26,fujin3,26,fujin4); } void Yidong1() { switch(proof) { case '1':place=bar;system("color 6F");break; case '2':place=hotel;system("color 1F");break; case '3':place=fsyg;system("color 1F");break; case '4':system("color 8F"); SlowDisplay("秘道纵横交错,你误打误撞地来到了"); s=SuiJi(); if(s<6) { printf("%s",mesh.name); place=mesh; Battle(); } else {//bug: 到了基地发现在机械之城 printf("%s",jd.name); place=jd; Battle(); } break; case '5':place=school;system("color 0F");break; default:MessageBox(NULL,"错误!","警告",MB_OK); } } void Yidong2() { switch(proof) { case '1':place=forest;break; case '2':place=forest1;Battle();break; case '3':place=forest2;Battle();break; case '4':place=forest3;Battle();break; case '5':place=school;system("color 0F");break; default:MessageBox(NULL,"错误!","警告",MB_OK); } } void Yidong3() { switch(proof) { case '1':place=grass;break; case '2':place=grass1;Battle();break; case '3':place=grass2;Battle();break; case '4':place=grass3;Battle();break; case '5':place=school;system("color 0F");break; default:MessageBox(NULL,"错误!","警告",MB_OK); } } void Yidong4() { switch(proof) { case '1':place=sea;break; case '2':place=sea1;Battle();break; case '3':place=sea2;Battle();break; case '4':place=sea3;Battle();break; case '5':place=school;system("color 0F");break; default:MessageBox(NULL,"错误!","警告",MB_OK); } } void Yidong5() { switch(proof) { case '1':place=mlgb;Battle();break; case '2':place=cnm;Battle();break; case '3':place=fkk;Battle();break; case '4':place=zysd; system("color E0"); printf("勇士,有什么事:1,领悟职业技能 2,购买职业顶级装备 0,返回\n\n\n"); choose_number=1; while(choose_number) { switch(scanf("%d",&choose_number),choose_number) { case 1: SlowDisplay("1 坦克专属 万仞崩山破\n2 战士专属 大荒芜经\n3 刺客专属 地狱之魂\n4 法师专属 佛怒火莲\n5 射手专属 狂风之息\n0 返回\n以上技能来源于游戏或小说,如有侵权请找陈曦\n\n\n"); choose_number=1; while(choose_number) { scanf("%d",&choose_number); Setjindutiao(20); switch(choose_number) { case 1: if(n==1) { SlowDisplay("领悟成功\n\n\n"); wrbsp++; n++; strcpy(zyname,"万仞崩山破"); } else SlowDisplay("滚!\n\n\n"); break; case 2: if(nn==1) { SlowDisplay("领悟成功\n\n\n"); dhwj++; nn++; strcpy(zyname,"大荒芜经"); } else SlowDisplay("滚!\n\n\n"); break; case 3: if(nnn==1) { SlowDisplay("领悟成功\n\n\n"); dysls++; nnn++; strcpy(zyname,"地狱之魂"); } else SlowDisplay("滚!\n\n\n"); break; case 4: if(nnnn==1) { SlowDisplay("领悟成功\n\n\n"); fnhl++; nnnn++; strcpy(zyname,"佛怒火莲"); } else SlowDisplay("滚!\n\n\n"); break; case 5: if(nnnnn==1) { SlowDisplay("领悟成功\n\n\n"); kfzx++; nnnnn++; strcpy(zyname,"狂风之息"); } else SlowDisplay("滚!\n\n\n"); break; case 0: SlowDisplay("走你!!!\n\n\n"); OrdinaryAct() ; break; } } break; case 2:SlowDisplay("此部分暂未完成,下次再来吧");break; case 0: SlowDisplay("走你!!!\n\n\n"); OrdinaryAct() ; break; } } case '5':place=school;system("color 0F");break; case '6':place=mountain;system("color E0");break; default:MessageBox(NULL,"错误!","警告",MB_OK); } } void Setjindutiao(int p) { Sleep(100); system("cls"); HWND hConsole = FindWindow("ConsoleWindowClass", NULL); POINT pt; GetCursorPos(&pt); GetLocalTime(&Time); int s=Time.wHour; int f=Time.wMinute; gotoxy(0,0); SetConsoleTitle("勇者游戏2"); //标题 COORD pos; //定义一个位置变量 puts("李昊逸制作") ; puts("╔═══════════════════════════════╗"); puts("║\t\t\t\t\t\t\t\t║"); puts("╚═══════════════════════════════╝"); printf("\t正在分析情况:%d:%d",s,f); printf("\t勇者游戏\t"); if(battle==1)printf("战斗!!!"); gotoxy(2,2); for(int i=0;i<31;i++) { Sleep(p); printf("■"); } system("cls"); } void Boom() { gotoxy(17,74);puts("o");system("cls"); gotoxy(15,74);puts("+");gotoxy(17,70);puts("+ +");gotoxy(19,74);puts("+");system("cls"); gotoxy(13,74);puts("+");gotoxy(15,68);puts("+ +");gotoxy(17,66);puts("+ +");gotoxy(19,68);puts("+ +");gotoxy(21,74);puts("+");system("cls"); gotoxy(11,74);puts("+");gotoxy(13,66);puts("+ +");gotoxy(17,62);puts("+ +");gotoxy(21,66);puts("+ +");gotoxy(23,74);puts("+");system("cls"); gotoxy(2,74);puts("+");gotoxy(3,64);puts("+ +");gotoxy(5,56);puts("+ +");gotoxy(8,50);puts("+ +");gotoxy(12,46);puts("+ +"); gotoxy(17,44);puts("+ +");gotoxy(22,46);puts("+ +");gotoxy(25,50);puts("+ +");gotoxy(28,56);puts("+ +"); gotoxy(30,64);puts("+ +");gotoxy(31,74);puts("+");system("cls"); gotoxy(13,0); puts("\t\t\t\t\t■■■■■ ■■■■■ ■■■■■ ■■ ■■ ■"); puts("\t\t\t\t\t■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■"); puts("\t\t\t\t\t■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■"); puts("\t\t\t\t\t■■■■ ■ ■ ■ ■ ■ ■■ ■ ■"); puts("\t\t\t\t\t■ ■ ■ ■ ■ ■ ■ ■ ■ ■"); puts("\t\t\t\t\t■ ■ ■ ■ ■ ■ ■ ■ ■ "); puts("\t\t\t\t\t■■■■■ ■■■■■ ■■■■■ ■ ■ ■ ■"); guai.health-=6666; Setjindutiao(20); } void SlowDisplay(char *p) { while(1) { if(*p!=0) printf("%c",*p++); else break; Sleep(75); } } void gotoxy(int x, int y) { HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE); COORD c = { y, x }; SetConsoleCursorPosition(hOut, c); }