C++丧尸小游戏!!!(第一版)

#include <bits/stdc++.h>
#include <windows.h>
using namespace std;
int mzhg;
int zd;
int sn;
int tongguan;
int ccg;
int sw;
int x;
int s;
int jg;
int qiang;
int gun;
int gjj[100];
int hjj[100];
int zjj[100];

void Slowsay(string a) {
    int l=a.size();
    for(int i=0; i<l; i++) {
        cout<<a[i];
        Sleep(60);
    }
    printf("\n");
}

void qp() {
    system("cls");
    printf("当前你的状态是\n");
    printf("子弹 %d,食物 %d\n",zd,sw);
}

void esl() {
    system("cls");
    char ch;
    Slowsay("你因为食物短缺,饿死了。\n");
    ch=getchar();
    hjj[1]=1;
    Slowsay("Bad End 1\n");
    ch=getchar();
    s++;
}

void mzd() {
    hjj[2]=1;
    system("cls");
    char ch;
    Slowsay("你遭遇了丧尸,因为子弹不足被咬死了。\n");
    ch=getchar();
    Slowsay("Bad End 2\n");
    ch=getchar();
    s++;
}

void hd1() {
    system("cls");
    Slowsay("在某一天,你家门口响起了敲门声,你打开门,外面的发现让你欣喜若狂\n");
    Slowsay("政府的救援部队已经消灭了这个城市的丧尸\n");
    Slowsay("他们在这个城市的各个角落搜索着可能存在的幸存者.\n");
    Slowsay("Happy End-----苟到最后\n");
    if(hjj[3]==1&&gjj[1]==0) {
        Sleep(2000);
        Slowsay("获得线索-----速度飘忽不定的政府");
    }
    gjj[1]=1;
}

void hd2() {
    system("cls");
    int sw;
    char ch;
    Slowsay("在与妹子相处的这些时间里,你与她相爱了\n");
    Slowsay("你们的生活是那样的幸福\n");
    Slowsay("直到有一天......\n");
    Slowsay("基地首领希望你去执行一个任务,你选择\n");
    Slowsay("1.独自一人前往\n");
    Slowsay("2.和妹子一起去\n");
    while(true) {
        int x;
        scanf("%d",&x);
        if(x<1||x>2) {
            Slowsay("请重新输入\n");
            continue;
        }
        if(x==1) {
            Slowsay("当你完成任务回来的时候,发现——\n");
            Slowsay("基地被丧尸攻破了\n");
            Slowsay("这个基地的所有人都被丧尸杀了,一个人都没跑出来\n");
            hjj[4]=1;
            Slowsay("Bad End 4\n");
            s++;
        }
        if(x==2) {
            Slowsay("当你和妹子完成任务回来时,\n");
            Slowsay("基地已经变成一片废墟了\n");
            Slowsay("你和妹子没有办法,只能到处流浪\n");
            Slowsay("不过,两个人总比一个人要好\n");
            gjj[2]=1;
            Slowsay("Happy End------神仙眷侣");
        }
        break;
    }
}

void hd3() {
    system("cls");
    char ch;
    Slowsay("你就这样平静地生活在这个基地里\n");
    Slowsay("直到某一天,大量的丧尸进攻了这里\n");
    if(zd>9) {
        Slowsay("每个人都在尽自己的努力去守卫基地\n");
        Slowsay("每个人都做到了自己能做到的\n");
        Slowsay("最后,奇迹出现了\n");
        Slowsay("大家成功守住了基地\n");
        Slowsay("而你,也因为在守卫过程中立下大功成为了这个基地的英雄\n");
        Slowsay("顺便说一句,到死了你也没女朋友\n");
        gjj[3]=1;
        Slowsay("Happy End-----英雄不朽");
        return;
    }
    Slowsay("丧尸的数量实在太多了,\n");
    Slowsay("尽管基地的大家都在尽全力防守\n");
    Slowsay("可基地还是被攻破了\n");
    Slowsay("而你,也死在了这里\n");
    s++;
    hjj[5]=1;
    Slowsay("Bad End 5\n");
}

void hd4() {
    system("cls");
    Slowsay("在与少年相处的这些时间里");
    Slowsay("你尽力地保护着他");
    Slowsay("而他也常常给你带来惊喜");
    Slowsay("慢慢的,你开始认清你自己");
    Slowsay("你是个gay");
    Slowsay("于是,你就和少年性福快乐的生活在了一起");
    Slowsay("Happy End-----认清自己");
    gjj[4]=1;
}

void td() {
    system("cls");
    char ch;
    Slowsay("那箱饼干与你的枪一起发出了强光\n");
    Slowsay("紧接着,他们融为了一体\n");
    Slowsay("当光芒散去时,整个世界都发生了变化\n");
    Slowsay("所有的丧尸都变回了人类\n");
    Slowsay("True End-----一如既往");
    if(zjj[1]!=1) {
        Slowsay("获得线索-----奇特的枪与饼干");
    }
    zjj[1]=1;
}

void td2() {
    system("cls");
    char ch;
    Slowsay("你的变异已经开始了");
    Slowsay("你开始疯狂的进食,直到把自己的胃撑破");
    Slowsay("然后,就眼前一黑失去意识");
    Slowsay("再次醒来时,你已经是一个丧尸了");
    Slowsay("奇怪的是,你还保留着自己的意识");
    Slowsay("你感觉到自己的力气变得更大,速度变得更快");
    Slowsay("或许变成丧尸也不错————你这样想着");
    Slowsay("True End-----保持本我");
    if(zjj[2]!=1) {
        Sleep(2000);
        Slowsay("获得线索-----延迟变异的少年");
    }
    zjj[2]=1;
}

void bd8() {
    Slowsay("坐在椅子上的是一个15岁左右的少年");
    Slowsay("正在你因为他的年龄而惊讶时");
    Slowsay("少年却站了起来,看向了你身后的妹子");
    Slowsay("“差不多了吧”,妹子这样说道");
    Slowsay("“可以了”,这是少年的回答");
    Slowsay("然后,你就感到脖子一阵剧痛");
    Slowsay("在你失去意识前,眼中最后的场景是妹子咬着你的脖子");
    s++;
    Slowsay("Bad End 8\n");
    if(hjj[8]==0) {
        Sleep(2000);
        Slowsay("获得线索-----早已变异的妹子");
    }
    hjj[8]=1;
}

void td3() {
    system("cls");
    Slowsay("你和妹子冲出了丧尸的围杀,");
    Slowsay("可是当你们来到那个幸存者基地时");
    Slowsay("却发现那个基地有一些不对");
    Slowsay("所有人都死气沉沉的");
    Slowsay("你们直接走向了首领的房间");
    if(zjj[2]==1&&zjj[3]==1) {
        bd8();
        return;
    }
    Slowsay("坐在椅子上的是一个30岁左右的男性");
    Slowsay("他说,欢迎");
    Slowsay("基地的首领表示可以用子弹交换你手中的食物");
    Slowsay("请输入你需要的子弹数");
    Slowsay("0");
    Slowsay("基地首领希望你加入这个基地");
    Slowsay("你的选择是");
    Slowsay("1.留在这");
    Slowsay("2.离开");
    Slowsay("2");
    Slowsay("你决定");
    Slowsay("1.当天离开");
    Slowsay("2.再停留一天");
    Slowsay("1");
    Slowsay("就在你快要离开的时候,妹子抓住了你的手");
    Slowsay("“我喜欢你,别走”,她这样说");
    Slowsay("于是,你留了下来");
    Slowsay("你们的生活是那样的幸福");
    Slowsay("直到有一天......");
    Slowsay("基地首领希望你去执行一个任务,你选择");
    Slowsay("1.独自一人前往");
    Slowsay("2.和妹子一起去");
    Slowsay("2");
    Slowsay("在执行任务的过程中");
    Slowsay("妹子曾被丧尸咬到过一口");
    Slowsay("她以为你没有发现");
    Slowsay("而你却在远处看到了这一幕");
    Slowsay("奇怪的是,她却并没有变异");
    Slowsay("当你和妹子完成任务回来时,");
    Slowsay("基地已经变成一片废墟了");
    Slowsay("你和妹子没有办法,只能到处流浪");
    Slowsay("不过,两个人总比一个人要好");
    Slowsay("Happy End------神仙眷侣");
    Slowsay("???????????????????????????????????");
    Slowsay("True End------幻觉");
    if(zjj[3]==0) {
        Sleep(2000);
        Slowsay("获得线索-----不变异的妹子");
    }
    zjj[3]=1;
}

void bd6() {
    system("cls");
    Slowsay("你感觉到自己正在变异,");
    Slowsay("意识开始逐渐模糊起来");
    Slowsay("你的肚子正无比渴望着人肉");
    Slowsay("接着,你眼前一黑,再也没有醒来");
    s++;
    hjj[6]=1;
    Slowsay("Bad End 6\n");
}

void bd3() {
    system("cls");
    char ch;
    Slowsay("长久的等待终于让你失去了理智,你疯了。\n");
    Slowsay("Bad End 3\n");
    s++;
    if(hjj[3]==0&&gjj[1]==1) {
        Sleep(2000);
        Slowsay("获得线索-----速度飘忽不定的政府");
    }
    hjj[3]=1;
}

void bd7() {
    s++;
    system("cls");
    Slowsay("因为食物不足,你被狗咬死了");
    Slowsay("Bad End 7\n");
    hjj[7]=1;
}

void bd9() {
    s++;
    system("cls");
    Slowsay("你进入大厦才发现这里藏着许多丧尸");
    Slowsay("你一路且战且退来到了地下室");
    Slowsay("诡异的是,当你杀光了跟来的丧尸后,发现地下室里并没有丧尸");
    Slowsay("这里有的,只是一个穿着白大褂的尸体");
    Slowsay("在尸体的衣服口袋中,你找到了一个笔记本");
    Slowsay("****(无法辨认)1号****进展*****永生");
    Slowsay("今********,*号诞生了");
    Slowsay("有些不对,*****的发育有些太快了");
    Slowsay("2号的**被***出有强感染性");
    Slowsay("************************");
    Slowsay("实验进入了瓶颈,或许我们因该找个活体样本");
    Slowsay("**,样本失去活性,但他还在动");
    Slowsay("正当你看的入迷的时候,你的脖子被咬住了");
    Slowsay("在死前,你隐约听到了少年的声音,“再来一次吧”");
    Slowsay("Bad End 9\n");
    if(hjj[9]==0) {
        Sleep(2000);
        Slowsay("发现线索-----实验体1号与2号");
    }
    hjj[9]=1;
}

void tg() {
    system("cls");
    Slowsay("不知为何,当你走到这里时,感到世界在一瞬间发生了变化");
    Slowsay("你不知道这个变化发生在那里,你只知道,现在的世界十分违和");
    Slowsay("或许,这个世界不是真实的");
    Slowsay("当你的脑中出现了这个的时候,你眼前的世界,崩塌了");
    Slowsay("与此同时,大量记忆冲进了你的脑海");
    Slowsay("不,它们只是回来了,这本身就是你的记忆");
    Slowsay("他们在一开始被一些虚假的记忆所替换");
    Slowsay("从记忆中,你得知你此时正在玩一个vr游戏");
    Slowsay("少年与妹子则是游戏的gm");
    Slowsay("这款游戏号称有着超强的代入感");
    Slowsay("你在发售当天就买来玩了");
    Slowsay("“这游戏真是了不起啊”,你这样想着,“再玩一次吧”");
    Slowsay("可真的是这样吗");
    Slowsay("躺在营养仓中的你自始至终都没有睁开眼");
    Slowsay("正如你从一开始就没有怀疑那些记忆的真实性.......");
    Slowsay("---------------游戏通关-------------");

    tongguan=1;
}

void zhxs() {
    system("cls");
    Slowsay("你好奇的看着眼前的一切");
    Slowsay("“看起来像某个垃圾游戏的界面”,你这样想着");
    Sleep(2000);
    Slowsay("获得线索-----“结局?”");
}

void cg() {
    system("cls");
    Slowsay("你感觉到违和感在不断加深");
    Slowsay("世界好像不再是真实的");
    Slowsay("你现在脑中只有一种想法");
    Slowsay("活下去");
}

void bd10() {
    system("cls");
    Slowsay("你发现了另一个基地");
    Slowsay("弹尽粮绝的你选择加入了他们");
    Slowsay("之后的每一天都十分单调");
    Slowsay("外出寻找物资,然后天黑了回家睡觉");
    Slowsay("应该是这样吗?");
    Slowsay("也许吧");
    Slowsay("Bad End 10\n");
    hjj[10]=1;
}

void sswj() {
    system("cls");
    printf("当丧尸危机爆发时,你正呆在家里\n");
    char ch=getchar();
    printf("你有10点物资可以分配到子弹和食物上\n");
    ch=getchar();
    int x,y;
    int dd;
    qiang=0;
    gun=0;
    zd=0;
    sw=0;
    sn=0;
    mzhg=0;
    dd=1;
    int w=0;
    printf("请输入你的选择\n");
    while(true) {
        scanf("%d%d",&x,&y);
        zd=x;
        sw=y;
        if(x+y!=10||x<0||y<0) {
            if(x==882246&&y==461313) {
                sw=999;
                zd=999;
            }
            printf("请重新输入\n");
            w++;
            if(w>10) {
                printf("行了行了,这只是第一个选择而已\n"),
                       printf("有必要这么皮吗\n"),
                       printf("自动分配食物5个子弹5个\n"),
                       ch=getchar();
                ch=getchar();
                sw=5,zd=5;
                break;
            }
        } else break;
    }
    printf("你的家里是个较为安全的地方,你可以选择搜索你家的物资或是去邻居家看看\n");
    ch=getchar();
    printf("1.留在家中\n");
    printf("2.前往邻居家\n");
    while(true) {
        scanf("%d",&x);
        if(x!=1&&x!=2)
            printf("请重新输入\n");
        else if(x==1) {
            printf("在二楼,你发现了一些食物食物+3\n");
            ch=getchar();
            printf("在家里过了一夜,食物-1\n");
            sw=sw+2;
            break;
        } else {
            printf("在前往邻居家的路上,你遇到了丧尸\n");
            ch=getchar();
            if(zd<1) {
                printf("你朝他开了一枪,不过枪里没有子弹,你被他咬死了\n");
                ch=getchar();
                hjj[2]=1;
                printf("Bad End\n");
                s++;
                ch=getchar();
                Slowsay("另外再说一句,一个子弹都不带,还到处乱浪,你是真的作");
                return;
            } else {
                printf("你用你手中的枪结束了他的生命,子弹-1\n");
                zd=zd-1;
                dd=2;
                ch=getchar();
                printf("邻居家里不知为何并没有人,你在仔细搜索后发现了一个弹夹,里面有4发子弹\n");
                zd+=4;
                ch=getchar();
                printf("在邻居家过了一夜后,食物-2\n");
                sw=sw-2;
                if(sw<0) {
                    esl();
                    return;
                }
            }
            break;
        }
    }
    ch=getchar();
    printf("你回想起这附近有一座商场,你决定\n");
    ch=getchar();
    printf("1.前往商场\n");
    printf("2.到处乱走\n");
    printf("3.留在屋子里\n");
    while(true) {
        scanf("%d",&x);
        if(x!=1&&x!=2&&x!=3) {
            printf("请重新输入\n");
            continue;
        }
        if(x==3) {
            if(sw<2) {
                esl();
                return;
            }
            printf("无聊正在逐渐消磨你的意志,但你还是坚持了下来。食物-2\n");
            sw=sw-2;
            ch=getchar();
            printf("之后的每一天你都是这样,独自一人在家中等待救援\n");
            ch=getchar();
            printf("在过了好久之后\n");
            if(sw<6) {
                esl();
                return;
            }
            x=rand()%2;
            if(x==1) {
                hd1();
                return;
            }
            if(x==0) {
                bd3();
                return;
            }
        }
        if(x==2) {
            if(zd<2) {
                mzd();
                return;
            }
            printf("在到处乱走的过程中,你遇到了丧尸,子弹-2\n");
            zd=zd-2;
            break;
        }
        if(x==1) {
            if(zd<4) {
                mzd();
                return;
            }
            printf("在前往商场的过程中,你遇到了丧尸,子弹-4\n");
            zd=zd-4;
            dd=4;
            ch=getchar();
            printf("你在商场发现了食物与子弹,食物+3,子弹+2\n");
            sw=sw+3;
            zd=zd+2;
            break;
        }
    }
    printf("你在回家的路上发现了一个女幸存者\n");
    ch=getchar();
    printf("她试图向你讨要食物,你的选择是\n");
    printf("1.不给\n");
    printf("2.给她2份食物\n");
    printf("3.给她2份子弹\n");
    printf("4.给她一枪\n");
    while(true) {
        scanf("%d",&x);
        if(x<1||x>4) {
            printf("请重新输入。\n");
            continue;
        }
        if(x==1) {
            printf("妹子生气的走了。\n");
            ch=getchar();
        }
        if(x==2) {
            if(sw<2) {
                printf("食物不足\n");
                continue;
            }
            sw=sw-2;
            mzhg++;
            printf("你的食物-2,妹子好感度+1\n");
            ch=getchar();
        }
        if(x==3) {
            if(zd<2) {
                printf("子弹不足\n");
                continue;
            }
            zd=zd-2;
            printf("你给了妹子两份子弹,妹子离开了\n");
            ch=getchar();
        }
        if(x==4) {
            if(zd<1) {
                printf("子弹不足\n");
                continue;
            }
            zd=zd-1;
            printf("你一枪杀死了妹子,并从她的尸体上找到了4份食物\n");
            sw=sw+4;
            mzhg=-1;
        }
        break;
    }
    printf("又过了一夜,你的食物-2\n");
    sw=sw-2;
    if(sw<0) {
        esl();
        return;
    }
    if(mzhg>0) {
        printf("那个妹子又来找到了你,并邀请你加入他们的幸存者基地\n");
    } else printf("你在附近发现了一个幸存者基地\n");
    printf("在前往基地的途中,你遇到了丧尸\n");
    printf("你且战且退,大量丧尸把你逼进了一家商店\n");
    printf("门口的丧尸越来越多,你选择\n");
    printf("1.杀出去(消耗较少子弹)\n");
    printf("2.守在这(消耗大量子弹,但可以拿到稀有物品)\n");
    while(true) {
        scanf("%d",&x);
        if(x<1||x>2) {
            printf("请重新输入\n");
            continue;
        }
        if(x==1) {
            int res=0;
            if(mzhg>0)
                res=1;
            else res=3;
            if(zd<res) {
                mzd();
                return;
            }
            zd=zd-res;
            printf("你消耗了一些子弹冲了出去,子弹-%d\n",res);
            x=rand()%5;
            if(res==1&&x!=3)
                printf("妹子为了帮你突围,被丧尸咬到,然后自杀了。\n"),mzhg=-1;
            if(x==3&&res==1) {
                td3();
                return;
            }
        }
        if(x==2) {
            if(zd<5) {
                mzd();
                return;
            }
            zd=zd-5;
            printf("你守在这家商店里直到杀死了所有找来的丧尸,子弹-5\n");
            if(mzhg==1) {
                printf("妹子在商店中发现了一把无限子弹的枪,子弹+10086\n");
                zd=10086;
                ch=getchar();
                printf("但是妹子在翻找货架的时候被沾了丧尸血的货架划伤\n");
                printf("妹子自杀了\n");
                mzhg=-1;
            }
        }
        break;
    }
    printf("你来到了这个幸存者基地\n");
    printf("这个基地的首领表示可以用子弹交换你手中的食物\n");
    printf("你还有%d份食物,%d份子弹\n",sw,zd);
    ch=getchar();
    printf("请输入你需要的子弹数\n");
    while(true) {
        scanf("%d",&x);
        if(x<0||x>sw) {
            printf("请重新输入\n");
            continue;
        }
        sw=sw-x;
        zd=zd+x;
        if(x>=1) {
            printf("首领很开心你能提供稀缺的食物,多给了你2份子弹\n");
            zd=zd+2;
        }
        break;
    }
    ch=getchar();
    printf("又过了一天,食物-2");
    sw=sw-2;
    if(sw<0) {
        esl();
        return;
    }
    ch=getchar();
    system("cls");
    printf("基地首领希望你加入这个基地\n");
    Sleep(500);
    printf("你的选择是\n");
    Sleep(500);
    printf("\n");
    Sleep(500);
    system("Color C");
    Slowsay("1.留在这");
    Slowsay("2.离开");
    while(true) {
        scanf("%d",&x);
        if(x<1||x>2) {
            printf("请重新输入\n");
            continue;
        }
        system("Color F");
        if(x==1) {
            if(mzhg>-1) hd2();
            else hd3();
            return;
        }
        if(x==2) {
            ch=getchar();
            printf("你决定\n");
            printf("1.当天离开\n");
            printf("2.再停留一天\n");
            while(true) {
                scanf("%d",&x);
                if(x<1||x>2) {
                    printf("请重新输入\n");
                    continue;
                }
                if(x==1) break;
                if(x==2) {
                    printf("这个基地的首领表示可以用子弹交换你手中的食物\n");
                    printf("你还有%d份食物,%d份子弹\n",sw,zd);
                    ch=getchar();
                    printf("请输入你需要的子弹数\n");
                    while(true) {
                        scanf("%d",&x);
                        if(x<0||x>sw) {
                            printf("请重新输入\n");
                            continue;
                        }
                        sw=sw-x;
                        zd=zd+x;
                        if(x>=3) {
                            printf("首领很开心你能提供稀缺的食物,多给了你3份子弹\n");
                            zd=zd+3;
                        }
                        break;
                    }
                    sw=sw-2;
                    if(sw<0) {
                        esl();
                        return;
                    }
                    printf("又过了一夜,食物-2\n");
                }
                break;
            }
            printf("在你离开的时候,一个少年跑了过来。\n");
            printf("他说,他想要和你一起走\n");
            printf("1.带上他\n");
            printf("2.不带他\n");
            while(true) {
                scanf("%d",&x);
                if(x<1||x>2) {
                    printf("请重新输入\n");
                    continue;
                }
                if(x==2) {
                    printf("少年生气的离开了,当他走远了,你才发现\n");
                    printf("在刚刚的接触中,他偷走了你的枪和所有子弹\n");
                    zd=-1;
                }
                if(x==1) {
                    printf("你选择上少年一起走\n");
                    printf("少年将他身上带着的一份食物交给了你\n");
                    sw=sw+1;
                    printf("食物消耗+1,少年入队\n");
                    sn=1;
                }
                break;
            }
        }
        break;
    }
    sw=sw-2-sn;
    printf("你在路边的一座没人的房子里过了一夜,食物-%d\n",2+sn);
    ch=getchar();
    if(sw<0) {
        esl();
        return;
    }
    if(sn==1) {
        printf("今天一早你就被少年叫醒了,\n");
        ch=getchar();
        printf("他在床底下发现了一箱方便面,食物+6\n");
        sw=sw+6;
        printf("少年向你讨要武器,你决定\n");
        printf("1.把枪给他\n");
        printf("2.把从厨房拆下的水管给他\n");
        printf("3.什么都不给他\n");
        while(true) {
            scanf("%d",&x);
            if(x<1||x>3) {
                printf("请重新输入\n");
                continue;
            }
            if(x==1)
                qiang=2;
            if(x==2)
                gun=2;
            break;
        }
    } else {
        printf("你在冰箱里发现了几包巧克力\n");
        ch=getchar();
        printf("希望他们还没过期吧,食物+3\n");
        sw=sw+3;
    }
    ch=getchar();
    printf("今天你们来到了一家大商场\n");
    printf("你决定\n");
    printf("1.独自探索1楼\n");
    printf("2.独自探索2楼\n");
    if(sn==1) {
        Sleep(500);
        Slowsay("3.和少年一起探索2楼");
    }
    while(true) {
        scanf("%d",&x);
        if(x<1||x>3) {
            printf("请重新输入\n");
            continue;
        }
        if(x==1) {
            printf("你在一楼发现了一些子弹,子弹+3\n");
            zd=zd+3;
            printf("奇怪的是,一只丧尸都没有看到\n");
            ch=getchar();
            if(sn>0) {
                if(qiang==2) {
                    printf("当你来到二楼时,发现了一地尸体\n");
                    printf("少年就倒在这尸体中间,他死前手还紧紧握着枪\n");
                    printf("你把枪拿了回来,并在少年的尸体下面发现了一箱压缩饼干\n");
                    printf("食物+10086\n");
                    ch=getchar();
                    sw=10086;
                    if(sw>1000&&zd>1000) {
                        td();
                        return;
                    }
                    sn=0;
                    qiang=1;
                } else {
                    printf("当你来到二楼时,发现了少年的尸体\n");
                    ch=getchar();
                    sn=0;
                    printf("你紧紧握着手中的枪,猛地一回头\n");
                    printf("四周大量的僵尸向你涌来\n");
                    ch=getchar();
                    zd=zd-5;
                    if(zd<0) {
                        mzd();
                        return;
                    }
                    printf("你杀光了这些丧尸,子弹-5\n");
                    ch=getchar();
                    printf("你在二楼找到了食物,食物+2\n");
                    sw+=2;
                }
            }
        }
        if(x==2) {
            printf("你来到了二楼,数之不尽的丧尸忽然从阴影中窜出\n");
            printf("尽管你尽力抵抗,可丧尸的数量实在太多。\n");
            if(qiang==2) {
                mzd();
                return;
            }
            ch=getchar();
            zd-=5;
            if(zd<0) {
                mzd();
                return;
            }
            printf("你杀光了这些丧尸,子弹-5\n");
            ch=getchar();
            printf("你在二楼找到了食物,食物+2\n");
            sw+=2;
            if(sn==1) {
                printf("少年在一楼找到了子弹,子弹+3\n");
                zd=zd+3;
            }
        }
        if(x==3&&sn==1) {
            system("cls");
            printf("你们来到了二楼\n");
            ch=getchar();
            system("Color C");
            Slowsay("数之不尽的丧尸从阴影中窜出");
            Slowsay("尽管你们尽力抵抗,可丧尸的数量实在太多。");
            if(gun!=2&&qiang!=2) {
                Slowsay("没有武器的少年被当场咬死。");
                sn=0;
            }
            Slowsay("其中一只丧尸趁你不注意冲到了你的旁边");
            if(gun==2)
                Slowsay("就在你要被咬死的时候,少年扔出了手中的水管\n,救下了你");
            else if(qiang!=2) {
                zd=zd-3;
                if(zd<0) {
                    mzd();
                    return;
                }
                Slowsay("你赶忙回头几枪补掉了这只丧尸,子弹-3");
            }
            zd=zd-3;
            if(qiang==2||zd<0) {
                system("Color F");
                mzd();
                return;
            }
            system("Color F");
            Slowsay("经过了一番苦战,你们终于战胜了所有丧尸,子弹-3");
            ch=getchar();
        }
        break;
    }
    ch=getchar();
    qp();
    ch=getchar();
    printf("又过了一夜,食物-%d\n",sn+2);
    sw=sw-2-sn;
    if(sw<0) {
        esl();
        return;
    }
    qp();
    printf("今天在出门的时候\n");
    printf("你遇到了一条流浪狗\n");
    printf("1.用枪打它\n");
    printf("2.用食物引开它\n");
    while(true) {
        scanf("%d",&x);
        if(x<1||x>2) {
            printf("请重新输入\n");
            continue;
        }
        if(x==1) {
            printf("你一枪打死了这条狗,子弹-1\n");
            zd=zd-1;
            ch=getchar();
            printf("枪声引来了丧尸,子弹-2\n");
            zd=zd-2;
            if(zd<0) {
                mzd();
                return;
            }
            if(sn==0) break;
            printf("在消灭了丧尸之后,你忽然发现少年的脸色不太好\n");
            ch=getchar();
            Slowsay("原来,在昨天的商场中,少年早就被咬了一口");
            Slowsay("他一直瞒着你,不敢说出来");
            Slowsay("此时,他已经濒临变异了");
            printf("你决定\n");
            printf("1.杀了他(消耗大量子弹)\n");
            printf("2.不杀他(消耗大量食物)\n");
            while(1) {
                scanf("%d",&x);
                if(x<1||x>2) {
                    printf("请重新输入\n");
                    continue;
                }
                if(x==1) {
                    printf("你试着向他开枪,不过却被他躲过了\n");
                    printf("你十分惊恐,疯狂地倾泻着手中的弹药\n");
                    printf("子弹-4\n");
                    ch=getchar();
                    zd=zd-4;
                    if(zd<0) {
                        mzd();
                        return;
                    }
                    printf("终于,你杀死了他\n");
                    sn=0;
                }
                if(x==2) {
                    Slowsay("你就站在旁边看着少年变异");
                    Slowsay("奇怪的是,他变异后并没有");
                    Slowsay("像其他的丧尸一样,向你扑过来");
                    Slowsay("而是躲在墙角瑟瑟发抖");
                    Slowsay("你慢慢的走过去");
                    Slowsay("就在你走近的时候,少年突然暴起");
                    Slowsay("狠狠地咬住了你的手臂");
                    Slowsay("你赶忙用枪打死他,可是为时已晚");
                    sn=0;
                    if(sw>=6) {
                        td2();
                        return;
                    } else {
                        bd6();
                        return;
                    }
                }
                break;
            }
        }
        if(x==2) {
            sw=sw-2;
            if(sw<0) {
                bd7();
                return;
            }
            printf("你用两份食物引开了这条狗,食物-2\n");
        }
        break;
    }
    ch=getchar();
    ch=getchar();
    if(sn==1&&sw>=4&&gun==2&&zd>=6) {
        hd4();
        return;
    }
    if(sn==1) {
        printf("又过了一天,食物-2\n");
        sw=sw-2;
        if(sw<0) {
            esl();
            return;
        }
        ch=getchar();
        printf("今天早上,你发现少年不见了\n");
        printf("你决定\n");
        printf("1.去寻找他\n");
        printf("2.不去找他\n");
        while(true) {
            scanf("%d",&x);
            if(x<1||x>2) {
                printf("请重新输入\n");
                continue;
            }
            if(x==1) {
                printf("你通过蛛丝马迹一路追踪,来到了一座大厦前\n");
                printf("在路上,你遭遇了丧尸,子弹-2\n");
                zd=zd-2;
                if(zd<0) {
                    mzd();
                    return;
                }
                printf("你决定\n");
                printf("1.进入大厦\n");
                printf("2.离开\n");
                while(true) {
                    scanf("%d",&x);
                    if(x<1||x>2) {
                        printf("请重新输入\n");
                        continue;
                    }
                    if(x==2) {
                        printf("你在街边的商店中找到了食物,食物+2\n");
                        sw=sw+2;
                    }
                    if(x==1) {
                        if(zd<=6) {
                            mzd();
                            return;
                        } else {
                            bd9();
                            return;
                        }
                    }
                    break;
                }
            }
            break;
        }
    }
    qp();
    ch=getchar();

    Slowsay("又过了一天,食物-2");
    sw=sw-2;
    if(sw<0) {
        esl();
        return;
    }
    Sleep(500);
    Slowsay("遭遇丧尸,子弹-3");
    zd=zd-3;
    if(zd<0) {
        mzd();
        return;
    }
    Sleep(500);
    Slowsay("又过了一天,食物-2");
    sw=sw-2;
    if(sw<0) {
        esl();
        return;
    }
    Sleep(500);
    Slowsay("遭遇丧尸,子弹-2");
    zd=zd-2;
    if(zd<0) {
        mzd();
        return;
    }
    Sleep(500);
    if(ccg==1) {
        tg();
        return;
    } else {
        bd10();
        return;
    }
}

int main() {
    srand(time(0));
    while(true) {
        system("cls");
        printf("1.进行游戏\n");
        printf("2.查看成就\n");
        printf("3.查看线索(获得全部线索后通关游戏)\n");
        printf("4.获得一条随机的提示\n");
        scanf("%d",&x);
        if(x==1)
            sswj();
        if(x==2) {
            system("cls");
            if(tongguan==1) {
                printf("已通关\n\n");
            }
            int v=0;
            printf("Happy End 达成\n");
            if(gjj[1]==1)
                printf("苟到最后\n"),v++;
            else
                printf("未达成\n");
            if(gjj[2]==1)
                printf("神仙眷侣\n"),v++;
            else
                printf("未达成\n");
            if(gjj[3]==1)
                printf("英雄不朽\n"),v++;
            else
                printf("未达成\n");
            if(gjj[4]==1)
                printf("认清自己\n"),v++;
            else
                printf("未完成\n");
            printf("\n");
            printf("Bad End 达成(共10个)\n");
            for(int i=1; i<=10; i++)
                if(hjj[i]==1)
                    printf("%d ",i),v++;
            printf("\n");
            printf("当前死亡次数:%d\n",s);
            printf("\n");
            printf("True End 达成\n");
            if(zjj[1]==1)
                printf("一如既往\n"),v++;
            else
                printf("未达成\n");
            if(zjj[2]==1)
                printf("保持本我\n"),v++;
            else
                printf("未达成\n");
            if(zjj[3]==1)
                printf("幻觉\n"),v++;
            else
                printf("未达成\n");
            printf("\n");
            if(v==17&&jg==0) {
                zhxs();
                jg=1;
            }
        }
        if(x==3) {
            system("cls");
            int v=0;
            if(zjj[1]==1)
                printf("奇特的枪与饼干\n"),v++;
            else
                printf("?????\n");
            if(zjj[2]==1)
                printf("延迟变异的少年\n"),v++;
            else
                printf("?????\n");
            if(zjj[3]==1)
                printf("不变异的妹子\n"),v++;
            else
                printf("?????\n");
            if(hjj[3]==1&&gjj[1]==1)
                printf("速度飘忽不定的政府\n"),v++;
            else
                printf("?????\n");
            if(hjj[8]==1)
                printf("早已变异的妹子\n"),v++;
            else
                printf("?????\n");
            if(hjj[9]==1)
                printf("实验体1号与2号\n"),v++;
            else
                printf("?????\n");
            if(jg==1)
                printf("“结局?”"),v++;
            else
                printf("?????\n");
            if(v==7&&ccg==0) {
                Sleep(2000);
                cg();
                ccg=1;
            }
        }
        if(x==4) {
            system("cls");
            x=rand()%9;
            if(x==0)
                printf("加了好感后,妹子是有几率不死的哦");
            if(x==1)
                printf("如果想要和少年在一起的话,就一定要十分富有");
            if(x==2)
                printf("有一些事不是没有发生,只是你没看到");
            if(x==3)
                printf("如果和首领交换子弹的话,他会很开心");
            if(x==4)
                printf("妹子的身上带着4份食物呢");
            if(x==5)
                printf("因为某不愿透露姓名juliudan的要求,有一些结局要脸好才能触发");
            if(x==6)
                printf("大多数时候,你认为一个地方没有好结局只是因为你食物/子弹不够");
            if(x==7)
                printf("有一些结局是有前置条件才能触发的,耐心一点吧");
            if(x==8)
                printf("绝大多数的线索来自结局");
        }
        getchar();getchar();
    }
}

最后喜欢的话,就给个关注和收藏吧!!

猜你喜欢

转载自blog.csdn.net/m0_69824302/article/details/133525722