头文件:
enum EactorState
{
Attack,
Defense
};
class CMonster
{
private:
int m_MonsterID;
char* m_Name;
int m_HitPoint;
EactorState m_State;
public:
int MaxHitPoint;
public:
CMonster(void);
~CMonster(void);
int getMonsterID();
char* getMonsterName();
int getHitPoint();
EactorState getMonsterState();
VOID ChangeHP(int);
VOID ChangeState(EactorState);
};
改变状态和HP的实现:
VOID CMonster::ChangeHP(int val)
{
m_HitPoint+=val<0;
if(m_HitPoint<0)
m_HitPoint=0;
else if(m_HitPoint>MaxHitPoint)
m_HitPoint=MaxHitPoint;
}
VOID CMonster::ChangeState(EactorState eas)
{
m_State=eas;
}
参考下吧。
光这个是很简单。但游戏开发中最好在一定程度上面向对象。
如,我们可以提取出有攻击和防御行为的接口,提取出有HP,MP等属性的抽象类。
可以联系matrixdom[at]126.com,一起交流学习