//< 技能暴击伤害 static public float SkillCritDamage(Unit atker, Unit target, float parm1, float parm2) { float targetReduceAtk = target.GetReduceAtk(); //< 忽略防御 if (atker.hasState((int)GlobalDef.UnitState.State_IngoreDefense)) { StateParams reflectParam = atker.getStateParam((int)GlobalDef.UnitState.State_IngoreDefense); float val = reflectParam.fvalue; val /= 100; targetReduceAtk = targetReduceAtk * (1 - val); } float val1 = (atker.GetAtk() * (1 - targetReduceAtk) * parm1 / 100 + parm2) * atker.GetCritical() + atker.GetRealAttack() * (1 - target.GetReduceRealAttack()); return val1; }