c++rpg黑框游戏_c++实现简单RPG对战游戏的代码.doc

c实现简单RPG对战游戏的代码

c++实现简单RPG对战游戏的代码

#include#include#includeenum propte {sw,ar,mg};class container//人物的小包裹,用来装东西的....目前只装两种物品~有兴趣的可以自己加点东西进去`嘿嘿~{friend class player;//定义一个基类friend class Swordsman;//定义一个剑士friend class Archer;//定义一个弓剑手friend class Mage;//定义一个魔法师,其实我们以前玩的都是这样做的~只要把这些类附给一个人物身上就行了friend void ShowWindows(player &p1,player &p2);//显示框框~当前状态的函数protected:int NumHeal;//生命回复剂int NumMgWorter;//魔法恢复剂public:container ();//构造函数,....目前可有可无的样子~~bool IsNumHealEmpoty();//判断还有没有生命恢复剂bool IsMWEmpoty();//判断还有没有魔法恢复剂void display();//显示当前还有多少魔法恢复剂和生命恢复剂};container::container(){NumHeal = 0;NumMgWorter = 0;}bool container::IsNumHealEmpoty(){return NumHeal == 0?true:false;}bool container::IsMWEmpoty(){return NumMgWorter == 0?true:false;}void container::display(){cout << "还剩下回复剂(HP+100) " << NumHeal << "个" << endl;cout << "还剩下魔法剂 (MP+80) " << NumMgWorter << "个" << endl;}class player//人物的基类{friend class Swordsman;friend class Archer;friend class Mage;//这些都是朋友关系~又是父与子的关系~- -! 好象有点复杂的样子~friend void ShowWindows(player &p1,player &p2);//上面已经说过了~不再重复protected:int Hp,HpMax,Mp,MpMax,speed,Ap,Dp,EXP,LV;//最大血量和最大魔法值,当前血量,魔法值,等等~望文生意char name[10];//人物名称propte role;//人物职业类型bool death ;//是否死亡函数container bag;//人物的小包包~~^public:void IsDead();//判断人物是否死亡bool Dead();//确认人物当前死亡状态~有返回值哦~bool UseHeal();//好累...不过还是继续打字~ 使用生命回复剂bool UseMW();//....跟上面差不多~void Getbag(player &p);//如果电脑死亡....就拿走他的小包包里面的东西~void Shourole();//显示当前人物的职业~....这个是额外的函数~乱写的~void HpMpfull();//每打完一关敌人~HP,MP全满~virtual bool attack(player &p) = 0;virtual bool TSattack(player &p) = 0;virtual void IsLvUp() = 0;//上面三个都是纯虚函数~分别代表 人物的普通攻击~特殊攻击和是否升级};void player::HpMpfull(){Hp = HpMax;Mp = MpMax;}void player::IsDead(){if (Hp <= 0 ){death = 1;}}bool player::Dead(){return death == 1? true:false;}bool player::UseHeal(){if ( !bag.IsNumHealEmpoty() ){Hp +=100;bag.NumHeal --;cout << nam

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值