private int CalcElementRate(SkillData skill, EElement skillElement, int skillElemValue, EElement attackerElement, int attackerElemValue) { if (skill != null && skill.IsIgnoreElement()) { skillElement = EElement.None; attackerElement = EElement.None; } EElement weakElement = UnitParam.GetWeakElement(this.mCurrentUnit.Element); EElement resistElement = UnitParam.GetResistElement(this.mCurrentUnit.Element); int num = 0; if (attackerElement != EElement.None) { num += weakElement != attackerElement ? (resistElement != attackerElement ? 0 : -1) : 1; } if (skillElement != EElement.None) { num += weakElement != skillElement ? (resistElement != skillElement ? 0 : -1) : 1; } return(num); }