格斗游戏c语言代码,C/C++知识点之设计并编写代码自动格斗类游戏
#includeusing namespace std;
class CRole//角色类:基类
{
public:
CRole();
CRole(char *name,int ATK,int DEF,int Lv,int EXP);//构造函数
~CRole(){};
public:
char *name;
int hp;
int ATK;
int DEF;
int Lv;
int EXP;
public:
void WpAttack();//武器攻击
void jump();//跳跃
};
CRole::CRole(char *name,int ATK,int DEF,int Lv,int EXP)
{
this->name = name;
this->hp = 100;
this->ATK = ATK;
this->DEF = DEF;
this->Lv = Lv;
this->EXP = EXP;
}
class CHero: public CRole//英雄类
{
public :
CHero(){};
CHero(char *name,int ATK,int DEF,int Lv,int EXP):CRole(name,ATK,DEF,Lv,EXP){};//构造函数
~CHero(){};
public:
void Kicking();//踢腿技能
void Wrestling();//抱摔技能
public:
int k_ATK;//踢腿技能攻击力
int w_ATK;//抱摔技能攻击力
};
void CHero::Kicking()//使用踢腿技能时,初始化踢腿技能攻击力
{
k_ATK = 30;
}
void CHero::Wrestling()//使用抱摔技能时,初始化抱摔技能攻击力
{
w_ATK = 20;
}
class CEnemy:public CRole//敌人类
{
public :
CEnemy(){};
CEnemy(char *name,int ATK,int DEF,int Lv,int EXP):CRole(name,ATK,DEF,Lv,EXP){};//构造函数
~CEnemy(){};
public:
void zp();//劈掌技能
void lht();//连环踢技能
public:
int z_ATK;//劈掌技能攻击力
int l_ATK;//连环踢技能攻击力
};
void CEnemy::zp()//使用劈掌技能时,初始化劈掌技能攻击力
{
z_ATK = 20;
}
void CEnemy::lht()//使用连环踢技能时,初始化连环踢技能攻击力
{
l_ATK = 30;
}
class CBattle//战斗类
{
public :
CBattle();//构造函数
~CBattle(){};
public:
void attacMode(CHero R1,CEnemy R2);//战斗函数
public:
int i;
int temp;
};
CBattle::CBattle()
{
i = 1;
temp = 0;
}
void CBattle::attacMode(CHero R1,CEnemy R2)
{
srand((unsigned)time(0));//生成随机种子
while(R1.hp>0&&R2.hp>0)//当英雄和敌人HP都大于0时继续战斗
{
temp = rand()%3;//生成0-2随机数
if(i%2!=0)//当i为奇数时英雄进行攻击
{
if(temp==0)//当随机数生成0时,英雄进行普通攻击
{
int harm = R1.ATK-R2.DEF;
R2.hp -= harm;
cout<
}
if(temp==1)//当随机数生成1时,英雄使用踢腿技能
{
R1.Kicking();
int harm = R1.ATK+R1.k_ATK-R2.DEF;
R2.hp -= harm;
cout<
}
if(temp==2)//当随机数生成2时,英雄使用抱摔技能
{
R1.Wrestling();
int harm = R1.ATK+R1.w_ATK-R2.DEF;
R2.hp -= harm;
cout<
}
}
if(i%2==0)//当i为偶数时敌人进行攻击
{
if(temp==0)//当随机数生成0时,英雄进行普通攻击
{
int harm = R2.ATK-R1.DEF;
R1.hp -= harm;
cout<
}
if(temp==1)//当随机数生成1时,敌人使用劈掌技能
{
R2.zp();
int harm = R2.ATK+R2.z_ATK-R1.DEF;
R1.hp -= harm;
cout<
}
if(temp==2)//当随机数生成2时,敌人使用连环踢技能
{
R2.lht();
int harm = R2.ATK+R2.l_ATK-R1.DEF;
R1.hp -= harm;
cout<
}
}
i++;
}
i = 0;
if(R1.hp<=0)
{
cout<
R2.EXP +=100;
if(R2.EXP>=100)
{
R2.Lv++;
cout<
}
cout<
}
if(R2.hp<=0)
{
cout<
R1.EXP +=100;
if(R1.EXP>=100)
{
R1.Lv++;
cout<
}
cout<
}
}
int main()
{
CHero yx("英雄",5,2,1,0);
CEnemy dr("敌人",4,2,1,0);
CBattle battle;
battle.attacMode(yx,dr);
}
格斗游戏c语言代码,C/C++知识点之设计并编写代码自动格斗类游戏相关推荐
- 设计并编写代码自动格斗类游戏
题目描述: 1)角色类CRole为基类: 构造函数.析构函数: 成员变量:头像.HP(血量).ATK(攻击力).DEF(防御力).Lv(等级),EXP(经验值): 成员函数:武器攻击.跳跃. 2)英雄 ...
- python编写格斗游戏_设计并编写代码自动格斗类游戏
题目描述: 1)角色类CRole为基类: 构造函数.析构函数: 成员变量:头像.HP(血量).ATK(攻击力).DEF(防御力).Lv(等级),EXP(经验值): 成员函数:武器攻击.跳跃. 2)英雄 ...
- 单片机音乐播放器课程设计C语言,单片机音乐播放器课程设计中音乐代码怎么弄...
单片机音乐播放器课程设计中音乐代码怎么弄 答案:2 信息版本:手机版 解决时间 2019-10-06 13:16 已解决 2019-10-06 02:07 单片机音乐播放器课程设计中音乐代码怎么弄 ...
- App Store游戏付费榜前三,推荐一款Cocos Creator制作的文字类游戏
不靠怒刷,不喜宣传,这款基于Cocos Creator制作的文字类游戏「荒野求生」就这样默默无闻地一跃而上,取得了App Store游戏榜前十的好成绩.而且上周还一举挤入游戏付费榜第三.文字类游戏排行 ...
- python代码编辑教程_python教程:pycharm编写代码的方式教学
python可以说是新的编程语言,虽说是新编程,但一出来,就受到很长程序员的关注,而且刚出现和java进行对比,很多人就拿python和java进行比较,想python到底好不好,他和java有什么区 ...
- 生存类html5小游戏,紧张绝望!刺激爽爆!盘点最好玩的PC生存类游戏(中)
生存类游戏是很多PC玩家喜爱的游戏类型.生存类游戏的背景常常会设定在一个危机四伏的末日环境中,玩家需要从一无所有开始,克服种种困难,收集资源,制作各种道具物品,从而在险恶的环境下生存下去.这类游戏通常 ...
- python编写格斗游戏_设计并编写代码自动格斗类游戏。
1) 角色类CRole为基类: 构造函数.析构函数: 成员变量:头像.HP(血量).ATK(攻击力).DEF(防御力).Lv(等级),EXP(经验值): 成员函数:武器攻击.跳跃. 2)英雄类CHer ...
- 算24游戏c语言程序报告,c程序课程设计报告(24点游戏).doc
c程序课程设计报告(24点游戏) 课程设计报告 课程名称: C语言程序设计 课题名称: 二十四点速算王游戏 专 业: 通信工程专业 班 级: 12级通信工程1班 学 号: 2012167144 姓 名 ...
- Verilog HDL语言实现的单周期CPU设计(全部代码及其注释)
写在前面:本博客为本人原创,严禁任何形式的转载!本博客只允许放在博客园(.cnblogs.com),如果您在其他网站看到这篇博文,请通过下面这个唯一的合法链接转到原文! 本博客全网唯一合法URL:ht ...
最新文章
- Windows PowerShell下基础操作
- Pygame介绍以及下载
- layui 上传图片校验
- Qt Creator和Visual Studio双环境开发技能攻略
- LeetCode题解-3-Longest Substring Without Repeating Characters
- 学习linux中踩的坑,踩踩Linux命令中的那些坑
- java ftpclient quit_一步一步android(6):关于FtpClient类的学习
- 新版USBCAN卡CAN分析仪的CANCANFD综合测试分析软件LKMaster主要功能介绍
- php通讯hpsocket,HP-Socket 远程通信 服务端 客户端 源码
- centos8安装nginx
- uni-app小程序 真机显示canvas上利用base64图片生成的海报
- java虚无世界_我的世界1.7.10工业虚无整合包
- 蓝牙初学者要知道的几件事
- Springboot 注解类里面public @interface xxx 什么意思
- 【Git】版本控制管理(第二版) 前言 第一章 第二章
- 经济观察评论:现在是筑底时期, 对复苏仍可以保持乐观!]
- 单目标跟踪算法调研(2019)
- RTL8370N 8口千兆交换机 PCB图纸方案资料 和芯片的datasheet
- k8s集群管理(一)
- java mysql 自动提交_详解MySQL与Spring的自动提交(autocommit)
热门文章
- 美国新的州隐私和安全法律解释:你的企业准备好了吗?(二)
- 【报告分享】2020年中国食品冷链供应链研究报告-阿里研究院(附下载)
- x64/x86-64/AMD64/ml64入门解惑
- excel制作柏拉图步骤
- 迁移系统激活已有的正版windows11专业版及office家庭学生版步骤
- 用Adobe Acrobat将Visio图转EPS图片
- 钱诚10.26黄金原油独家操作建议指导;日内黄金白银趋势解析
- tensorflow 取出中间变量
- LSP“浏览器劫持概念
- 【报告分享】中国移动游戏市场年度综合分析2021-易观智库(附下载)