技能伤害算法
谁帮忙写几个 简单的常用的 RPG 技能伤害算法
谢谢
------解决方案--------------------伤害的算法最好不要仅仅依靠一个方法,而是利用接口,
比如所有各种类型单位都有
int getPAttack(); //物力攻击力
int getMAttack(); //魔法攻击力
int getPAttackType(); //物力攻击类型
int getMAttackType(); //魔法攻击类型
int getPDefence(int pType); //对于某种类型物力攻击的防御力
... 还有攻击奖励/系数、防御奖励/系数、免疫、命中率/MISS率、距离系数、高度系数、随机系数等等
int computeDamage(Unit atk, Unit def) {
int pDmg = atk.getPAttack() - def.getPDefence(atk.getPAttackType());
int mDmg = atk.getMAttack() - def.getMDefence(atk.getMAttackType());
int dmg = pDmg + mDmg ........ ;
}
这样,每个兵种的class自己override/implement这些方法,并根据unit当前的状态,返回不同的数值,然后计算