博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C++游戏系列2:角色装备武器
阅读量:6582 次
发布时间:2019-06-24

本文共 1071 字,大约阅读时间需要 3 分钟。

更多见:

知识点:类的组合,A类的数据成员,是B类的对象,或B类的对象,做A类的数据成员

  
【项目-带武器的游戏角色】
  设计一个武器类,其数据成员至少要有武器名、威力,还可以加上你想描述武器的其他数据。想一想要对武器实施什么处理,设计其成员函数。
  在基础上扩充,为每个角色创建一个武器,并在攻击(attack)行为发生时,武器在其中起作用。制定游戏规则,使之接近于真实的游戏场景,并利用成员函数实现游戏规则,最后在main函数中通过调用相应的成员函数,模拟游戏过程。

参考解答:

/*仅设计了一个非常简单的使用武器的规则当攻击对方时,自己涨血数等于自己武器的威力,同时对方失去等量血对方失血变为0或负后,死去欢迎游戏者,按你的想像扩充*/#include 
using namespace std;class Weapon{public: Weapon(string wnam, int f); int getForce();private: string wname; //名称 int force; //威力};Weapon::Weapon(string wnam, int f):wname(wnam),force(f) {}int Weapon::getForce(){ return force;}class Role{public: Role(string nam, int b, string wnam, int f); //构造函数 ~Role(); //析构函数 void eat(int d); //吃东西,涨d血 void attack(Role &r); //攻击别人,自己涨血,同时失血 bool isAlived(); //是否活着 void show(); //显示private: string name; int blood; Weapon weapon; bool life;};Role::Role(string nam, int b, string wnam, int f):name(nam),blood(b),weapon(wnam,f){ if(blood>0) life=true; else life=false;}Role::~Role(){ cout<
<<"退出江湖..."<

转载地址:http://rjsno.baihongyu.com/

你可能感兴趣的文章
Vue+webpack+Element 兼容问题总结
查看>>
《软技能》读书笔记(下)
查看>>
textarea文域高度自适应
查看>>
go语言renderer包代码分析
查看>>
【Scala谜题】成员声明的位置
查看>>
git最最最最...常用命令
查看>>
复杂recyclerView封装库
查看>>
使用Redis构建文章投票网站(Java)
查看>>
见微知著 —— Redis 字符串内部结构源码分析
查看>>
Command './js-ant' failed to execute
查看>>
阿里云NFS NAS数据保护实战
查看>>
Spring cloud配置客户端
查看>>
产品研发项目管理软件哪个好?
查看>>
【阿里云北京峰会】一图看懂机器学习PAI如何帮助企业应用智能化升级
查看>>
ansible playbook使用总结
查看>>
Android API中文文档(111) —— MailTo
查看>>
Linux 中如何卸载已安装的软件
查看>>
thinkphp 3.2 增加每页显示条数
查看>>
oracle日常简单数据备份与还原
查看>>
我的友情链接
查看>>