哈喽,鸽了许久的酱某终于回来啦!
又来整新活了~
在中国,紧急拨号一般分成:
110 、120、119
但在美国,他们的救援电话是一体的,那就是:
911
一款名叫《911接线员》的游戏便应运而生了。
但这并不是酱某我的游戏~
今天我们就要复刻一下这款策略性游戏。
———————————————————闲话少说————————————————————
1.游戏玩法
我们担任一个接线员,接听民众打来的求救电话,然后和民众进行交流,花资金雇佣人力物力,派出警队、医疗队、消防队前往救援。
2.代码实现
int t1(){
cout<<"女士:您好!"<<endl;
delay(1);
cout<<"你:您好。"<<endl;
delay(1);
cout<<"女士:我...我们家...着火了。"<<endl;
delay(1);
cout<<"你:您的地址?"<<endl;
delay(1);
cout<<"女士:洛克伍德街45号。"<<endl;
delay(1);
cout<<"你:好的。"<<endl;
delay(1);
cout<<"A.有人受伤吗?B.我现在为您派消防员。C.我让外卖给您捎个灭火器。"<<endl;
char t1q;
cin>>t1q;
return t1q;
}
我尝试用函数解决,以便使代码简化,避免if套if的情况。
但事与愿违,主函数还是十分冗长:
if(r==1){
char f1=t1();
if(f1=='A'){
score+=5;
cout<<"女士:我...我老公...他...在火里烧伤了..."<<endl;
delay(1);
cout<<"你:了解。我会派出消防队、医疗队,预计在15分钟到达。"<<endl;
delay(1);
cout<<"女士:谢谢你。"<<endl;
delay(1);
cout<<"你:不用谢,我们为公民们服务。"<<endl;
delay(1);
cout<<"按任意键挂电话。"<<endl;
cin>>gua;
cout<<"通话结束。"<<endl;
system("cls");
cout<<"___________________________________________________________"<<endl;
cout<<" 任务简报"<<endl;
cout<<"地点:洛克伍德街45号 |出动警力:"<<endl;
cout<<"火势:15 |出动医疗:"<<endl;
cout<<"伤亡:1人中度烧伤(6) |出动消防:"<<endl;
cout<<"明细:初级消防员 3火势/人 |救护车42$/次(救治+9,急救1人)"<<endl;
cout<<" 1人-救援-1人|警车20$/次(逮捕嫌疑人)"<<endl;
cout<<" 初级创伤小组 2伤势/人|消防车38$/次(灭火+10)"<<endl;
cout<<" 3人-急救-1人|暴动:0"<<endl;
cout<<" 初级警员 1暴动/人|火势:18"<<endl;
cout<<" 5人-肃清-1场事件|伤亡:6"<<endl;
cout<<" 3人-逮捕-1嫌疑人|"<<endl;
cout<<"请输入要出动的警员、警车:"<<endl;
cin>>jing>>jingche;
cout<<"请输入要出动的医疗队、救护车:"<<endl;
cin>>yi>>yiche;
cout<<"请输入要出动的消防队、消防车:"<<endl;
cin>>huo>>huoche;
delay(1);
system("cls");
cout<<"救援队正在赶往事故地点."<<endl;
delay(1);
system("cls");
cout<<"救援队正在赶往事故地点.."<<endl;
delay(1);
system("cls");
cout<<"救援队正在赶往事故地点..."<<endl;
delay(1);
system("cls");
if((6-yi*2-yiche*9<=0)&&(18-huo*3-huoche*10<=0)){
cout<<"任务完成"<<endl;
score+=15;
money=money-jing*5-jingche*20-yi*10-yiche*42-huo*8-huoche*38+95;
delay(3);
system("cls");
}
else{
cout<<"任务失败"<<endl;
score-=5;
money=money-jing*5-jingche*20-yi*10-yiche*42-huo*8-huoche*38+15;
delay(3);
system("cls");
}
}
else if(f1=='B'){
cout<<"你:我为您出动6名消防员救火,立即出动。"<<endl;
delay(1);
cout<<"女士:等等,我,我老——啊!!!"<<endl;
delay(0.35);
cout<<"电话挂了。"<<endl;
money+=1;
score-=10;
cout<<"任务不成功"<<endl;
cout<<"火被扑灭,女人的老公却因无法得到救治而死。"<<endl;
delay(3);
system("cls");
}
else{
cout<<"女士:<该剧脏话被和谐>"<<endl;
cout<<"任务失败"<<endl;
score-=35;
delay(3);
system("cls");
}
}
这也仅仅是一个问题的代码,正式版我们还要保证一回不重样呢~
头要秃了呜呜呜┭┮﹏┭┮......
本作有资金和积分机制,暂未实装。
3.技术亮点
void delay(float seconds) { //增加延时时间,功能设计
clock_t start=clock();
clock_t lay=(clock_t)seconds * CLOCKS_PER_SEC;
while((clock()-start)<lay);
}
延时设计代码,想要的可以自取~
4.游戏剧情
if(a==1){
cout<<"你的名字?"<<endl;
string name;
cin>>name;
cout<<"您好,"<<name<<"欢迎上岗。"<<endl;
delay(1.5);
cout<<"未知:嗨,新的接线员?"<<endl;
delay(1.5);
cout<<"你:额...您好..."<<endl;
delay(1.5);
cout<<"未知:不用拘谨啊,我是这边的接线员指挥,安娜。"<<endl;
delay(1.5);
cout<<"你:嗯…很高兴见到您,安娜。"<<endl;
delay(1.5);
cout<<"安娜:这边是你的工位,不错吧?"<<endl;
delay(1.5);
cout<<"你:嗯,我觉得不错。"<<endl;
delay(1.5);
cout<<"安娜:好的,那我们开始吧。"<<endl;
delay(1.5);
cout<<"安娜:你会随时接到报警、求救电话,你需要出动警队、医疗队、消防队,去急救他们、逮捕匪徒,同时和他们仔细沟通。"<<endl;
cout<<"安娜:你要用自己的资金来雇佣干员们,还要买设施。"<<endl;
cout<<"安娜:对了,别忘了注意言辞!"<<endl;
cout<<"安娜:开始快乐的一天吧!"<<endl;
delay(5);
system("cls");
———————————————————————————————————————————
那本期内容就到这里了,喜欢的同学可以点一个赞,目前游戏正在内测,不提供下载哦~
Bye!!
大伙都不瞎吧,能看见吗,告诉大家,开学前一定会公测,等着吧!!!