#include <iostream>

using namespace std;

double shengmingli=200;//初始生命力

int gongjili=10;//初始攻击力

int fangyuli=20;//初始防御力

int money=200;//初始金钱数量

bool guoguan;//是否通关判定

void wuqidian();//武器店函数

void yaodian();//药店函数

void guaiwu1();//小怪物函数

void guaiwu2();//大怪物函数

int main()

{

cout<<"欢迎!\n";

cout<<"小镇\n";

cout<<"月溪镇。\n有一家药店"<<endl;

cout<<"和一家武器店。\n";

int xiaozhen;//定义选择项目

cout<<"1.去武器店"<<endl;

cout<<"2.去药品店"<<endl;

cout<<"3.去打小怪"<<endl;

cout<<"4.去打大怪"<<endl;

cout<<"5.退出游戏"<<endl;

cout<<"6.显示你的状态"<<endl;

cin>>xiaozhen;

while(xiaozhen!=5)//输入5时退出游戏

{

if(shengmingli<=0)//生命力小于等于0时游戏结束

{

cout<<"你死啦!"<<endl;

break;

}

if(guoguan)

{

cout<<"恭喜通关!"<<endl;

break;

}

if(xiaozhen==6)//输入6可检测自己的状态

{

cout<<"生命力:"<<shengmingli<<endl;

cout<<"攻击力:"<<gongjili<<endl;

cout<<"防御力:"<<fangyuli<<endl;

cout<<"钱:"<<money<<endl;

}

else

switch(xiaozhen)

{

case 1 : wuqidian();break;

case 2 : yaodian();break;

case 3 : guaiwu1();break;

case 4 : guaiwu2();break;

default : cout<<"err!"<<endl;break;

}

cin>>xiaozhen;

}

if(xiaozhen==5)

{

cout<<"正在退出游戏……"<<endl;

}

cin.get();

cin.get();

return 0;

}

void wuqidian()

{

cout<<"欢迎来到武器店!"<<endl;

cout<<"1、买刀(加攻击力)"<<endl;

cout<<"2、买剑(加攻击力)"<<endl;

cout<<"3、买枪(加攻击力)"<<endl;

cout<<"4、买锯(加攻击力)"<<endl;

cout<<"5、买盾(加防御力)"<<endl;

cout<<"7、离开武器店"<<endl;

int wuqidian;

cin>>wuqidian;

while(wuqidian!=7)//输入7时结束函数

{

switch(wuqidian)

{

case 1 : if(money<10)

cout<<"钱不够"<<endl;//钱不够时返回Flase

else

cout<<"购买成功!"<<endl;//钱足够时返回True

gongjili+=20;

money-=10;

break;

case 2 : if(money<20)

cout<<"钱不够"<<endl;

else

cout<<"成功!"<<endl;

gongjili+=40;

money-=20;

break;

case 3 : if(money<30)

cout<<"钱不够"<<endl;

else

cout<<"成功!"<<endl;

gongjili+=60;

money-=30;

break;

case 4 : if(money<40)

cout<<"钱不够"<<endl;

else

cout<<"成功!"<<endl;

gongjili+=100;

money-=40;

break;

case 5 : if(money<10)

cout<<"钱不够"<<endl;

else

cout<<"成功!"<<endl;

fangyuli+=30;

money-=10;

break;

fangyuli+=60;

money-=20;

break;

default : cout<<"无"<<endl;

break;

}

cin>>wuqidian;

}

if(wuqidian==7)

{      //返回main()主函数

cout<<"欢迎再来!"<<endl;

cout<<"月溪镇\n";

cout<<"周围有一条河,有一片树林,很多房子和很多人。\n有一家药店"<<endl;

cout<<"和一家武器店。\n";

cout<<"1.去武器店"<<endl;

cout<<"2.去药品店"<<endl;

cout<<"3.去打小怪"<<endl;

cout<<"4.去打大怪"<<endl;

cout<<"5.退出游戏"<<endl;

cout<<"6.显示状态"<<endl;

}

}

/*

yaodian()的设置与wuqidian()相同,可参照阅读.

*/

void yaodian()

{

cout<<"欢迎来到药品店!"<<endl;

cout<<"1、买1号补血药(加生命)"<<endl;

cout<<"2、买2号补血药(加生命力)"<<endl;

cout<<"3、买3号补血药(加生命力)"<<endl;

cout<<"4、离开武器店"<<endl;

int yaodian;

cin>>yaodian;

while(yaodian!=1)

{

switch(yaodian)

{

case 1 : if(money<10)

cout<<"钱不够"<<endl;

else

cout<<"成功!"<<endl;

shengmingli+=30;

money-=10;

break;

case 2 : if(money<20)

cout<<"钱不够"<<endl;

else

cout<<"成功!"<<endl;

shengmingli+=50;

money-=1;

break;

case 3 : if(money<40)

cout<<"钱不够"<<endl;

else

cout<<"成功!"<<endl;

shengmingli+=100;

money-=40;

break;

default : cout<<"无"<<endl;

break;

}

cin>>yaodian;

}

if(yaodian==4)

{

cout<<"欢迎再来!"<<endl;

cout<<"月溪镇\n";

cout<<"。周围有一条河,有一片树林,很多房子和很多人。\n有一家药店"<<endl;

cout<<"和一家武器店。\n";

cout<<"1.去武器店"<<endl;

cout<<"2.去药品店"<<endl;

cout<<"3.去打小怪物"<<endl;

cout<<"4.去打大怪物"<<endl;

cout<<"5.退出游戏"<<endl;

cout<<"6.显示你的状态"<<endl;

}

}

/*这里是两个战斗函数,使用指针来处理.避免造成内存崩溃.*/

void guaiwu1()

{

cout<<"开始与小怪物战斗!!!"<<endl;

double* g_shengmingli=new double;//定义怪物生命

int* g_gongjili=new int;//定义怪物攻击力

int* g_fangyuli=new int;//定义怪物防御力

int* g_money=new int;//定义怪物金钱

*g_shengmingli=20;

*g_gongjili=1;

*g_fangyuli=1;

*g_money=50;

double* tongji1=new double;//用来计算主角对怪物的杀伤

double* tongji2=new double;//用来计算怪物对主角的杀伤

*tongji1=0;

*tongji2=0;

int* huihe=new int;//定义回合数

*huihe=1;

cout<<"你开始对小怪物进行攻击!"<<endl;

int* xuanze=new int;

/*

攻击计算公式

杀伤=攻击力*2-防御力

玩家每回合可以选择攻击与逃跑

*/

while((*g_shengmingli)>0 && shengmingli>0 && (*xuanze)!=2)

{

cout<<"现在是"<<"第"<<*huihe<<"回合!"<<endl;

cout<<"请选择你的动作:\n";

cout<<"1、攻击\n2、逃跑\n";

cin>>*xuanze;

switch((*xuanze))

{

case 1 : cout<<"你对小怪物发动了攻击!"<<endl;

*g_shengmingli-=gongjili*2-(*g_fangyuli);

*tongji1=gongjili*2-(*g_fangyuli);

cout<<"你打掉了小怪物"<<*tongji1<<"的生命!"<<endl;

cout<<"小怪物还剩"<<(*g_shengmingli)-(*tongji1)<<"点生命"<<endl;

shengmingli-=(*g_gongjili)*2-fangyuli;

*tongji2=(*g_gongjili)*2-fangyuli;

cout<<"小怪物对你发动了攻击!"<<endl;

cout<<"小怪物打掉了你"<<*tongji2<<"的生命!"<<endl;

cout<<"你还剩"<<shengmingli-(*tongji2)<<"点生命"<<endl;break;

case 2 : cout<<"你决定逃跑!"<<endl;

cout<<"逃跑成功!"<<endl;continue;

default : cout<<"请不要乱选!"<<endl;

}

(*huihe)++;

}

if((*g_shengmingli)<=0)

{//杀死怪物后的返回

cout<<"小怪物被你杀死了!你真厉害!!!"<<endl;

money+=(*g_money);

cout<<"小镇\n";

cout<<"一个1000年的小镇。周围有一条河,有一片树林,很多房子和很多人。\n有一家药店"<<endl;

cout<<"和一家武器店。\n";

cout<<"1.去武器店"<<endl;

cout<<"2.去药品店"<<endl;

cout<<"3.去打小怪物"<<endl;

cout<<"4.去打大怪物"<<endl;

cout<<"5.退出游戏"<<endl;

cout<<"6.显示你的状态"<<endl;

}

else

if(shengmingli<=0)

{//被怪物杀死后的返回

cout<<"你被小怪物杀死了!游戏结束!!!"<<endl;

}

else

if((*xuanze)==2)

{//逃跑的返回

cout<<"你逃回了小镇!"<<endl;

cout<<"小镇\n";

cout<<"一个1000年的小镇。周围有一条河,有一片树林,很多房子和很多人。\n有一家药店"<<endl;

cout<<"和一家武器店。\n";

cout<<"1.去武器店"<<endl;

cout<<"2.去药品店"<<endl;

cout<<"3.去打小怪物"<<endl;

cout<<"4.去打大怪物"<<endl;

cout<<"5.退出游戏"<<endl;

cout<<"6.显示你的状态"<<endl;

}

delete g_shengmingli;

delete g_gongjili;

delete g_fangyuli;

delete g_money;

delete tongji1;

delete tongji2;

}

/*

设置均与void函数guaiwu1()相同,可参照上例阅读.

*/

void guaiwu2()

{

cout<<"开始与大怪物战斗!!!"<<endl;

double* g_shengmingli=new double;

int* g_gongjili=new int;

int* g_fangyuli=new int;

*g_shengmingli=50;

*g_gongjili=15;

*g_fangyuli=10;

double* tongji1=new double;

double* tongji2=new double;

*tongji1=0;

*tongji2=0;

int* huihe=new int;

*huihe=1;

cout<<"你开始对大怪物进行攻击!"<<endl;

int* xuanze=new int;

while((*g_shengmingli)>0 && shengmingli>0 && (*xuanze)!=2)

{

cout<<"现在是"<<"第"<<*huihe<<"回合!"<<endl;

cout<<"请选择你的动作:\n";

cout<<"1、攻击\n2、逃跑\n";

cin>>*xuanze;

switch((*xuanze))

{

case 1 : cout<<"你对大怪物发动了攻击!"<<endl;

*g_shengmingli-=gongjili*2-(*g_fangyuli);

*tongji1=gongjili*2-(*g_fangyuli);

cout<<"你打掉了大怪物"<<*tongji1<<"的生命!"<<endl;

cout<<"大怪物还剩"<<(*g_shengmingli)-(*tongji1)<<"点生命"<<endl;

shengmingli-=(*g_gongjili)*2-fangyuli;

*tongji2=(*g_gongjili)-fangyuli;

cout<<"大怪物对你发动了攻击!"<<endl;

cout<<"大怪物打掉了你"<<*tongji2<<"的生命!"<<endl;

cout<<"你还剩"<<shengmingli-(*tongji2)<<"点生命"<<endl;break;

case 2 : cout<<"你决定逃跑!"<<endl;

cout<<"逃跑成功!"<<endl;continue;

default : cout<<"请不要乱选!"<<endl;

}

(*huihe)++;

}

if((*g_shengmingli)<=0)

{

cout<<"大怪物被你杀死了!你真厉害!!!"<<endl;

guoguan=true;

cout<<"小镇\n";

cout<<"一个1000年的小镇。周围有一条河,有一片树林,很多房子和很多人。\n有一家药店"<<endl;

cout<<"和一家武器店。\n";

cout<<"1.去武器店"<<endl;

cout<<"2.去药品店"<<endl;

cout<<"3.去打小怪物"<<endl;

cout<<"4.去打大怪物"<<endl;

cout<<"5.退出游戏"<<endl;

cout<<"6.显示你的状态"<<endl;

}

else

if(shengmingli<=0)

{

cout<<"你被大怪物杀死了!游戏结束!!!"<<endl;

}

else

if((*xuanze)==2)

{

cout<<"你逃回了小镇!"<<endl;

cout<<"小镇\n";

cout<<"一个1000年的小镇。周围有一条河,有一片树林,很多房子和很多人。\n有一家药店"<<endl;

cout<<"和一家武器店。\n";

cout<<"1.去武器店"<<endl;

cout<<"2.去药品店"<<endl;

cout<<"3.去打小怪物"<<endl;

cout<<"4.去打大怪物"<<endl;

cout<<"5.退出游戏"<<endl;

cout<<"6.显示你的状态"<<endl;

}

delete g_shengmingli;

delete g_gongjili;

delete g_fangyuli;

delete tongji1;

delete tongji2;

}

c++基本语法入门小游戏相关推荐

  1. python打地鼠游戏教程_Python入门小游戏,炫酷打地鼠教程第二部分,都是干货

    还记得那位玩打地鼠小游戏,然后学会python的女白领吗? 那份教程还没有写完,只写到了对游戏中精灵的定义,然后我们继续写. 实现了游戏精灵的定义后,我们就要开始展现真正的技术啦,也就是写主程序. 首 ...

  2. Java实战项目:新手入门小游戏——连连看超详细教程

    小伙伴们应该都玩过连连看吧,今天呢叫大家用Java制作一个属于自己的连连看小游戏! 众所周知,想要学好Java光看视频或看书是不行的,一定要动手实践才可以,而且在面试中,面试官也会问你做过些什么项目? ...

  3. 10个python入门小游戏,零基础打通关,就能掌握编程基础

    前言 不会python就不能用python开发入门级的小游戏? 当然不是,我收集了十个python入门小游戏的源码和教程,并且即使你没有python基础,只要跟着这十个小游戏的开发详细教程去做,以及有 ...

  4. python入门小游戏代码20行,python入门小游戏代码

    python入门可以做的小游戏 1.Python入门拼图小游戏简单介绍:将图像分为m×n个矩形块,并将图像右下角的矩形块替换为空白块后,将这些矩形块随机摆放成原图像的形状. 2.Python入门推箱子 ...

  5. Python入门小游戏:剪刀石头布

    经过前几天的学习,相信小白们已经对Python有了初步的了解和掌握了. 下面,教你们一个入门小游戏,石头剪刀布. 在这个游戏里,我们用到了一个循环:for循环,引用了一个random库. 我们知道,石 ...

  6. 用Construct 2制作入门小游戏~

    今天在软导课上了解到了Construct 2这个神器,本零基础菜鸟决定尝试做一个简单的小游戏(实际上是入门的教程啊= = 首先呢,肯定是到官网下载软件啊,点击我下载~ 等安装完毕后我便按照新手教程开始 ...

  7. python入门小游戏之跳一跳_从零基础开始,用python手把手教你玩跳一跳小游戏,直接打出高分...

    这对于很多人来说,可能是已经过时的游戏,但是对于python入门来说,却是一个非常值得学习的项目. TONOW收集了很多有关python入门的项目案例,包含了相应的教程和源码,哪怕你从未接触编程,也通 ...

  8. Unity入门小游戏 变色跑酷

    这个游戏比较非常适合新手做入门实践的小游戏,它的制作分为三个部分: 1--场景的搭建 游戏场景的搭建,可借助V键进行快速对齐,因为这是一款跑酷游戏,故游戏的难度也应从简单到逐渐困难,这就需要各位萌新发 ...

  9. python入门——小游戏“石头剪刀布”

    文章目录 前言 一.石头剪刀布小游戏 1.1游戏简介 1.2.开发环境.编译语言及所需要的库 1.3.游戏设计与实现 1.4.游戏完整代码块 二.总结 前言 随着人工智能的不断发展,python这门语 ...

最新文章

  1. smbpasswd 和 pdbedit 的区别
  2. NFS介绍、NFS服务端配置安装配置、 NFS配置选项、 客户端的配置
  3. C语言循环队列的实现方法,C语言循环队列(数组实现)
  4. MySQL coalesce()函数
  5. C#LeetCode刷题之#852-山脉数组的峰顶索引(Peak Index in a Mountain Array)
  6. DM8168 TILER(2)
  7. python---用python实现插入排序
  8. 数据挖掘中的KNN算法实现论文
  9. 饥荒联机版专用服务器主机性能较差,饥荒联机版为什么启动服务器慢 | 手游网游页游攻略大全...
  10. 【小样本基础】小样本学习方法总结:模型微调、数据增强、迁移学习
  11. 56个民族下拉选择框
  12. linux清除密码记录
  13. java流分类_什么是流分类-JAVA中什么是流?流经常按照哪几种方式分类,每种方式又将流各分? 爱问知识人...
  14. 可用性及测试方法小介绍
  15. 关于Bundle Adjustment(BA)的直观理解
  16. Altium Designer 19 错误警告 Design contains shelved or modified (but not repoured) polygons
  17. android播放语音,切换听筒模式遇到的问题
  18. 羊毛出在狗身上让猪来买单 - 智能音箱背后的平台经济...
  19. Unity 编辑时 Excel表格导入方法
  20. 什么是JRE?Java运行环境简介

热门文章

  1. c#申请126邮箱 有时提交不了
  2. 时空之轮Android手柄,经典角色扮演类游戏 Android时空之轮
  3. 机房动力环境监控系统
  4. 东京奥运会完美收官,来看看这届奥运会都有哪些人工智能黑科技
  5. 微软被曝泄露2.4TB客户敏感数据;亚马逊因滥用算法面临集体诉讼;推特否认马斯克将裁员75%的传闻 | 每日大事件...
  6. 监测数据报表系统使用和安装说明
  7. 数学语言缩写 c连续d可导,数学分析(1)复习题
  8. [立此存照][转载]昆明小区道路改公用道路新闻两篇
  9. Bandzip与360压缩
  10. 大家都看得见学计算机的决定,卢须振二丫-图书检索系统.PDF