public IEnhancementScroll CreateScroll(WeaponGrade weaponGrade) { switch (weaponGrade) { case WeaponGrade.D: case WeaponGrade.C: case WeaponGrade.B: case WeaponGrade.A: return(new ScrollEnhanceWeaponDCBA()); case WeaponGrade.S: return(new ScrollEnhanceWeaponS()); default: throw new ArgumentException($"{nameof(weaponGrade)} is not implemented"); } }
private static double GetSsBonus(WeaponGrade grade) { switch (grade) { case WeaponGrade.D: return(ssBonusDCB); case WeaponGrade.C: return(ssBonusDCB); case WeaponGrade.B: return(ssBonusDCB); case WeaponGrade.A: return(ssBonusA); case WeaponGrade.S: return(ssBonusS); default: return(0); } }
public static double CalculateSsBonus(int enhanceTo, WeaponGrade grade) { return(enhanceTo * GetSsBonus(grade)); }