如果你被困在3月18日

·once·

2021-09-11 21:42:30

Personal

```cpp //转自:https://www.luogu.com.cn/blog/Allstars-We1lessz/3-yue-18-ri #include<bits/stdc++.h> #include<windows.h> #define cl system("cls") #define qwq 1500 #define awa 1000 using namespace std; int n;//选择 string k="human",s;//身份 bool flaghelper,helperfalse; bool cdj1,zj1,cdj2,cdj3,nor; bool success;//成功 void panding(); void false1(); void true1(); void normal(); void cd1(); void cd2(); void cd3(); void xh1(); void xh2(); void xh3(); void xh4(); void p(string s,int b1,int b2); int main() { if (success) return 0; p("[互动视频] 如果你被困在了3月18日",50,qwq); p("这是一个带有B站特色互动的游戏",50,awa); p("本游戏灵感来源:bilibili @GoldenEggs(思路)",50,qwq); p("切记,此游戏不仅考验耐心,更考验心态!!!",50,qwq);cl; p("进入正题",500,qwq);cl; xh1(); return 0; } void p(string s,int b1,int b2) { for (int i=0;i<s.size();++i) cout<<s[i],Sleep(b1); cout<<endl; Sleep(b2); } void xh1() { p1:while(k=="human") { p("第一循环",50,qwq),cl; p("今天是3月18日,你如往常一般起了床,吃过不错的早餐",50,awa); p("你准备出门了,哪知,门外的东西并不寻常。。。。。。",50,awa); p("面前,是一块牌子,上面写着:千万不要回头!!!",50,awa); p("此时,你选择:1、听牌子的话往前走。2、回头看看,我超勇的!",50,awa); cin>>n; if (n==2) { p("你一回头,一个恐怖的脸出现在你面前。。。。。。随后,那个人一剑砍下了你的头颅。",50,qwq);cl; goto p1; } cl; p("你跟随牌子继续向前,忽然间,看到一个黑影向你招手,手中还拿着一个蛋,仿佛在叫你过去。",50,awa); p("你选择:1、跟过去。2、不跟过去",50,awa); cin>>n;cl; if (n==2) { p("你觉得这个人有些可疑,你选择:",50,awa); p("1、不管他。2、杀掉他(20%成功率)",50,awa); cin>>n;cl; if (n==2) { srand(time(0)); int t=rand()%10; if (t==3||t==7) { p("你成功杀掉了那个人",50,awa); p("你的身份现在为:杀手",50,qwq);cl; k="killer"; xh2(); } else { p("你失败了,返回第一循环。",50,qwq);cl; goto p1; } }else { p("你被那个人无情的杀死了.返回第一循环",50,qwq);cl; goto p1; } } p("你跟了过去,来到了一个奇怪的地方,你看了看指示牌,写着:生命之树",50,awa); p("你看到那个神秘人利用生命之树周围旋转的楼梯爬了上去,于是,你也紧跟着",50,awa); p("经过一段时间的攀爬,你来到了顶端,神秘人就在前方不远,你快步前行,来到他身边",50,awa);cl; p("你对神秘人说:你是谁,在这里干什么?",50,awa); p("神秘人的回答很简单:'救赎'",50,awa); p("请选择:1、把它打下去,2、相信他。",50,qwq); cin>>n;cl; if (n==2) { p("你放走了那个神秘的人",50,awa); p("你的身份现在为:守护者",50,qwq),cl; k="guardian"; xh4(); } p("你认为他的话不可信,于是你把它揍了下去。",50,awa); p("随后,你猛地一回头,发现了一个传送门,你选择:",50,awa); p("1、跳下去。2、有危险,还是别跳了吧。",50,awa); cin>>n;cl; if (n==2) { p("你回头,发现一个人站在你身后。你一个后空翻躲过他的攻击,随后夺走了他的武器。",50,awa); p("你的身份现在为:杀手",50,qwq);cl; k="killer"; xh2(); } p("你跳了进去,一阵头晕目眩过后,看到了一张图,上面写着:记录",50,awa); p("A不回头,C刺A失败,B杀C失败,C毒A失败,C射A失败,A杀C",50,awa); p("现在,请选择:1、成为救兵(80%几率)。2、不成为救兵",50,awa); cin>>n;cl; if (n==2) goto p1; srand(time(0)); int t=rand()%10; if (t==2||t==8) flaghelper=false; p("你的身份现在为:救兵",50,awa); k="helper"; xh3(); } return; } void xh2() { p2:while(k=="killer") { int kill=0,unkill=0; p("第二循环",50,qwq);cl; p("今天是3月18日,你如往常一般起了床,吃过不错的早餐",50,awa); p("你准备出门了,哪知,门外的东西并不寻常。。。。。。",50,awa);cl; p("面前,是一块牌子,上面写着:千万不要回头!!!",50,awa); p("此时,你选择:1、听牌子的话往前走。2、回头看看,我超勇的!",50,awa); cin>>n;cl; if (n==2) { p("你回头,一个恐怖的脸出现在你面前。。。。。。",50,awa); p("请选择:1、逃离,2、杀了他!",50,awa); cin>>n;cl; if (n==1) ++unkill; if (n==2) ++kill; } p("你跟随牌子继续向前,忽然间,看到一个黑影向你招手,手中还拿着一个蛋,仿佛在叫你过去。",50,awa); /*p("你选择:1、跟过去。2、不跟过去",50,awa);cin>>n;cl; if (n==2) { p("你觉得这个人有些可疑,你选择:",50,awa); p("1、不管他。2、杀掉他(40%成功率)",50,awa); cin>>n;cl;if (n==2) {srand(time(0));if (t==3||t==7||t==1||t==5){ p("你成功杀掉了那个人",50,awa); ++kill;} else{ p("你失败了,返回第二循环。",50,qwq);cl; goto p2; } }else{ p("你被那个人无情的杀死了.返回第二循环",50,qwq);cl;goto p2;} }*///剧情不合逻辑 于2020.3.23删除 p("你跟着他来到了一个奇怪的地方,你看了看指示牌,写着:生命之树",50,awa); p("你看到那个神秘人利用生命之树周围旋转的楼梯爬了上去,于是,你也紧跟着",50,awa); p("经过一段时间的攀爬,你来到了顶端,神秘人就在前方不远,你快步前行,来到他身边",50,qwq);cl; p("你对神秘人说:你是谁,在这里干什么?",50,awa); p("神秘人的回答很简单:'救赎'",50,awa); p("你选择:1、把他打下去(70%成功率)。2、相信他",50,awa); cin>>n;cl; if (n==2) { p("你放过了他。",50,awa); p("你的身份现在为:守卫杀手",50,qwq); k="gkiller"; //xh6(); } srand(time(NULL)); int t=rand()%10; if (t==2||t==8||t==7) { p("你没能成功的杀掉他!",50,qwq); goto p2; } ++kill; p("你认为他的话不可信,于是你把它揍了下去。",50,awa); p("随后,你猛地一回头,发现了一个传送门,你选择:",50,awa); p("1、跳下去。2、有危险,还是别跳了吧。",50,awa); cin>>n;cl; if (n==2) { p("你回头,却被飞来的箭射杀了",50,qwq);cl; goto p2; } p("你跳了进去。",50,awa); if (kill==2) cd1(); else p("你感到内心开始颤抖,或许,你到底是不是杀手呢?",50,qwq);cl; p("进入抉择阶段,10%概率回到人类,80%变成勇者,10%变成守卫",50,qwq);cl; srand(time(NULL)); int t1=rand()%10; if (t1==5) { p("事实证明,你其实还是一个人类!",50,awa);cl; p("你的身份现在为:人类!",50,qwq); k="human"; xh1(); } if (t1==3) { p("实际上,你并不想杀人,相反,你还想去保护别人",50,awa);cl; p("你的身份现在为:守卫",50,qwq); k="guardian"; xh4(); } p("看来,你确实能力非凡。。。。。。",50,awa); p("你的身份现在为:暗杀者",50,qwq); k="darkkiller"; //xh5(); } return; } void cd1() { p("恭喜你,触发彩蛋结局!",50,qwq);cl; p("你的最终身份为: 杀戮神!",50,qwq); p("触发条件:在身份为杀手时杀掉所有的人!",50,qwq); p("循环结束,你打破了循环。",50,qwq); p("恭喜达成彩蛋结局1!",50,qwq);cl; cdj1=true; panding(); } void xh3() { while(k=="helper") { p("第三循环",50,qwq);cl; p("今天是3月18日,你如往常一般起了床,吃过不错的早餐",50,awa); p("你准备出门了,哪知,门外的东西并不寻常。。。。。。",50,awa); p("门口有一堆泥土,背后还传来了阵阵响声",50,awa);cl; p("你赶忙躲到泥土后面,看到一个奇怪的身影向着一个熟睡的人跑了过去,并暗暗潜藏",50,awa); p("于是,你决定:1、拯救那个人 2、置之不理",50,awa); cin>>n;cl; if (n==2) { p("你眼睁睁看着那个人起来,走出门外,感到奇怪的回头,死于神秘人的刀下",50,awa); p("你的内心也遭到了打击。这种心情,促使你也加入了神秘人。。。。。。",50,awa); p("你的身份现在为:杀手!",50,qwq);cl; k="killer"; xh2(); } p("你在土堆上放了一个告示牌,写上:“不要回头!!!”",50,awa); p("随后,那人醒了,看到了这个告示牌,决定不回头,于是,你选择:",50,awa); p("1、拿出一个蛋来勾引他。2、让他自生自灭吧,看他造化",50,awa); cin>>n;cl; if (n==2) { p("你被那个人跟过来,杀掉了",50,awa); p("你的身份现在为:人类!",50,qwq);cl; xh1(); } if (flaghelper==false) { p("营救失败了!",50,awa); p("你的身份现在为:人类!",50,qwq);cl; xh1(); } p("你继续勾引着,来到了一个奇怪的地方,你看了看指示牌,写着:生命之树",50,awa); p("你利用生命之树周围旋转的楼梯爬了上去,于是,那个人也紧跟着",50,awa); p("经过一段时间的攀爬,你来到了顶端,那个人就在后方不远,他快步前行,来到你身边",50,qwq);cl; p("那个人对你说:你是谁,在这里干什么?",50,awa); if (!helperfalse) { p("请选择:1、告诉。。。真相?",50,awa); cin>>n;cl; p("没想到,那个人不但不理会,还直接把你打了下去。。。。。。",50,qwq);cl; false1(); } else { p("请选择:1、告诉。。。真相?2、算了,跳下去!",50,qwq); cin>>n;cl; if (n==1) { p("没想到,那个人不但不理会,还直接把你打了下去。。。。。。",50,qwq);cl; false1(); } else { srand(time(NULL)); int t=rand()%100; if (t==24) cd2(); true1(); } } } } void false1() { p("恭喜你,达成假结局!",50,awa); p("请不要灰心,还有很多等着你去探索呢!",50,qwq);cl; p("你的身份现在为:人类!",50,qwq);cl; k="human"; helperfalse=true; xh1(); } void true1() { p("你毅然决然的跳了下去,但出乎你意料的是:底下有一片水塘!你不偏不倚的掉在水塘中。。。。。。",50,qwq);cl; p("恭喜你,达成真结局!",50,qwq);cl; p("你的身份为:救兵!",50,awa);cl; zj1=true; panding(); } void cd2() { p("你掉了下去,可是,下面突然生成了一个虫洞!你被吸了进去。。。。。。",50,qwq);cl; p("伴随一阵眩晕,你掉在了地上。",50,awa); p("面前,是两个人在说话:",50,awa);cl; p("A:不是,我就是个演员,就演一个人类都这么艰难= =",50,awa); p("B:切,我当杀手的比你难多了啊!",50,awa); p("你清醒了过来,接了一句:“我呢? ”",50,awa); p("你们一起开心的笑了。",50,qwq);cl; p("恭喜你,达成彩蛋结局,同时,这是完美的结局之一!",50,awa); p("你的最终身份为:救世神!",50,qwq); p("这个结局的达成方式:跳下去的时候1%的几率达成!",50,qwq);cl; p("恭喜你,拥有欧皇气息!也恭喜你,达成彩蛋结局2!",50,qwq);cl; panding(); } void xh4() { int Guard=0; while(k=="guardian") { p("今天是3月18日,你如往常一般起了床,吃过不错的早餐",50,awa); p("你准备出门了,哪知,门外的东西并不寻常。。。。。。",50,awa); p("你看到一个人正在被另一个人追杀,而前面又有一个人在吸引着。",50,qwq);cl; p("你决定:1、守护被追杀的人。2、守护追杀的那个人",50,awa); cin>>n;cl; if (n==2) { ++Guard; if (Guard>=5) { srand(time(NULL)); int t=rand()%20; if (t==17) cd3(); } p("你将你的能力倾注于那个人身上,但是,有一股神秘的力量,将你的能力尽数反弹,使你失去了能力!",50,awa); p("你的身份现在为:人类!",50,awa); k="human";cl; xh1(); } p("你守护了被追杀的人。",50,awa);cl; p("你看见他一步一步被一个神秘人带上了生命之树,于是,你决定",50,awa); p("1、告诉。。。真相(你是守卫,可以通过心灵沟通)?2、算了,静观其变",50,awa); cin>>n;cl; if (n==1) { p("你告诉了他真相,于是他挥剑,将那个神秘人打落悬崖。",50,qwq);cl; p("你的身份现在为:救兵!",50,awa); k="helper";cl; xh3(); } normal(); } } void cd3() { p("你将你的能力倾注于那个人身上,但是,有一股神秘的力量,将你的能力尽数反弹",50,awa); p("你被突如其来的变化震惊到了,随后被击倒在地。",50,awa); p("过了很久。。。。。。",50,awa); p("你:哇,头好晕,这里是哪里?",50,awa); p("一个神秘的声音传来:红之秘境-无夜镇。",50,qwq);cl; p("恭喜你,达成彩蛋结局:红之秘境-无夜镇!",50,awa); p("这应该是最难达成的彩蛋结局了吧QAQ",50,awa); p("达成方式:守卫守追杀者5次以上5%概率达成",50,awa); p("能达成这个结局的人,真的是持之以恒呢",50,awa); p("对了,悄悄告诉你,红之秘境是彩蛋中的彩蛋哦,具体是什么,嘿嘿嘿XD",50,qwq);cl; p("你的最终身份是:守卫!",50,qwq);cl; cdj3=true; panding(); } void normal() { p("那个人并没有将神秘人打落深渊,而是选择了放过他。这一切,被你尽收眼底。",50,qwq);cl; p("恭喜达成:普通结局!",50,awa); p("你的最终身份是:守卫!",50,qwq); nor=true; panding(); } void panding() { if (cdj1&&zj1&&cdj2&&cdj3&&nor) { success=true; p("你已经达成了所有的结局!",50,qwq);cl; p("恭喜你打破了循环!",50,qwq);cl; p("游戏结束!",50,10000);cl; Sleep(20000); p("哦吼,你居然还没走。",50,qwq); p("那么。。。。。嘿嘿嘿",50,qwq);cl; p("今天是3月19日,你如往常一般起了床,吃过不错的早餐",50,qwq);cl; Sleep(35000); p("好了好了你居然还没有走。那么恭喜你,找到隐藏成就:耐心者!",50,qwq); p("恭喜,你圆满完成了游戏!",50,qwq);cl; for (int i=1;i<=100;++i) { Sleep(300); s="\n"; if (i==30) s=" 如 果 你 永 远 被 困 在 了 3 月 1 8 日 \n"; if (i==40) s=" made by Gspxz \n"; if (i==50) s=" 原帖地址https://www.luogu.com.cn/blog/Allstars-We1lessz/3-yue-18-ri \n"; if (i==60) s=" 本游戏灵感来源:bilibili @GoldenEggs(思路) \n"; if (i==70) s=" 杜绝抄袭,支持原版,从我做起! \n"; if (i==85) s=" T H E E N D \n"; cout<<s; } main(); } else { p("你还没有达成每个结局哦",50,awa); p("将为您传送到第一循环",50,qwq);cl; p("你的身份现在为:人类",50,qwq);cl; k="human"; xh1(); } return; } ```