模拟机4.0

这次新加了一个手机,有更多内容了

对话也没有那么僵硬了

还修复了星期0的bug

星期改为汉字显示

#include<iostream>
#include<cstring>
#include<cstdio>
#include<cmath>
#include<cstdlib>
using namespace std;
int huida;
char mi[100],weekdays[7][7]={"一","二","三","四","五","六","天"};
int hui;
int time=8,weekday=0;
struct muoni{
	int live=100;
	int money=1000;
	int eat=100;
	int gjxq=0;
	int gonjiao=10;
	bool xue=0,shouji=0,ph=0,byl=0,gj=0;
};
muoni r;
struct jineng{
	int shanghai;
	char minzi[100];
	int leixin;
};
jineng skill[100];
struct DaGuai{
	int live=100;
	int attack=100;
	int score=0;
	int skill=1;
	int skillscore;
};
void shezhi(){
	strcpy(skill[0].minzi,"冲撞");
	skill[0].leixin=1;
	skill[0].shanghai=500;
	strcpy(skill[1].minzi,"恢复");
	skill[1].leixin=2;
	skill[1].shanghai=150;
}
int daguai(){
	int yaoguai=3000;
	int ji=0;
	printf("开始打怪吧\n");
	sleep(2);
	printf("他的血量也有三千,非常的厚\n");
	DaGuai ren;
	printf("请选择你的技能\n");
	printf("1.冲撞 2.恢复\n");
	scanf("%d",&ji);
	while(yaoguai>=0){
		printf("普攻(1)技能(2)退出(3)\n");
		printf("你的血量:%d 技能:%s \n",ren.live,skill[ji-1].minzi);		
		scanf("%d",&hui);
		if(hui==1){
			yaoguai=yaoguai-ren.attack;
			printf("你造成了%d点伤害\n",ren.attack);
		}else if(hui==2){
			printf("你使用了%s\n",skill[ji-1].minzi);
			if(skill[ji-1].leixin==1){
				yaoguai=yaoguai-skill[0].shanghai;
				printf("你造成了%d点伤害\n",skill[ji-1].shanghai);
			}else if(skill[ji-1].leixin==2){
				ren.live+=skill[ji-1].shanghai;
				printf("你恢复了%d点血\n",skill[ji-1].shanghai);				
			}			
		}else if(hui==3){
			return 0;
		}
		ren.live-=10;
		if(ren.live<1){
			printf("你被击败了,5秒后将返回...\n");
			sleep(5);
			return 0;
		}
	}
	printf("你成功了,5秒后将返回...\n");
	sleep(5);
	return 0;	
}
void mn1(){
	if(r.money>=100000){
		printf("存款10万元,完成成就:勤工俭学\n");
		printf("作者:NB啊\n");
		sleep(5);
		return;
	}
	if(r.gonjiao>=10000){
		printf("公交卡存款10000元,完成成就:公交达人");
		printf("作者:想必挤过早高峰吧");
		sleep(2);
		return;
	}
	if(time>=24){
		r.xue=!r.xue;
	}
	weekday=weekday+time/24;
	weekday=weekday%7+weekday/7;
	time=time%24;
	printf("现在是%d点,星期%s\n",time,weekdays[weekday]);
	printf("健康:%d 饱腹:%d 公交卡余额:%d 钱:%d\n",r.live,r.eat,r.gonjiao,r.money);
	printf("【上学】(9:00-17:00)(1)  【去公交局】(2)  【查看手册】(必看)(3)  【吃点东西yummy yummy】(4)  【睡觉】(5)\n");	
	printf("【退出游戏】(6)  【去公园】(7) 【刷手机】(8) 【肥家看看】(9) 【去超商】(只能买手机)(10)\n");
	scanf("%d",&hui);
	if(hui==1){
		if(r.gonjiao<=1){
			printf("没钱\n");
		}else{
			time++;
			r.eat-=10;
			if(!r.ph)r.gonjiao-=2;
			if(weekday+1<6&&time==9){
				r.xue=1;
				time+=8;
				r.eat-=20;
				printf("学了一天,饿死了……我得去吃点东西\n");
				sleep(2);		
			}else{
				printf("保安:这么勤奋?怕不是小偷吧(你被赶出去了)\n");
			}
		}	
	}else if(hui==2){
		time++;
		r.eat-=10;
		printf("公交局:您好要办理什么业务? 【公交卡充值】(1)【打杂】(2)\n");
		scanf("%d",&hui);
		if(hui==1){
			printf("充多少?\n");
			scanf("%d",&hui);
			r.money-=hui;
			r.gonjiao+=hui;
		}else if(hui==2){
			r.money+=100;
			r.eat-=50;
			r.live-=10;
			time+=3;
			printf("好累啊……\n");
			sleep(1);
		}
	}else if(hui==3){
		printf("本游戏的目标就是活下去,有两个隐藏结局。\n");
		sleep(2);
		printf("干任何事情都要消耗一小时还有十饱腹度,以下事情额外消耗:\n");
		sleep(1);
		printf("上学周一到周五必上,请在八点时上学,上学额外消耗20饱腹,2公交卡余额\n");
		printf("请把握好时间,否则会被学校开除\n");
		sleep(1);
		printf("吃饭可以补充你的饱腹度,饱腹度=0会扣血,血量=0死亡,吃饭额外消耗100块钱\n");
		sleep(1);
		printf("睡觉可以恢复健康,不消耗饱腹度,但消耗8小时\n");
		sleep(1);
		printf("去公交局打杂可以赚100块钱,但额外消耗10健康,3小时与50饱腹度\n");
		printf("阅读本文案不消耗\n");
		printf("10秒后关闭\n");
		sleep(10);
	}else if(hui==4){
		time++;
		r.eat=100;
		r.money-=100;
		printf("芜湖~~~满满的饱腹感\n");
		sleep(2);
	}else if(hui==5){
		time+=8;
		printf("年轻就是好,倒头就睡\n");
		sleep(2);
		r.live=100;
	}else if(hui==6){
		return;
	}else if(hui==7){
		printf("去公园散散心,真好\n");
		r.live+=50;
		r.eat-=10;
		time+=1;
	}else if(hui==8){
		if(!r.shouji){
			printf("|(gun)吧,你都没有手机,不要上网装b\n");
			sleep(2);
		}else{
			time+=1;
			printf("欢迎您使用话维mate系列\n");
			printf("田猫超市(1) 惊东(2) 威信(3) 线上公交(4)\n");
			scanf("%d",&hui);
			if(hui==1){
				printf("啊哦,网(作)页(者)崩(还)溃(没)了(写)\n");
			}else if(hui==2){
				printf("惊东~~~\n)");
				sleep(2);
				printf("我们有最快的物流,一秒送到\n");
				printf("平衡车900¥ (1)  象棋棋盘100¥ (2) 白玉兰树700¥ (3)\n");
				scanf("%d",&hui);
				if(hui==1){
					printf("平衡车可以代替公交,要购买吗?yes(1) no(0) \n");
					scanf("%d",&hui);
					if(hui==1){
						r.money-=900;
						r.ph=1;
					}
				}else if(hui==2){
					printf("国际象棋可以互动,获得成就与参加比赛的资格,要购买吗?yes(1)no(0)\n");
					scanf("%d",&hui);
					if(hui==1){
						r.money-=100;
						r.gj=1;
					}
				}else if(hui==3){
					printf("白玉兰树可以每回合+10健康,要购买吗?yes(1)no(0)\n");
					scanf("%d",&hui);
					if(hui==1){
						r.money-=700;
						r.byl=1;
					}
				}
			}else if(hui==3){
				printf("作者不写,我也没办法(我不是作者)\n");
				sleep(2);
			}else if(hui==4){
				printf("只因城公交,领先世界1000年!\n");
				sleep(3);
				printf("注销公交卡(1) 充值(2) 帮忙维修网站(+900¥,但消耗10小时,100饱腹,50健康)(3)\n");
				scanf("%d",&hui);
				if(hui==1){
					printf("请稍等……\n");
					sleep(3);
					printf("滴,注销成功,3秒后将返回\n");
					sleep(3);
					r.money+=r.gonjiao;
					r.gonjiao=0;
				}else if(hui==2){
					printf("请转至线下频道!\n");
				}else if(hui==3){
					printf("wocal……码农好累啊……");
					sleep(3);
					time+=10;
					r.eat-=100;
					r.live-=50;
					r.money+=900;
				}
			}
		}
	}else if(hui==9){
		printf("直接睡觉(1)");
		if(r.gj)printf(" van象棋(2)\n");
		scanf("%d",&hui);
		if(hui==1){
			time+=8;
			printf("年轻就是好,倒头就睡\n");
			sleep(2);
			r.live=100;		
		}else if(hui==2&&r.gj){
			printf("钻研中……(饱腹-10)\n");
			r.eat-=10;
			time+=3;
			sleep(2);
			printf("加油少年,多下十几次有惊喜\n");
			r.gjxq+=1;
			sleep(2);
		}
	}else if(hui==10){
		printf("手机要1000的挖 买(1) 不买(0)\n");
		scanf("%d",&hui);
		if(!r.ph)r.gonjiao-=2;
		if(hui==1){
			r.shouji=1;
			r.money-=1000;
			printf("OK啊买下来了\n");
			sleep(3);
		}
	}
	if(r.live<=0||r.money<=0){
		printf("活不下去的人就是逊啦\n");
		sleep(2);
		return;
	}
	if(r.eat<=0){
		r.live-=10;
	}
	if(r.gjxq==25){
		printf("参加市级国际象棋比赛,获得冠军,奖级1000元\n");
		printf("获得成就:象棋高手\n");
		sleep(3);
	}
	if(r.byl){
		r.live+=10;
	}
	if(weekday+1<6&&r.xue==0&&time>=9){
		printf("不来上课,你被开除了!\n");
		sleep(1);
		return;
	}
	mn1();
}
void mn(){
	printf("即将开启与作者一样的苦b生活\n");
	printf("Loading......\n");
	sleep(2);
	printf("小提示:赚钱才是真理\n");
	sleep(3);
	printf("本游戏的目标就是活下去,有两个隐藏结局。\n");
	sleep(2);
	printf("干任何事情都要消耗一小时还有十饱腹度,以下事情额外消耗:\n");
	sleep(1);
	printf("上学周一到周五必上,请在八点时上学,上学额外消耗20饱腹,2公交卡余额\n");
	printf("请把握好时间,否则会被学校开除\n");
	sleep(1);
	printf("吃饭可以补充你的饱腹度至100,饱腹度=0会扣血,血量=0死亡,吃饭额外消耗100块钱\n");
	sleep(1);
	printf("睡觉可以恢复满健康,不消耗饱腹度,但消耗8小时\n");
	sleep(1);
	printf("去公交局打杂可以赚100块钱,但额外消耗10健康,3小时与50饱腹度\n");
	sleep(1);
	printf("去公园可以恢复40健康,不额外消耗\n");
	printf("阅读本文案不消耗\n");
	printf("10秒后关闭(之后可以在“查看手册”中找到)\n");
	sleep(10);
	time=8,weekday=0;
	r.eat=100;
	r.gonjiao=10;
	r.live=100;
	r.money=1000;
	r.xue=0;
	mn1();
}
void youxiliebiao(){
	printf("【打怪小游戏】(1)【校外生活】(2)\n");
	scanf("%d",&hui);
	if(hui==1){
		daguai();
	}else if(hui==2){
		mn();
	}
}
void zhuyao(){
	printf("【打开游戏列表】(1)    【关机(真的)】(2)   【关机(退出程序)】(3)   【听,作者吐槽的声音】(4)  【查看更新日志】(5)\n");	scanf("%d",&huida);
	shezhi();	
	if(huida==1){
		youxiliebiao();
		zhuyao();	
	}else if(huida==2){
		system("shutdown -s -t 0");
	}else if(huida==3){
		return;
	}else if(huida==4){
		printf("懒得写打怪了……\n");
		printf("可以在评论区写自己的留言,我将考虑加入\n");
		printf("(本文20秒后关闭)");
		sleep(20);
		zhuyao();	
	}else if(huida==5){
		printf("v.0.2更新:模拟人生/修复bug\n");
		printf("v.0.3更新:修复大bug/名字正常显示/修复打怪程序/更新/更名\n");
		printf("v.0.4更新:完善星期系统/新增手机\n");
		zhuyao();
	}	
}
int main(){
	system("chcp 65001");
	printf("模 拟 只因\n");
	printf("青 莲 剑 仙 出 品\n");
	sleep(2);
	printf("蒻蒟代码,不喜勿喷\n");
	sleep(2);
	printf("版本号:v.0.3\n");
	printf("注册一个新用户\n");
	scanf("%s",&mi);
	printf("你好,%s\n",mi);
	zhuyao();
	return 0;
}

  • 8
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值