【C++运用】(基于控制台)完成3个章节的文字游戏---ShinePans

#include <iostream>
#include <string>
using namespace std;
static int coin = 10;
void gameover1();
void gameover2();
void gameover3();
void menu();
void welcome();
void class1();
void class2();
void class3();
void class4();
void class5();
void class6();
void help();
void cheat();
void gameover3(){
	int ask;
	cout << "1.继续游戏\n2.不玩了" << endl;
	cin >> ask;
	switch (ask){
	case 1:coin--;
		cout << "复活币-1, 您现在还剩下" << coin << "枚复活币" << endl;
		system("pause");
		class3(); break;
	case 2:cout << "回到主菜单!" << endl;
		system("pause");
		welcome();
	default:cout << "输入错误!" << endl; gameover3(); break;
	}
}
void gameover2(){
	int ask;
	cout << "1.继续游戏\n2.不玩了" << endl;
	cin >> ask;
	switch (ask){
	case 1:coin--;
		cout << "复活币-1, 您现在还剩下" << coin << "枚复活币" << endl;
		system("pause");
		class2(); break;
	case 2:cout << "回到主菜单!" << endl;
		system("pause");
		welcome();
	default:cout << "输入错误!" << endl; gameover2(); break;
	}
}
void gameover1(){
	int ask;
	cout << "1.继续游戏\n2.不玩了" << endl;
	cin >> ask;
	switch (ask){
	case 1:coin--;
		cout << "复活币-1, 您现在还剩下" << coin << "枚复活币" << endl;
		system("pause");
		class1(); break;
	case 2:cout << "回到主菜单!" << endl;
		system("pause");
		welcome();
	default:cout << "输入错误!" << endl; gameover1(); break;
	}
}
void help(){
	system("cls");
	cout << "每过一关+1复活币,没失败一次-1复活币;\n\n欢迎来到潘尚的游戏,更多技术支持,请加好友:574273250." << endl;
	cout << "Copyright@潘尚 2014-1-20.\n将回到主菜单!" << endl;
	system("pause");
	welcome();
}
void cheat(){
	int choose, times = 0;
	string cheat;
	string answer1 = "abcde", answer2 = "ABcde", answer3 = "AbCdE";
	cout << "-----------------------------------" << endl;
	cout << "|    1.充值复活币                 |" << endl;
	cout << "|    2.获取作弊码                 |" << endl;
	cout << "-----------------------------------" << endl;
	cin >> choose;
	switch (choose){
	case 1:
	cheat_again : cout << "请输入您的作弊码并按回车(不同作弊码可获得不同值的复活币)" << endl;
		cin >> cheat;
		if (cheat == answer1) {
			coin += 10;
			cout << "复活币获取成功,+10,将进入主菜单!" << endl;
			system("pause");
			welcome();
		}
		else if (cheat == answer2) {
			coin += 50;
			cout << "复活币获取成功,+50,将进入主菜单!" << endl;
			system("pause");
			welcome();
		}
		else if (cheat == answer3) {
			coin += 100;
			cout << "复活币获取成功,+100,将进入主菜单!" << endl;
			system("pause");
			welcome();
		}
		else{
			times++;
			cout << "抱歉,输入错误,请重新输入" << endl;
		}
		if (times == 5){
			cout << "您输入的错误次数过多,程序将退出.." << endl;
			system("pause");
			exit(0);
		}
		goto cheat_again;
	case 2:cout << "获取作弊码,请联系潘尚,qq:574273250\n." << endl;
		cout << "将进入主菜单!" << endl;
		system("pause");
		welcome();
	}
}
void welcome(){
	int choose;
	system("cls");
	cout << "-----------------------------------" << endl;
	cout << "欢饮进入我的游戏!\n1.开始.\n2.帮助.\n3.购买复活币.\n" << endl;
	cout << "-----------------------------------" << endl;
	cin >> choose;
	switch (choose){
	case 1:menu(); break;
	case 2:help(); break;
	case 3:cheat(); break;
	default:
		cout << "输入错误,请重新输入" << endl;
		system("pause");
		welcome();
	}
}
void menu(){
	int choose;
	system("cls");
	cout << "第一关......<死亡海岸线>." << endl;
	cout << "第二关......<诡异客栈>." << endl;
	cout << "第三关......<尖叫娃娃岛>." << endl;
	cout << "第四关......<被遗弃的校园>." << endl;
	cout << "第五关......<绿色医院>." << endl;
	cout << "第六关......<白色丧失林>.\n\n\n" << endl;
	cout << "游戏开始每个人都有10个复活币.请慎重思考,预祝通关!\n\n" << endl;
	cout << "1.开始游戏.\n2.返回." << endl;
	cin >> choose;
	switch (choose){
	case 1:class1(); break;
	case 2:welcome(); break;
	default:cout << "输入错误,请重新输入!" << endl;
		system("pause");
		menu(); break;
	}
}
void class1(){
	system("cls");
	int choose;
	cout << "欢迎来到第一关<死亡海岸线>" << endl;
	system("cls");// 1-1
	cout << "<死亡海岸线>-1" << endl;
	cout << "现在您有" << coin << "个复活金币!\n" << endl;
	cout << "你乘坐着旅游的航班在海上航行,忽然一阵暴风雨来了,你在甲板上晕了过去,醒来的时候,你抱着一块木头,有一位女子和一名男子正在你的身边,女子的身份是一位杀手,男子身世不明,你身上的药只能就醒一位" << endl;
	cout << "你选择:" << endl;
	cout << "1.女子 2.男子\n" << endl;
	cin >> choose;
	switch (choose){
	case 1:cout << "惨咯。你救了女子上岸,没想到她竟然是个嗜血杀人狂!后果...GAME OVER!\n继续游戏吗?" << endl;
		gameover1(); break;
	case 2:cout << " 恭喜恭喜,你和男子上岸后,男子对你说他是一名厨师,并在岛上找了一些能吃的东西做给你吃!\n" << endl;
		coin++;
		system("pause"); break;
	default:gameover1();
	}
	system("cls"); //1-2
	cout << "<死亡海岸线>-2" << endl;
	cout << "现在您有" << coin << "个复活金币!\n" << endl;
	cout << "你们吃饱了喝足了,决定继续前行,这时候,树丛里发出沙沙等的声响你决定:\n1.去看看树丛里有啥\n2.继续走" << endl;
	cin >> choose;
	switch (choose){
	case 1:cout << "你翻开树丛,看见一个昏迷的小女孩,看她的衣服好像是当地人,于是你把剩下的药给她吃了<因为孩子的药量比成人少>,她醒了过来,为了报答你,她决定给你画一个地图!" << endl;
		coin++;
		system("pause"); break;
	case 2:cout << "不幸不幸,你继续向前走,可因为不了解这里的路和厨师一下子掉下了一个悬崖.. Game 0ver!" << endl;
		gameover1(); break;
	default:gameover1();
	}
	system("cls"); //1-3
	cout << "<死亡海岸线>-3" << endl;
	cout << "现在您有" << coin << "个复活金币!\n" << endl;
	cout << "女孩画好了地图,匆匆忙忙给了你,就跑向了一条路,你看见地图上那条路通往的是一个很恐怖的地方,你觉得十分奇怪 你决定\n\n1.跟去看看\n2.跟着地图去一个有吃的地方\n" << endl;
	cin >> choose;
	switch (choose){
	case 1:cout << "你跟着女孩来到那个恐怖的地方,结果女孩的牙齿变得特别长,你才发现原来是吸血鬼!你和厨师吓得阿地一叫,惊动了女孩吸血鬼,她将你们的血吸得干干净净" << endl;
		gameover1(); break;
	case 2:cout << "你犹豫不决,但还是选择去找一个能吃东西的地方,你们颤颤巍巍来到那个地方,发现那里已经摆好了餐桌,你们坐下来正准备吃.突然..." << endl;
		coin++;
		system("pause"); break;
	default:gameover1();
	}
	system("cls");  //1-4
	cout << "<死亡海岸线>-4" << endl;
	cout << "现在您有" << coin << "个复活金币!\n" << endl;
	cout << " 突然,你觉得一阵寒风吹来,你发现你的背后竟然有一个白色的影子!而厨师后面什么都没有!你惊恐地大叫起来,并想拉起厨师跑掉。这时候厨师冷笑了一声:“孩子们,把他干掉”你吃惊极了。你的右手边有两样工具,你选择:\n1 蜡烛 \n2 钳子" << endl;
	cin >> choose;
	switch (choose){
	case 1:cout << "没想到吸血鬼怕火!你的蜡烛烧完之后,厨师和白色影子都不见了" << endl;
		coin++;
		system("pause"); break;
	case 2:cout << "你抓起钳子一通乱夹,结果你把厨师夹得毁容,他十分气愤,叫来更多白影子来咬你! Game 0ver!" << endl;
		gameover1(); break;
	default:gameover1();
	}
	system("cls"); //1-5
	cout << "<死亡海岸线>-5" << endl;
	cout << "现在您有" << coin << "个复活金币!\n" << endl;
	cout << " 你觉得此地不宜久留,于是你很惊恐的拿起剩下的钳子就跑掉了。 你乱跑到一个地方,你不认识,天色已经晚了,你得选择一个地方睡觉 你选择:\n1 树上 \n2 阴森的树丛里" << endl;
	cin >> choose;
	switch (choose){
	case 1:cout << "你睡在树上,发现有许多的吊死鬼,但是你顾不了那么多,由于阴气太重,连鬼也不敢来" << endl;
		coin++;
		system("pause"); break;
	case 2:cout << " 你睡在树丛里,晚上,忽然一个鬼跳了出来,你惊恐万分,撒开腿就跑,没想到被树丛里的草拌了一跤。后果华丽丽的...  Game 0ver!" << endl;
		gameover1(); break;
	default:gameover1();
	}
	system("cls");  //1-6
	cout << "<死亡海岸线>-6" << endl;
	cout << "现在您有" << coin << "个复活金币!\n" << endl;
	cout << "在树上睡了一夜,早上天刚亮你就醒来了,你下了树,看见两个人. 一个是头顶有血迹的女人,一个是手上拿着骨头(不知道什么骨头)的女人 你选择:\n1 前者 \n2 后者" << endl;
	cin >> choose;
	switch (choose){
	case 1:cout << "你由于太孤单,觉得这个人不是特别吓人就选了她,没想到她头顶上的血不是自己的血,而是她抓来一个人把他心脏搏出来放在头顶上留下的血迹!然后你的心脏也这样了.. " << endl;
		gameover1(); break;
	case 2:cout << "你忧郁的选择了拿着骨头的女人,她对你说,她手上的骨头是鸡骨头,虚惊一场" << endl;
		coin++;
		system("pause"); break;
	default:gameover1();
	}
	system("cls");  //1-7
	cout << "<死亡海岸线>-最后一节" << endl;
	cout << "现在您有" << coin << "个复活金币!\n恭喜来到最后一小节,要过关啦!" << endl;
	cout << "和女人一直往前走,走到了一个岔路口,这个岔路口的中间有一张纸条。 上面写着:这是死亡海岸线的最后选择题,如果选择正确你将离开这里,到达下一个地方!祝你好运 岔路口的样子:左边:满地的人骨,树上吊着许多人 右边:布满荆棘,还必须脱掉鞋子走;你选择: \n1 左边 \n2右边" << endl;
	cin >> choose;
	switch (choose){
	case 1:cout << "你选择了左边,看来,你选择错误,路边有一个正在把路上还没有腐烂的人挂到树上得人,看到你,他十分惊喜,将你和女人打昏,挂在树上 (自挂东南枝...) " << endl;
		gameover1(); break;
	case 2:cout << "你选择了右边,你和女人脱掉了鞋子,忍着剧痛在荆棘上走着,走完这段路,你们到达了下一关,恭喜!" << endl;
		coin++;
		system("pause");
		class2(); break;
	default:gameover1();
	}
}
void class2(){
	int choose;
	system("cls");
	cout << "欢迎来到第二关<诡异客栈>复活币奖励+3!" << endl;
	coin += 3;
	cout << "现在您有" << coin << "个复活金币!\n" << endl;
	system("cls"); //2-1
	cout << "<诡异客栈>-1" << endl;
	cout << "现在您有" << coin << "个复活金币!\n" << endl;
	cout << " 你们穿越了荆棘路,看到了一栋较新的房子,你们高兴极了,看到房子的门口贴着招牌《客栈》却没有注明名字,旁边坐了一个伤心地女人,正在哭。你选择:\n1 住客栈 \n2 回到死亡海岸线" << endl;
	cin >> choose;
	switch (choose){
	case 1:cout << "女人突然站起来,问道:两位住房吗? 你们点点头,进了客栈,没有恐怖的事情发生" << endl;
		coin++;
		system("pause"); break;
	case 2:cout << " 结果碰到了厨师......  Game 0ver!" << endl;
		gameover2(); break;
	default:gameover2();
	}
	system("cls"); //2-2
	cout << "<诡异客栈>-2" << endl;
	cout << "现在您有" << coin << "个复活金币!\n" << endl;
	cout << " 到了晚上,你和女人各住一间房,客栈的女老板交代,晚上无论如何都不要出房间。可是旁边一个疯女孩说道::“她骗人,我妈妈也是这么被骗的!如果不在午夜12点前离开,你们就会死掉!”你选择相信: \n1 女老板 \n2 疯女孩" << endl;
	cin >> choose;
	switch (choose){
	case 1:cout << "你信了女老板,没有出客栈,结果一晚上安然无恙" << endl;
		coin++;
		system("pause"); break;
	case 2:cout << " 你信了疯女孩,出了客栈,女孩也跟着你们出来了,她突然大笑起来,牙齿长得特别长,原来是死亡海岸线的那个女孩子! Game 0ver!" << endl;
		gameover2(); break;
	default:gameover2();
	}
	system("cls"); //2-3
	cout << "<诡异客栈>-3" << endl;
	cout << "现在您有" << coin << "个复活金币!\n" << endl;
	cout << " 你醒来了,你发现特别诡异,睡了一晚后,房间的窗外居然仍然是黑色,你等了2个小时,仍然是黑色,可是明明已经正午了!你心里十分发毛,这时候女老板来敲了女人房间的门,说了一句:“你旁边的房间有...”后来的话你没有听到,之后女老板也来敲了你的门,对你说道:“吃饭了”你十分想知道刚才的后面说了什么,可你又非常饿。你选择:\n1 吃饭 \n2 询问" << endl;
	cin >> choose;
	switch (choose){
	case 1:cout << "你老老实实地吃饭,没有任何事发生" << endl;
		coin++;
		system("pause"); break;
	case 2:cout << " 你询问了女老板,她如实的告诉了你,可是你没想到的是,她会杀掉你,以免你讲出去! Game 0ver!" << endl;
		gameover2(); break;
	default:gameover2();
	}
	system("cls"); //2-4
	cout << "<诡异客栈>-4" << endl;
	cout << "现在您有" << coin << "个复活金币!\n" << endl;
	cout << " 你吃完了饭,觉得不能问女老板,但是可以问女人。这时候,女老板在你后面阴森森说了一句:“不要去问她们哦——”你特别不解,不是只有女人一个人住吗,你突然想起了不好的东西。你发了冷战。你还回去问吗:\n1 不问 \n2 问" << endl;
	cin >> choose;
	switch (choose){
	case 1:cout << "你没有听女老板的话,去问了女人,看来女人是个好“鬼”她告诉你旁边有鬼,并邀请你来她的房间,你平安的度过了一个夜晚。" << endl;
		coin++;
		system("pause"); break;
	case 2:cout << " 你没有问,结果你也不知道为什么,觉得床下有东西,你看了一眼,有一个小孩子,正在床下玩玩具!小孩子让你华丽丽的死亡。 Game 0ver!" << endl;
		gameover2(); break;
	default:gameover2();
	}
	cout << "平安度过夜晚后,你醒了过来,发现睡在一片空地上,这时你明白你来到了下一关\n== == == == == == == == == == == == == = 第二关END" << endl;
	system("pause");
}
void class3(){
	int choose;
	system("cls");
	cout << "欢迎来到第二关<尖叫娃娃岛>复活币奖励+3!" << endl;
	coin += 3;
	cout << "现在您有" << coin << "个复活金币!\n" << endl;
	system("cls"); //3-1
	cout << "<尖叫娃娃岛>-1" << endl;
	cout << "现在您有" << coin << "个复活金币!\n" << endl;
	cout << " 你擦了擦眼睛,发现空地周围有许多树,另一面是海,树上挂着许多娃娃,海里飘着许多娃娃,你觉得十分诡异你决定:\n1 四处转转了解情况\n2 拿下一个娃娃陪自己" << endl;
	cin >> choose;
	switch (choose){
	case 1:cout << "女人突然站起来,问道:两位住房吗? 你们点点头,进了客栈,没有恐怖的事情发生" << endl;
		coin++;
		system("pause"); break;
	case 2:cout << " 结果碰到了厨师......  Game 0ver!" << endl;
		gameover3(); break;
	default:gameover3();
	}
}
int main(){
	welcome();
	system("pause");
	return 0;
}
exe:http://yunpan.cn/Qz9cySmaBC5NT







            

没有更多推荐了,返回首页