手写的自动格斗游戏代码
(2018-06-07 12:13:31)
标签:
it |
分类: C加加 |
。。。其实写很差,但是放在这边公示以及保存吧。
#pragma once
#include
#include
#include
using namespace std;
class CRole
{
public:
CRole(int
a,int b,int c,int d,int e,int
f)
//构造函数
{
face =
a;
HP =
b;
ATK =
c;
DEF =
d;
Lv =
e;
EXP =
f;
};
~CRole()
{
}
void
weapon(int i);
void
jump();
int
ATK;
int
HP;
int
DEF;
int
face;
int
Lv;
int
EXP;
private:
};
void CRole::weapon(int i)
//定义3种级别武器,i表示级别,如果人物装备武器,则根据武器等级增加攻击力
{
if (i == 1)
ATK = ATK + 1;
if (i == 2)
ATK = ATK + 2;
if (i == 3)
ATK = ATK + 2;
};
void CRole::jump()
//暂定jump为每回合受到攻击时rand一个随机数,如果随机数低于预设jump值触发jump,闪躲攻击,但该功能暂未实现
{
};
//
class Chero:public CRole
{
public:
Chero(int a,
int b, int c, int d, int e, int f,int g,int h,int i,int j):CRole(a,
b, c, d, e,
f)
//构造函数
{
kickpoint =
g;
throwpoint =
h;
currentexp =
i;
needexp =
j;
};
~Chero()
{
};
void
kick(); //脚踢
void
holdthenthrow(); //抱摔
//关于技能,设定战斗一回合只能攻击一次,默认是普通攻击,但每次攻击时对技能发动判定,成功则技能生效,普攻改为技能攻击。如果两个技能都判定成功优先使用更高伤害的技能
int
kickpoint;
//脚踢触发几率,战斗时轮到攻击时进行判定,随机产生一个点数,如果点数低于触发几率值触发技能
int
throwpoint; //抱摔触发几率,跟脚踢一样,下面敌人技能机制也是如此。
int
currentexp;
//当前累积经验值
int
needexp;
//升级需要经验值
private:
};
void Chero::kick()
{
ATK =
25;
};
void Chero::holdthenthrow()
{
ATK =
30;
}
class CEnemy :public CRole
{
public:
CEnemy(int
a, int b, int c, int d, int e, int f, int g,int h) :CRole(a, b, c,
d, e, f)
{
slappoint =
g;
twickpoint =
h;
};
~CEnemy()
{
CRole::~CRole();
};
#include
#include
#include
using namespace std;
class CRole
{
public:
private:
};
void CRole::weapon(int i)
{
};
void CRole::jump()
{
};
class Chero:public CRole
{
public:
//关于技能,设定战斗一回合只能攻击一次,默认是普通攻击,但每次攻击时对技能发动判定,成功则技能生效,普攻改为技能攻击。如果两个技能都判定成功优先使用更高伤害的技能
private:
};
void Chero::kick()
{
};
void Chero::holdthenthrow()
{
}
class CEnemy :public CRole
{
public: