规则怪谈第一天
现存BUG已修,若发现新BUG请留言
#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
struct wupin{
int s;
string name;
}w[7];
int x=40,n,lizhi=100,a[21],s,t;
string str[6]={"1.每天午夜12点都会更新一条新的实体规则,违反者,死!","2.每当规则更新,上一条规则自动作废。","3.探索楼道有机会获得一些意想不到的东西。","4.电梯很危险,请不要轻易乘坐。","5.除非得到特定物品,否则千万不要离开社区!","6.7天后,依然存活的居民可以安全离开。"};
int Rand(int a,int b){
int f=(rand()+time(NULL)+a)%(b-a+1)+a;
return f;
}
void print(string s){
for(int i=0;i<s.size();i++){
cout<<s[i];
Sleep(x);
}
printf("\n");
}
void prin(string s){
for(int i=0;i<s.size();i++){
cout<<s[i];
Sleep(x);
}
}
bool puzzle(int f){
if(f==1){
print("只见眼前忽然出现一道题目:1+1=2 2+2=4 3+4=30 1+3+5=?");
cin>>n;
if(n==127) return true;
else return false;
}
else if(f==2){
print("只见眼前忽然出现一道题目:1*3=4 2*3=8 3*7=22 4*6=27 5*5=?");
cin>>n;
if(n==26) return true;
else return false;
}
}
void sc(){
w[1].name={"时光回溯器"};
w[2].name={"时光暂停器"};
w[3].name={"理智恢复器"};
w[4].name={"炸弹"};
w[5].name={"生锈的钥匙"};
w[6].name={"泛黄的纸"};
}
int main(){
sc();
system("color 0C");
cout<<"规则怪谈\n";
cout<<" 之";
x=100;
print("公寓惊魂");
x=40;
Sleep(2000);
system("cls");
cout<<"理智:"<<lizhi<<" 第"<<s<<"天"<<endl;
system("color 0F");
print("午夜十二点,正在熬夜打游戏的你看到了群里物业发的消息");
system("pause");
system("cls");
cout<<"理智:"<<lizhi<<" 第"<<s<<"天"<<endl;
print("物业:今天千万,千万不要睡超过五小时!");
system("pause");
system("cls");
cout<<"理智:"<<lizhi<<" 第"<<s<<"天"<<endl;
print("你以为物业是在开玩笑,并没有理会,继续打你的游戏");
system("pause");
system("cls");
cout<<"理智:"<<lizhi<<" 第"<<++s<<"天"<<endl;
print("结果第二天上午,你惊讶地发现,楼下那些平时这个点上学的小孩都不见了,整个小区寂静的可怕");
Sleep(300);
print("这时,你的手机响了起来,是一个陌生的号码,你选择:");
cout<<"1.接 2.不接\n";
cin>>n;
system("cls"); cout<<"理智:"<<lizhi<<" 第"<<s<<"天"<<endl;
if(n==1){
a[1]++;
system("color 0C");
print("陌生人:不要相信任何人,说不定…他已经不是…你所认识的…他…了…");
system("cls");
cout<<"理智:"<<lizhi<<" 第"<<s<<"天"<<endl;
system("color 0F");
print("信号越来越弱,后面的话已经听不清了,只剩下滋滋的电流杂音。一时间,你犹豫不决,不知道该不该相信他说的话");
system("pause");
system("cls");
cout<<"理智:"<<lizhi<<" 第"<<s<<"天"<<endl;
}
else print("你挂了电话。");
print("今天的事很蹊跷,还是要谨慎一点。你这么想着");
system("pause");
system("cls");
cout<<"理智:"<<lizhi<<" 第"<<s<<"天"<<endl;
print("这时,门被敲响了。你选择:");
cout<<"1.开 2.不开 3.透过猫眼往外看\n";
cin>>n;
if(n==1){
system("color 0C");
cout<<"你还是太莽撞了\n";
cout<<"解锁结局:莽撞可不是好行为哟";
exit(0);
}
else if(n==2){
print("敲门声响了半晌,最后伴着一阵脚步声渐渐消失了");
print("你的眉头越皱越深,使劲拧在了一起");
}
else{
print("你从猫眼里看到你的好兄弟李贺");
if(a[1]!=0) print("你想到了那个陌生人的话。");
print("到底开不开门呢");
cout<<"1.开 2.不开\n";
cin>>n;
system("cls");
cout<<"理智:"<<lizhi<<" 第"<<s<<"天"<<endl;
if(n==1){
system("color 0C");
cout<<"呵呵,你还是太相信‘它’了…\n";
if(a[1]) cout<<"解锁结局:有的时候熟人还没陌生人可信";
else cout<<"解锁结局:有的时候熟人还没陌生人可信";
exit(0);
}
else{
print("他还在不停地敲着门。见你半天没反应,他喊道:“秦淮!开门!我有重大发现!”");
print("你的心里一个激灵。既然他知道你的名字,这是否证明他没有问题?开不开门呢?");
cout<<"1.开 2.不开\n";
cin>>n;
system("cls");
cout<<"理智:"<<lizhi<<" 第"<<s<<"天"<<endl;
if(n==1){
int k=Rand(0,1);
if(k==1){
system("color 0C");
cout<<"明明你前面都那么谨慎了,为什么还要给他开门呢…\n";
cout<<"解锁结局:有的时候熟人也不可信哟";
exit(0);
}
else{
print("李贺急急忙忙地冲了进来,大喊:“物业发的是真的!那条奇怪的规则是真的!”");
print("他端起家里的一杯水一口喝下,缓了一会继续说:“我刚才和隔壁李叔遇见了。他告诉我,他儿子莫名失踪了!而且我发现,熬夜工作、打游戏和起床在5点前的人都好好的,其他的人都莫名消失了!”");
print("你震惊地消化着这句话。还没等你缓过神来,他又说:“我先回去了,有事打我电话。要是除了我有人敲门,最好别开。这事儿很蹊跷,说不定很危险,保护好自己!”说罢,他便匆匆离开了");
system("pause");
system("cls");
cout<<"理智:"<<lizhi<<" 第"<<s<<"天"<<endl;
system("color 0E");
print("你平复了一下心情,细细思考了一下,发现李贺的话中有很多漏洞。首先,李贺温文尔雅,他是绝对不会直接拿起别人家的水就喝的。其次,他是怎么知道没熬夜的人都失踪的?虽然不排除他一家家问的情况,但可能性很小。再次,李贺聪明冷静,如果遇到这种情况他一定会选择与自己抱团取暖。总之,他的身上有很多疑点,暂且不要相信他为好。");
system("pause");
system("cls");
cout<<"理智:"<<lizhi<<" 第"<<s<<"天"<<endl;
system("color 0C");
print("可是,“它”为什么要这么做呢(理智-5)");
lizhi-=5;
a[1]++;
}
}
else print("敲了一会儿,他失望的离开了");
}
}
Sleep(1000);
system("color 0F");
system("cls");
cout<<"理智:"<<lizhi<<" 第"<<s<<"天"<<endl;
print("这时,物业发了新的消息:");
system("cls");
system("color 0C");
cout<<"理智:"<<lizhi<<" 第"<<s<<"天"<<endl;
print("物业:为了确保广大小区民众的安全,请务必遵守以下规则:");
print(str[0]);
print(str[1]);
print(str[2]);
print(str[3]);
print(str[4]);
print(str[5]);
print("好了,规则就是这些,祝您安全离开!");
system("pause");
system("cls");
print("看来,这些规则是真的…");
Sleep(1000);
system("color 0F");
print("这条规则只是让我睡觉不要超过5小时,今天我已经睡了大概3小时,剩下的两小时要好好利用。");
t=8;
int r=2;
while(t<24){
system("cls");
cout<<"理智:"<<lizhi<<" 第"<<s<<"天 "<<t<<":00"<<endl;
int k=Rand(1,7);
if(k==3){
system("color 0C");
cout<<"特殊事件发生!悖论启动!命运轮盘开始旋转!\n";
int m=Rand(1,5);
Sleep(500);
cout<<"你的随机数为:";
Sleep(500);
cout<<m<<endl;
Sleep(500);
cout<<"事件:";
if(m==1){
print("嘹亮的钟声传来,你的心神开始恍惚(理智-10)");
lizhi-=10;
if(lizhi<=0){
system("cls");
system("color 0C");
cout<<"你的理智过低,沦为了一具行尸走肉…\n";
cout<<"解锁结局:被公寓催眠的人";
exit(0);
}
}
else if(m==2){
print("时光似乎扭曲了一下,回到了一小时前");
t-=2;
}
else if(m==3){
print("灯光开始闪烁不定,你有些害怕(理智-5)");
lizhi-=5;
if(lizhi<=0){
system("cls");
system("color 0C");
cout<<"你的理智过低,沦为了一具行尸走肉…\n";
cout<<"解锁结局:被公寓催眠的人";
exit(0);
}
}
else if(m==4){
if(puzzle(Rand(1,2))==true){
system("color 0A");
int kkksc03=Rand(1,4);
prin("回答正确!奖励");
print(w[kkksc03].name);
w[kkksc03].s++;
}
else{
system("color 0C");
print("回答错误!时光崩塌!惩罚:扣除任意一件时光法器");
if(w[1].s!=0&&w[2].s!=0){
int kkksc03=Rand(1,2);
w[kkksc03].s--;
prin("扣除");
print(w[kkksc03].name);
}
else if(w[1].s!=0){
w[1].s--;
prin("扣除");
print(w[1].name);
}
else if(w[2].s!=0){
w[2].s--;
prin("扣除");
print(w[2].name);
}
else{
cout<<"既然你没有,那我就不客气啦…\n";
cout<<"解锁结局:有的时候多存点货太重要了" ;
exit(0);
}
}
}
else if(m==5){
system("color 0C");
print("怎么有婴儿的啼哭声从走廊传来…是我听错了吗?");
cout<<"1.出去看看吧 2.还是算了吧\n";
cin>>n;
if(n==1){
int kkksc03=Rand(1,3);
if(kkksc03==1){
system("cls");
system("color 0C");
cout<<"呵呵,你还是太相信“它”了…\n";
cout<<"解锁结局:相信“它”的人都得死";
exit(0);
}
else{
int p=Rand(1,5);
prin("你成功救下了一只将死的猫,它很感激你,送了你一个");
print(w[p].name);
w[p].s++;
}
}
else print("你似乎错过了什么…");
}
else{
system("cls");
system("color 0C");
cout<<"你不会是想卡BUG吧…";
exit(0);
}
Sleep(1000);
system("color 0F");
}
else{
cout<<"你可以:\n";
cout<<"1.探索当前楼层\n";
cout<<"2.使用电梯\n";
cout<<"3.检查房间\n";
cout<<"4.查看物品\n";
cout<<"5.休息恢复理智(剩余次数:"<<r<<")\n";
cout<<"6.";
if(w[5].s!=0) cout<<"离开社区\n";
else cout<<"得到特殊物品解锁\n";
cin>>n;
if(n==1){
int m=Rand(1,7);
if(m==2||m==4||m==7){
int p=Rand(1,4);
prin("你获得了一个");
print(w[p].name);
w[p].s++;
}
else if(m==6){
print("你遇到了一个邻居,他向你打招呼,你:");
cout<<"1.打招呼 2.无视";
if(w[4].s!=0) cout<<" 3.拿炸弹炸死他";
printf("\n");
int f;
cin>>f;
if(f==1){
print("你张口的时候,理智忽然下降了20…");
lizhi-=20;
if(lizhi<=0){
system("cls");
system("color 0C");
cout<<"你的理智过低,沦为了一具行尸走肉…\n";
cout<<"解锁结局:被公寓催眠的人";
exit(0);
}
}
else if(f==2){
system("cls");
system("color 0C");
cout<<"别人和你打招呼却无视可是不礼貌的行为哟\n";
cout<<"解锁结局:要做一个礼貌的好孩子";
exit(0);
}
else if(f!=3||f==3&&w[4].s==0){
system("cls");
system("color 0C");
cout<<"你不会是想卡BUG吧…";
exit(0);
}
else{
print("邻居被炸死了");
w[4].s--;
}
}
else print("你找了半天但一无所获");
}
else if(n==2){
int p=Rand(1,2);
if(p==1){
system("cls");
system("color 0C");
cout<<"电梯忽然失控,向下坠去…\n";
cout<<"解锁结局:你怎么能不听规则的呢";
exit(0);
}
else{
if(puzzle(Rand(1,2))==true){
system("color 0A");
int kkksc03=Rand(1,4);
prin("回答正确!奖励");
print(w[kkksc03].name);
w[kkksc03].s++;
}
else{
system("color 0C");
print("回答错误!时光崩塌!惩罚:扣除任意一件时光法器");
if(w[1].s!=0&&w[2].s!=0){
int kkksc03=Rand(1,2);
w[kkksc03].s--;
prin("扣除");
print(w[kkksc03].name);
}
else if(w[1].s!=0){
w[1].s--;
prin("扣除");
print(w[1].name);
}
else if(w[2].s!=0){
w[2].s--;
prin("扣除");
print(w[2].name);
}
else{
cout<<"既然你没有,那我就不客气啦…\n";
cout<<"解锁结局:有的时候多存点货太重要了" ;
exit(0);
}
}
}
}
else if(n==3){
int m=Rand(1,4);
if(m==1){
print("卧室里的镜子似乎有些异常。它说:“规则4是假的”。");
print("它眨了眨眼睛…");
}
if(m==2){
print("冰箱里有一些食物,你选择:");
cout<<"1.吃 2.不吃\n";
int p;
cin>>p;
if(p==1){
int kkksc03=Rand(1,3);
if(kkksc03==1){
print("食物变质了,你感到不适");
lizhi-=10;
if(lizhi<=0){
system("cls");
system("color 0C");
cout<<"你的理智过低,沦为了一具行尸走肉…\n";
cout<<"解锁结局:被公寓催眠的人";
exit(0);
}
}
else{
print("食物真新鲜!连理智都恢复了不少了呢");
lizhi+=10;
if(lizhi>100) lizhi=100;
}
}
}
if(m==3){
prin("家里的灯似乎坏了,一闪一闪的,怪恐怖的,");
int kkksc03=Rand(1,2);
if(kkksc03==1){
print("你费了好大的劲才修复它,耗了你10理智呢");
lizhi-=10;
if(lizhi<=0){
system("cls");
system("color 0C");
cout<<"你的理智过低,沦为了一具行尸走肉…\n";
cout<<"解锁结局:被公寓催眠的人";
exit(0);
}
}
else print("但你没有管它…");
}
if(m==4){
print("你在客厅发现了一张泛黄的纸,虽然它上面没有字,但你感觉它很有用");
w[6].s++;
}
}
else if(n==4){
cout<<"你有:\n";
for(int i=1;i<=6;i++){
if(w[i].s!=0) cout<<w[i].s<<"个"<<w[i].name<<"\n";
}
cout<<"可以使用:1.时光回溯器 2.时光暂停器 3.理智恢复器 0.离开\n";
int p;
cin>>p;
if(p==0){
t--;
continue;
}
if(w[p].s==0){
prin("你没有");
print(w[p].name);
t--;
continue;
}
w[p].s--;
if(p==1){
print("你回到了两小时前");
t-=3;
}
else if(p==2){
print("时光暂停三小时!");
Sleep(1000);
system("cls");
for(int i=1;i<=3;i++){
cout<<"理智:"<<lizhi<<" 第"<<s<<"天 "<<t<<":00"<<endl;
cout<<"你可以:\n";
cout<<"1.探索当前楼层\n";
cout<<"2.使用电梯\n";
cout<<"3.检查房间\n";
cout<<"(当前状态无法查看物品)\n";
cout<<"4.休息恢复理智(当前状态不限次数)\n";
int asd;
cin>>asd;
if(asd==1){
int m=Rand(1,3);
if(m==2){
int sa=Rand(1,4);
prin("你获得了一个");
print(w[sa].name);
w[sa].s++;
}
else print("你找了半天但一无所获");
}
else if(asd==2){
int ask=Rand(1,2);
if(ask==1){
system("cls");
system("color 0C");
cout<<"电梯忽然失控,向下坠去…\n";
cout<<"解锁结局:你怎么能不听规则的呢";
exit(0);
}
else{
if(puzzle(Rand(1,2))==true){
system("color 0A");
int kkksc03=Rand(1,4);
prin("回答正确!奖励");
print(w[kkksc03].name);
w[kkksc03].s++;
}
else{
system("color 0C");
print("回答错误!时光崩塌!惩罚:扣除任意一件时光法器");
if(w[1].s!=0&&w[2].s!=0){
int kkksc03=Rand(1,2);
w[kkksc03].s--;
prin("扣除");
print(w[kkksc03].name);
}
else if(w[1].s!=0){
w[1].s--;
prin("扣除");
print(w[1].name);
}
else if(w[2].s!=0){
w[2].s--;
prin("扣除");
print(w[2].name);
}
else{
cout<<"既然你没有,那我就不客气啦…\n";
cout<<"解锁结局:有的时候多存点货太重要了" ;
exit(0);
}
}
}
}
else if(asd==3){
int m=Rand(1,3);
if(m==1){
print("冰箱里有一些食物,你选择:");
cout<<"1.吃 2.不吃\n";
int p;
cin>>p;
if(p==1){
int kkksc03=Rand(1,3);
if(kkksc03==1){
print("食物变质了,你感到不适");
lizhi-=10;
if(lizhi<=0){
system("cls");
system("color 0C");
cout<<"你的理智过低,沦为了一具行尸走肉…\n";
cout<<"解锁结局:被公寓催眠的人";
exit(0);
}
}
else{
print("食物真新鲜!连理智都恢复了不少了呢");
lizhi+=10;
if(lizhi>100) lizhi=100;
}
}
}
if(m==2){
prin("家里的灯似乎坏了,一闪一闪的,怪恐怖的,");
if(Rand(1,2)==1){
print("你费了好大的劲才修复它,耗了你10理智呢");
lizhi-=10;
if(lizhi<=0){
system("cls");
system("color 0C");
cout<<"你的理智过低,沦为了一具行尸走肉…\n";
cout<<"解锁结局:被公寓催眠的人";
exit(0);
}
}
else print("但你没有管它…");
}
if(m==3){
print("你在客厅发现了一张泛黄的纸,虽然它上面没有字,但你感觉它很有用");
w[6].s++;
}
}
else if(asd==4){
print("理智恢复了一些…");
lizhi+=10;
if(lizhi>=100) lizhi=100;
}
else{
system("cls");
system("color 0C");
cout<<"你不会是想卡BUG吧…";
exit(0);
}
system("cls");
}
}
else if(p==3){
lizhi=100;
print("理智已回满!");
}
else{
system("cls");
system("color 0C");
cout<<"你不会是想卡BUG吧…";
exit(0);
}
}
else if(n==5){
if(r==0){
system("cls");
system("color 0C");
cout<<"你今天已经睡了五小时喽…";
cout<<"解锁结局:不听规则的下场";
exit(0);
}
else{
print("理智恢复了一些…");
lizhi+=10,r--;
if(lizhi>=100) lizhi=100;
}
}
else if(n==6){
if(w[5].s==0) print("你还没有特殊道具…");
else{
system("cls");
system("color 0A");
cout<<"你成功逃出了社区!\n";
cout<<"已解锁完美结局";
exit(0);
}
}
else{
system("cls");
system("color 0C");
cout<<"你不会是想卡BUG吧…";
exit(0);
}
Sleep(1500);
}
t++;
system("cls");
system("color 0F");
}
system("cls");
cout<<"理智:"<<lizhi<<" 第"<<++s<<"天\n";
print("午夜钟声响起,新的规则公布了…");
return 0;
}