搜索
查看: 3258|回复: 10
打印 上一主题 下一主题

[原创] 【灭龙传说】V1.2版本,源代码

[复制链接]
跳转到指定楼层
楼主
发表于 2014-4-21 11:49:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

灭龙传说

    嘿嘿,源代码发布了,请大家测试修改啊,中间BUG很多,其中购买和出售物品时若输入字母就会卡死,也一直没有处理这个问题,战斗的判断也不是很好,嗯,这个版本暂时就这样,下个版本尽量完善所有功能吧。


源代码: 灭龙传说V1.2.c (33.83 KB, 下载次数: 74)

评分

参与人数 1啊哈币 +5 收起 理由
李掌柜 + 5 介个必须赞一个~~

查看全部评分

沙发
发表于 2014-4-21 11:51:28 | 只看该作者
说好的不是一个.c文件呢
板凳
 楼主| 发表于 2014-4-21 11:52:32 | 只看该作者
rosynirvana 发表于 2014-4-21 11:51
说好的不是一个.c文件呢

哦,分开也可以啊,太麻烦了
地板
发表于 2014-4-21 14:58:23 | 只看该作者
winkill 发表于 2014-4-21 11:52
哦,分开也可以啊,太麻烦了

你会链接吗?
5#
 楼主| 发表于 2014-4-21 15:02:02 | 只看该作者

....................................你猜
6#
发表于 2014-4-21 15:32:02 | 只看该作者
winkill 发表于 2014-4-21 15:02
....................................你猜


不猜            
7#
发表于 2014-4-27 14:39:01 | 只看该作者
winkill 发表于 2014-4-21 15:02
....................................你猜

不会                       
8#
发表于 2014-5-15 19:31:38 | 只看该作者
……怎么运行了之后是个空文件?
9#
发表于 2018-9-15 17:17:37 | 只看该作者
旅行青蛙代码
  1. #include <bits/stdc++.h>
  2. #include <string>
  3. #include <windows.h>
  4. #define version "1.0.1"
  5. #define ut 10000000ll
  6. #define inf 2147483647
  7. using namespace std;

  8. int tempi;
  9. bool isathome;
  10. unsigned int foodchosen;
  11. unsigned int luckchosen;
  12. unsigned int usechosen;
  13. bool settled;
  14. map <int,int> w;

  15. class frog{
  16.     public:
  17.         unsigned long long outtime,lasttime;
  18.         string name;
  19. };

  20. class game{
  21.     public:
  22.         frog yourfrog;
  23.         unsigned int clover;
  24.         unsigned int lottery;
  25.         unsigned int things[40];
  26.         unsigned int lasttime;
  27. };

  28. unsigned int chosen[40]={0};
  29. string tn[40]={"葡萄干司康","鹅肠菜三明治","南瓜百吉饼","乳蛋饼","艾蒿小麦饼",
  30.                 "胡葱炸面包","胡萝卜饼干","南瓜饼干","毛豆饼干","牛奶饼干","牛蒡饼干",
  31.                 "草莓金平糖","柠檬金平糖","葡萄金平糖","蜜瓜金平糖","四叶草",
  32.                 "黄色护身符","白色护身符","红色护身符","蓝色护身符","桃色护身符",
  33.                 "东国车票","西国车票","南国车票","北国车票","幸运之铃",
  34.                 "头巾(地)","头巾(木)","头巾(装)","天然帐篷","时髦帐篷","高档帐篷",
  35.                 "透明的碗","木碗","漆器","蜡烛","手提灯笼","欧式提灯"};
  36. unsigned int price[40]={10,20,50,80,100,
  37.                         100,inf,inf,inf,inf,inf,
  38.                         inf,inf,inf,inf,inf,
  39.                         inf,inf,inf,inf,inf,
  40.                         inf,inf,inf,inf,3000,
  41.                         150,250,400,300,450,750,
  42.                         450,700,1200,600,900,1500};

  43. game yourgame;

  44. void save(){
  45.     FILE * out=fopen("tabikaeru.txt","w");
  46.     fprintf(out,"%s\n",yourgame.yourfrog.name.c_str());
  47.     fprintf(out,"%llu\n%llu\n",yourgame.yourfrog.outtime,yourgame.yourfrog.lasttime);
  48.     fprintf(out,"%u\n%u\n",yourgame.clover,yourgame.lottery);
  49.     fprintf(out,"%d\n%u\n%u\n%u\n",settled,foodchosen,luckchosen,usechosen);
  50.     for (int i=0;i<39;i++) fprintf(out,"%u\n",yourgame.things[i]);
  51.     fprintf(out,"%u\n",yourgame.lasttime);
  52.     fprintf(out,"%d\n",isathome);
  53.     fclose(out);
  54. }

  55. void read(){
  56.     ifstream in("tabikaeru.txt");
  57.     in>>yourgame.yourfrog.name>>yourgame.yourfrog.outtime>>yourgame.yourfrog.lasttime>>yourgame.clover>>yourgame.lottery;
  58.     in>>settled>>foodchosen>>luckchosen>>usechosen;
  59.     for (int i=0;i<39;i++) in>>yourgame.things[i];
  60.     in>>yourgame.lasttime;
  61.     in>>isathome;
  62.     in.close();
  63. }

  64. void delay(long long t){
  65.     for (int i=0;i<t;i++);
  66. }

  67. void welcome(){
  68.     cout<<"旅行青蛙  version"<<version<<"  by Flokirie"<<endl;
  69.     delay(40*ut);
  70.     for (int i=0;i<=100;i++){
  71.         printf("加载中……   %d%%\r",i);
  72.         delay(2*ut);
  73.     }
  74.     delay(30*ut);
  75.     cout<<endl<<endl<<"加载完成!"<<endl;
  76.     delay(60*ut);
  77. }

  78. string input(string s){
  79.     cout<<">>>";
  80.     cin>>s;
  81.     return s;
  82. }

  83. int input(int i){
  84.     cout<<">>>";
  85.     cin>>i;
  86.     return i;
  87. }

  88. int result(int num){
  89.     if (num>32000) {
  90.         return 1;
  91.     }
  92.     else if (num>30000){
  93.         return 2;
  94.     }
  95.     else if (num>24000){
  96.         return 3;
  97.     }
  98.     else if (num>14000){
  99.         return 4;
  100.     }
  101.     else return 5;
  102. }

  103. void init(){
  104.     cout<<endl<<"这里是你的花园。";
  105.     delay(75*ut);
  106.     cout<<endl<<"去家里看看吧。";
  107.     delay(75*ut);
  108.     cout<<endl<<"这是你家的青蛙。";
  109.     delay(60*ut);
  110.     cout<<endl<<"它可是一只爱旅行的青蛙。";
  111.     delay(80*ut);
  112.     cout<<endl<<"给它取个名字吧(最大5文字):\n※以后还可以更改"<<endl;
  113.     yourgame.yourfrog.name=input(yourgame.yourfrog.name);
  114.     delay(40*ut);
  115.     cout<<yourgame.yourfrog.name<<"正在收拾行囊,看起来很开心。"<<endl;
  116.     delay(55*ut);
  117.     cout<<"让我们再次来到花园。"<<endl;
  118.     delay(50*ut);
  119.     cout<<"看那些三叶草啊!"<<endl;
  120.     delay(50*ut);
  121.     cout<<"快去收割它们吧。"<<endl;
  122.     delay(35*ut);
  123.     cout<<"\n选项\n1.收割三叶草"<<endl;
  124.     delay(28*ut);
  125.     while (input(tempi)!=1){
  126.         cout<<"输入有误!请重新输入:"<<endl;
  127.         delay(25*ut);
  128.     }
  129.     delay(35*ut);
  130.     cout<<"三叶草 19 已获得"<<endl;
  131.     delay(35*ut);
  132.     yourgame.clover+=19;
  133.     cout<<"还获得了 四叶草 1"<<endl;
  134.     delay(50*ut);
  135.     cout<<"现在,去商店为"<<yourgame.yourfrog.name<<"做些准备吧。"<<endl;
  136.     delay(32*ut);
  137.     cout<<"\n选项\n1.商店"<<endl;
  138.     while (input(tempi)!=1){
  139.         cout<<"输入有误!请重新输入:"<<endl;
  140.         delay(25*ut);
  141.     }
  142.     delay(50*ut);
  143.     cout<<"现在也没什么可买的,我们买个葡萄干司康吧。"<<endl;
  144.     delay(55*ut);
  145.     cout<<"\n购买:\n1.葡萄干司康(10 三叶草)\n";
  146.     delay(30*ut);
  147.     while (input(tempi)!=1){
  148.         cout<<"输入有误!请重新输入:"<<endl;
  149.         delay(25*ut);
  150.     }
  151.     yourgame.clover-=10;
  152.     delay(27*ut);
  153.     cout<<"好,去帮"<<yourgame.yourfrog.name<<"准备行囊吧:" ;
  154.     delay(50*ut);
  155.     cout<<"\n\n选项:\n1.回家\n";
  156.     delay(30*ut);
  157.     while (input(tempi)!=1){
  158.         cout<<"输入有误!请重新输入:"<<endl;
  159.         delay(25*ut);
  160.     }
  161.     delay(30*ut);
  162.     cout<<"\n选项:\n1.收拾行囊\n";
  163.     delay(30*ut);
  164.     while (input(tempi)!=1){
  165.         cout<<"输入有误!请重新输入:"<<endl;
  166.         delay(25*ut);
  167.     }
  168.     delay(30*ut);
  169.     cout<<"\n行囊:\n1.便当\n";
  170.     delay(30*ut);
  171.     while (input(tempi)!=1){
  172.         cout<<"输入有误!请重新输入:"<<endl;
  173.         delay(25*ut);
  174.     }
  175.     delay(28*ut);
  176.     cout<<"\n便当:\n1.葡萄干司康 (所持 1)\n";
  177.     delay(30*ut);
  178.     while (input(tempi)!=1){
  179.         cout<<"输入有误!请重新输入:"<<endl;
  180.         delay(25*ut);
  181.     }
  182.     delay(28*ut);
  183.     cout<<"\n行囊:\n1.幸运物\n";
  184.     delay(30*ut);
  185.     while (input(tempi)!=1){
  186.         cout<<"输入有误!请重新输入:"<<endl;
  187.         delay(25*ut);
  188.     }
  189.     delay(27*ut);
  190.     cout<<"\n幸运物:\n1.四叶草 (所持 1)\n";
  191.     delay(30*ut);
  192.     while (input(tempi)!=1){
  193.         cout<<"输入有误!请重新输入:"<<endl;
  194.         delay(25*ut);
  195.     }
  196.     delay(30*ut);
  197.     cout<<"\n行囊:\n1.确定\n";
  198.     delay(30*ut);
  199.     while (input(tempi)!=1){
  200.         cout<<"输入有误!请重新输入:"<<endl;
  201.         delay(25*ut);
  202.     }
  203.     delay(35*ut);
  204.     cout<<"你已经为"<<yourgame.yourfrog.name<<"完成了旅行准备。"<<endl;
  205.     cout<<"※由于这是教程,所以"<<yourgame.yourfrog.name<<"会在重启本程序后踏上旅程。";
  206.     Sleep(1000);
  207.     yourgame.yourfrog.outtime=time(0)+1;
  208.     yourgame.yourfrog.lasttime=1800;
  209.     yourgame.lasttime=time(0)+1;
  210.     save();
  211. }

  212. void play();
  213. void shop();
  214. void garden();
  215. void home();
  216. void bedroom();
  217. void prize();
  218. void buy();

  219. /*
  220. 0 葡萄干司康 1 鹅肠菜三明治 2 南瓜百吉饼 3 乳蛋饼 4 艾蒿小麦饼 5 胡葱炸面包 6~10 饼干 11~14 金平糖
  221. 15 四叶草 16~20 护身符 21~24 车票 25 幸运铃
  222. 26~29 头巾 30~32 帐篷 33~35 漆器 36~38 提灯  
  223. */

  224. int main(){
  225.     srand(time(0));
  226.     welcome();
  227.     FILE * in=fopen("tabikaeru.txt","r");
  228.     if (in==NULL){
  229.         init();
  230.     }
  231.     else{
  232.         read();
  233.         play();
  234.         save();
  235.     }
  236.     return 0;
  237. }

  238. void play(){
  239.     if (isathome==0 &&(unsigned long long)(time(0))>yourgame.yourfrog.outtime+yourgame.yourfrog.lasttime){
  240.         cout<<yourgame.yourfrog.name<<"已经回来了"<<endl;
  241.         isathome=1;
  242.         delay(80*ut);
  243.     }
  244.     else if (isathome){
  245.         cout<<yourgame.yourfrog.name<<"在家里。"<<endl;
  246.     }
  247.     else if ((unsigned long long)(time(0))>yourgame.yourfrog.outtime) {
  248.         cout<<yourgame.yourfrog.name<<"已经踏上旅程"<<endl;
  249.         isathome=0;
  250.         delay(80*ut);
  251.     }
  252.     else isathome=0;
  253.     garden();
  254.     return;
  255. }

  256. void shop(){
  257.     delay(40*ut);
  258.     cout<<"\n这里是商店。"<<endl<<endl;
  259.     delay(35*ut);
  260.     cout<<"选项:\n1.抽奖\n2.买东西\n3.回家\n4.去花园\n";
  261.     delay(30*ut);
  262.     tempi=input(tempi);
  263.     while(tempi>4 || tempi<1){
  264.         cout<<"输入有误!请重新输入:"<<endl;
  265.         delay(25*ut);
  266.         tempi=input(tempi);
  267.     }
  268.     delay(30*ut);
  269.     switch(tempi){
  270.         case 1:
  271.             prize();
  272.             break;
  273.         case 2:
  274.             buy();
  275.             break;
  276.         case 3:
  277.             home();
  278.             break;
  279.         case 4:
  280.             garden();
  281.             break;
  282.     }
  283. }

  284. void garden(){
  285.     delay(40*ut);
  286.     cout<<"\n这是你的花园。"<<endl<<endl;
  287.     delay(35*ut);
  288.     a:  cout<<"选项:\n1.收割三叶草\n2.回家\n3.去商店\n4.去里屋\n5.充值\n6.保存并退出\n";
  289.     delay(30*ut);
  290.     tempi=input(tempi);
  291.     while(tempi>6 || tempi<1){
  292.         cout<<"输入有误!请重新输入:"<<endl;
  293.         delay(25*ut);
  294.         tempi=input(tempi);
  295.     }
  296.     delay(30*ut);
  297.     switch(tempi){
  298.         case 2:
  299.             home();
  300.             break;
  301.         case 3:
  302.             shop();
  303.             break;
  304.         case 4:
  305.             bedroom();
  306.             break;
  307.         case 5:
  308.             cout<<"就这C++版旅行青蛙还想充值?"<<endl;
  309.             delay(35*ut);
  310.             goto a;
  311.         case 6:
  312.             save();
  313.             break;
  314.         case 1:
  315.             int numb=max(min((int)((time(0)-yourgame.lasttime)/500),20),0);
  316.             int four=0;
  317.             for (int i=0;i<numb;i++){
  318.                 if (rand()%300==0) four++;
  319.             }
  320.             if (four) four=1;
  321.             cout<<"三叶草 "<<numb-four<<" 已获得"<<endl;
  322.             delay(35*ut);
  323.             yourgame.clover+=numb-four;
  324.             if (four)
  325.             {
  326.                 cout<<"还获得了 四叶草 1"<<endl;
  327.                 yourgame.things[15]++;
  328.             }
  329.             yourgame.lasttime=time(0)+1;
  330.             delay(28);
  331.             goto a;
  332.             break;
  333.     }
  334. }

  335. void home(){
  336.     delay(30*ut);
  337.     cout<<"这里是你的家。"<<endl;
  338.     delay(32*ut);
  339.     if (!isathome){
  340.         c:  cout<<"选项:\n1.去花园\n2.去商店\n3.去里屋\n4.保存并退出\n";
  341.         delay(30*ut);
  342.         tempi=input(tempi);
  343.         while(tempi>4 || tempi<1){
  344.             cout<<"输入有误!请重新输入:"<<endl;
  345.             delay(25*ut);
  346.             tempi=input(tempi);
  347.         }
  348.         delay(30*ut);
  349.         switch(tempi){
  350.             case 1:
  351.                 garden();
  352.                 break;
  353.             case 2:
  354.                 shop();
  355.                 break;
  356.             case 3:
  357.                 bedroom();
  358.                 break;
  359.             case 4:
  360.                 save();
  361.                 break;
  362.         }
  363.     }
  364.     else{
  365.         cc: cout<<"选项:\n1.去花园\n2.去商店\n3.去里屋\n4.给蛙改名\n5.收拾行囊\n6.保存并退出\n";
  366.         delay(30*ut);
  367.         tempi=input(tempi);
  368.         while(tempi>6 || tempi<1){
  369.             cout<<"输入有误!请重新输入:"<<endl;
  370.             delay(25*ut);
  371.             tempi=input(tempi);
  372.         }
  373.         delay(30*ut);
  374.         switch(tempi){
  375.             case 1:
  376.                 garden();
  377.                 break;
  378.             case 2:
  379.                 shop();
  380.                 break;
  381.             case 3:
  382.                 bedroom();
  383.                 break;
  384.             case 4:
  385.                 cout<<"请输入蛙的新名字(最大5文字):"<<endl;
  386.                 delay(35*ut);
  387.                 yourgame.yourfrog.name=input(yourgame.yourfrog.name);
  388.                 goto cc;
  389.                 break;
  390.             case 5:
  391.                 if (settled){
  392.                     cout<<"行囊已经准备好了!"<<endl;
  393.                     delay(40*ut);
  394.                     goto c;
  395.                 }
  396.                 d:  cout<<"\n行囊:\n1.便当\n2.幸运物\n3.用具\n4.确认\n5.返回选项\n";
  397.                 delay(40*ut);
  398.                 tempi=input(tempi);
  399.                 while(tempi>5 || tempi<1){
  400.                     cout<<"输入有误!请重新输入:"<<endl;
  401.                     delay(25*ut);
  402.                     tempi=input(tempi);
  403.                 }
  404.                 delay(30*ut);
  405.                 switch (tempi){
  406.                     case 1:{
  407.                         cout<<endl<<"便当:"<<endl;
  408.                         int order=1;
  409.                         for (int i=0;i<15;i++){
  410.                             if (yourgame.things[i]){
  411.                                 cout<<order++<<"."<<tn[i]<<" (所持 "<<yourgame.things[i]<<")"<<endl;
  412.                             }
  413.                         }
  414.                         cout<<order<<".不保存并返回上一级"<<endl;
  415.                         delay(35*ut);
  416.                         tempi=input(tempi);
  417.                         while(tempi>order || tempi<1){
  418.                             cout<<"输入有误!请重新输入:"<<endl;
  419.                             delay(25*ut);
  420.                             tempi=input(tempi);
  421.                         }
  422.                         if (tempi==order) goto d;
  423.                         int i=0,j=0;
  424.                         do{
  425.                             if (yourgame.things[i]) j++;
  426.                             i++;
  427.                         }while(j<order);
  428.                         if (foodchosen==1) {
  429.                             cout<<"便当已装满!"<<endl;
  430.                             goto d;
  431.                         }
  432.                         foodchosen=!foodchosen;
  433.                         chosen[i]=!chosen[i];
  434.                         cout<<"已成功选择。"<<endl;
  435.                         delay(45*ut);
  436.                         goto d;
  437.                         break;
  438.                     }
  439.                     case 2:{
  440.                         cout<<endl<<"幸运物:"<<endl;
  441.                         int order=1;
  442.                         for (int i=15;i<26;i++){
  443.                             if (yourgame.things[i]){
  444.                                 cout<<order++<<"."<<tn[i]<<" (所持 "<<yourgame.things[i]<<")"<<endl;
  445.                             }
  446.                         }
  447.                         cout<<order<<".不保存并返回上一级"<<endl;
  448.                         delay(35*ut);
  449.                         tempi=input(tempi);
  450.                         while(tempi>order || tempi<1){
  451.                             cout<<"输入有误!请重新输入:"<<endl;
  452.                             delay(25*ut);
  453.                             tempi=input(tempi);
  454.                         }
  455.                         if (tempi==order) goto d;
  456.                         int i=16,j=0;
  457.                         do{
  458.                             if (yourgame.things[i]) j++;
  459.                             i++;
  460.                         }while(j<order);
  461.                         if (luckchosen==1) {
  462.                             cout<<"幸运物已装满!"<<endl;
  463.                             goto d;
  464.                         }
  465.                         luckchosen=!luckchosen;
  466.                         chosen[i]=!chosen[i];
  467.                         cout<<"已成功选择。"<<endl;
  468.                         delay(45*ut);
  469.                         goto d;
  470.                         break;
  471.                     }
  472.                     case 3:{
  473.                         cout<<endl<<"用品:"<<endl;
  474.                         int order=1;
  475.                         for (int i=26;i<39;i++){
  476.                             if (yourgame.things[i]){
  477.                                 cout<<order++<<"."<<tn[i]<<" (所持 "<<yourgame.things[i]<<")"<<endl;
  478.                             }
  479.                         }
  480.                         cout<<order<<".不保存并返回上一级"<<endl;
  481.                         delay(35*ut);
  482.                         tempi=input(tempi);
  483.                         while(tempi>order || tempi<1){
  484.                             cout<<"输入有误!请重新输入:"<<endl;
  485.                             delay(25*ut);
  486.                             tempi=input(tempi);
  487.                         }
  488.                         if (tempi==order) goto d;
  489.                         int i=26,j=0;
  490.                         do{
  491.                             if (yourgame.things[i]) j++;
  492.                             i++;
  493.                         }while(j<order);
  494.                         if (usechosen==2) {
  495.                             cout<<"用品已装满!"<<endl;
  496.                             goto d;
  497.                         }
  498.                         if (chosen[i]) usechosen--;
  499.                         else usechosen++;
  500.                         chosen[i]=!chosen[i];
  501.                         cout<<"已成功选择。"<<endl;
  502.                         delay(45*ut);
  503.                         goto d;
  504.                         break;
  505.                     }
  506.                     case 4:{
  507.                         settled=1;
  508.                         for (int i=0;i<25;i++){
  509.                             if (chosen[i]) yourgame.things[i]-=1;
  510.                         }
  511.                         cout<<"成功收拾好行囊。"<<endl;
  512.                         yourgame.yourfrog.outtime=time(0)+1000+rand()%1000;
  513.                         yourgame.yourfrog.lasttime=10000+rand()%10000+rand()%10000;
  514.                         delay(50*ut);
  515.                     }
  516.                     goto cc;
  517.                 }
  518.             case 6:
  519.                 save();
  520.                 break;
  521.         }
  522.     }
  523. }

  524. void bedroom(){
  525.     delay(20*ut);
  526.     cout<<"这里并没有什么功能。"<<endl;
  527.     delay(25*ut);
  528.     cout<<"选项:\n1.回家"<<endl;
  529.     tempi=input(tempi);
  530.     while(tempi!=1){
  531.         cout<<"输入有误!请重新输入:"<<endl;
  532.         delay(25*ut);
  533.         tempi=input(tempi);
  534.     }
  535.     home();
  536. }

  537. void prize(){
  538.     delay(36*ut);
  539.     cout<<"这里是摇奖店。"<<endl;
  540.     delay(30*ut);
  541.     b:  cout<<"5张奖券转一次,你有"<<yourgame.lottery<<"张奖券。"<<endl;
  542.     delay(35*ut);
  543.     cout<<"选项:\n1.抽奖\n2.奖品一览\n3.去商店\n4.回家\n";
  544.     delay(30*ut);
  545.     tempi=input(tempi);
  546.     while(tempi>4 || tempi<1){
  547.         cout<<"输入有误!请重新输入:"<<endl;
  548.         delay(25*ut);
  549.         tempi=input(tempi);
  550.     }
  551.     delay(90*ut);
  552.     switch(tempi){
  553.         case 1:
  554.             if (yourgame.lottery<5){
  555.                 cout<<"对不起,奖券不足,您现在不能抽奖!"<<endl;
  556.                 delay(36*ut);
  557.                 goto b;
  558.             }
  559.             yourgame.lottery-=5;
  560.             switch (result(rand())){
  561.                 case 1:
  562.                     cout<<endl<<"黄玉 出来了"<<endl;
  563.                     delay(45*ut);
  564.                     cout<<endl<<"请选择奖品:"<<endl;
  565.                     delay(30*ut);
  566.                     cout<<endl<<"1.东国车票\n2.西国车票\n3.南国车票\n4.北国车票\n";
  567.                     delay(60*ut);
  568.                     tempi=input(tempi);
  569.                     while(tempi>4 || tempi<1){
  570.                         cout<<"输入有误!请重新输入:"<<endl;
  571.                         delay(25*ut);
  572.                         tempi=input(tempi);
  573.                     }
  574.                     delay(30*ut);
  575.                     switch (tempi){
  576.                         case 1:
  577.                             cout<<"获得了 东国车票"<<endl;
  578.                             break;
  579.                         case 2:
  580.                             cout<<"获得了 西国车票"<<endl;
  581.                             break;
  582.                         case 3:
  583.                             cout<<"获得了 南国车票"<<endl;
  584.                             break;
  585.                         case 4:
  586.                             cout<<"获得了 北国车票"<<endl;
  587.                             break;
  588.                     }
  589.                     yourgame.things[21+tempi]++;
  590.                     delay(35*ut);
  591.                     break;
  592.                 case 2:
  593.                     cout<<endl<<"红玉 出来了"<<endl;
  594.                     delay(45*ut);
  595.                     cout<<endl<<"请选择奖品:"<<endl;
  596.                     delay(30*ut);
  597.                     cout<<endl<<"1.草莓金平糖\n2.柠檬金平糖\n3.葡萄金平糖\n4.蜜瓜金平糖\n";
  598.                     delay(60*ut);
  599.                     tempi=input(tempi);
  600.                     while(tempi>4 || tempi<1){
  601.                         cout<<"输入有误!请重新输入:"<<endl;
  602.                         delay(25*ut);
  603.                         tempi=input(tempi);
  604.                     }
  605.                     delay(30*ut);
  606.                     switch (tempi){
  607.                         case 1:
  608.                             cout<<"获得了 草莓金平糖"<<endl;
  609.                             break;
  610.                         case 2:
  611.                             cout<<"获得了 柠檬金平糖"<<endl;
  612.                             break;
  613.                         case 3:
  614.                             cout<<"获得了 葡萄金平糖"<<endl;
  615.                             break;
  616.                         case 4:
  617.                             cout<<"获得了 蜜瓜金平糖"<<endl;
  618.                             break;
  619.                     }
  620.                     yourgame.things[10+tempi]++;
  621.                     delay(35*ut);
  622.                     break;
  623.                 case 3:
  624.                     cout<<endl<<"绿玉 出来了"<<endl;
  625.                     delay(45*ut);
  626.                     cout<<endl<<"请选择奖品:"<<endl;
  627.                     delay(30*ut);
  628.                     cout<<endl<<"1.胡萝卜饼干\n2.南瓜饼干\n3.毛豆饼干\n4.牛奶饼干\n5.牛蒡饼干";
  629.                     delay(60*ut);
  630.                     tempi=input(tempi);
  631.                     while(tempi>5 || tempi<1){
  632.                         cout<<"输入有误!请重新输入:"<<endl;
  633.                         delay(25*ut);
  634.                         tempi=input(tempi);
  635.                     }
  636.                     delay(30*ut);
  637.                     switch (tempi){
  638.                         case 1:
  639.                             cout<<"获得了 胡萝卜饼干"<<endl;
  640.                             break;
  641.                         case 2:
  642.                             cout<<"获得了 南瓜饼干"<<endl;
  643.                             break;
  644.                         case 3:
  645.                             cout<<"获得了 毛豆饼干"<<endl;
  646.                             break;
  647.                         case 4:
  648.                             cout<<"获得了 牛奶饼干"<<endl;
  649.                             break;
  650.                         case 5:
  651.                             cout<<"获得了 牛蒡饼干"<<endl;
  652.                             break;
  653.                     }
  654.                     yourgame.things[5+tempi]++;
  655.                     delay(35*ut);
  656.                     break;
  657.                  case 4:
  658.                     cout<<endl<<"青玉 出来了"<<endl;
  659.                     delay(45*ut);
  660.                     cout<<endl<<"请选择奖品:"<<endl;
  661.                     delay(30*ut);
  662.                     cout<<endl<<"1.黄色护身符\n2.白色护身符\n3.红色护身符\n4.蓝色护身符\n5.桃色护身符\n";
  663.                     delay(60*ut);
  664.                     tempi=input(tempi);
  665.                     while(tempi>5 || tempi<1){
  666.                         cout<<"输入有误!请重新输入:"<<endl;
  667.                         delay(25*ut);
  668.                         tempi=input(tempi);
  669.                     }
  670.                     delay(30*ut);
  671.                     switch (tempi){
  672.                         case 1:
  673.                             cout<<"获得了 黄色护身符"<<endl;
  674.                             break;
  675.                         case 2:
  676.                             cout<<"获得了 白色护身符"<<endl;
  677.                             break;
  678.                         case 3:
  679.                             cout<<"获得了 红色护身符"<<endl;
  680.                             break;
  681.                         case 4:
  682.                             cout<<"获得了 蓝色护身符"<<endl;
  683.                             break;
  684.                         case 5:
  685.                             cout<<"获得了 桃色护身符"<<endl;
  686.                             break;
  687.                     }
  688.                     yourgame.things[16+tempi]++;
  689.                     delay(35*ut);
  690.                     break;
  691.                 case 5:
  692.                     cout<<endl<<"白玉 出来了"<<endl;
  693.                     delay(45*ut);
  694.                     cout<<"获得了 抽奖券"<<endl;
  695.                     yourgame.lottery++;
  696.                     delay(35*ut);
  697.                     break;  
  698.             }
  699.             goto b;
  700.             break;
  701.         case 2:
  702.             cout<<"黄玉   车票\n红玉   金平糖\n绿玉   饼干\n青玉   护身符\n白玉   抽奖券\n";
  703.             delay(45*ut);
  704.             goto b;
  705.             break;
  706.         case 3:
  707.             shop();
  708.             break;
  709.         case 4:
  710.             home();
  711.             break;
  712.     }
  713. }

  714. void buy(){
  715.     ee:delay(35*ut);
  716.     cout<<endl<<"商品一览:"<<endl;
  717.     delay(35*ut);
  718.     for (int i=0,j=0;i<38;i++){
  719.         if (price[i]!=inf){
  720.             w[++j]=i;
  721.             cout<<j<<". "<<tn[i]<<"  (三叶草 "<<price[i]<<")";
  722.             if (i>=25 && i<=37 && yourgame.things[i]) cout<<"  【已售罄】";
  723.             cout<<endl;
  724.             delay(4*ut);
  725.         }
  726.     }
  727.     cout<<endl<<"你所持有的三叶草数:  "<<yourgame.clover<<endl;
  728.     delay(36*ut);
  729.     cout<<endl;
  730.     delay(40*ut);
  731.     cout<<"选项:"<<endl<<"(1~19).输入商品编号以购买"<<endl;
  732.     cout<<"20.回家"<<endl<<"21.去花园"<<endl<<"22.回到“商店”界面"<<endl;
  733.     delay(28*ut);
  734.     tempi=input(tempi);
  735.     while(tempi>22 || tempi<1){
  736.         cout<<"输入有误!请重新输入:"<<endl;
  737.         delay(25*ut);
  738.         tempi=input(tempi);
  739.     }
  740.     delay(27*ut);
  741.     if (tempi<=19){
  742.         if (yourgame.clover<price[w[tempi]]){
  743.             cout<<"您持有的三叶草不足!"<<endl;
  744.         }
  745.         else if (w[tempi]>=25 && w[tempi]<=37 && yourgame.things[w[tempi]])
  746.         {
  747.             cout<<tn[w[tempi]]<<"真的已经售罄了!"<<endl<<endl;
  748.         }
  749.         else{
  750.             yourgame.clover-=price[w[tempi]];
  751.             yourgame.things[w[tempi]]++;
  752.             cout<<"已成功购买"<<tn[w[tempi]]<<",剩余三叶草数:  "<<yourgame.clover<<endl<<endl;
  753.             if (rand()<500){
  754.                 cout<<endl<<"还获得了   抽奖券  1"<<endl;
  755.                 delay(30);
  756.                 yourgame.lottery++;
  757.             }
  758.         }
  759.         goto ee;
  760.     }
  761.     else if (tempi==20){
  762.         home();
  763.     }
  764.     else if (tempi==21){
  765.         garden();
  766.     }
  767.     else{
  768.         shop();
  769.     }
  770. }
复制代码
10#
发表于 2018-9-15 17:18:54 | 只看该作者
11#
发表于 2018-9-15 17:19:49 | 只看该作者
有兴趣加群581409481。。。。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表