public ActionResult CalculateAR(int weaponId, int infusionId, int STR, int DEX, int INT, int FTH) { //TODO: Include Bleed/Poison //if (twoHand) //{ // STR = (int)System.Math.Floor((double)STR * 1.5); //} WeaponARModel model = _weaponsHelper.CalculateAR(weaponId, infusionId, STR, DEX, INT, FTH); return(PartialView("_ARValues", model)); }
public ActionResult CalculateAR(int weaponId, int infusionId, int upgradeLevel, int STR, int DEX, int INT, int FTH, int LCK, bool twoHand) { //TODO: Include Bleed/Poison/Frost if (twoHand) { STR = (int)System.Math.Floor((double)STR * 1.5); } WeaponARModel model = _weaponsHelper.CalculateAR(weaponId, infusionId, upgradeLevel, STR, DEX, INT, FTH, LCK); return(PartialView("_ARValues", model)); }
public WeaponARModel CalculateAR(int weaponId, int infusionId, int upgradeLevel, int STR, int DEX, int INT, int FTH, int LCK) { using (var lifetime = IoC.Container.BeginLifetimeScope()) { using (var unit = lifetime.Resolve <IUnitOfWork>()) { WeaponARModel result; Weapon weapon = unit.GetRepository <Weapon>().GetById(weaponId); if (weapon.StrReq > STR || weapon.DexReq > DEX || weapon.IntReq > INT || weapon.FthReq > FTH) { result = new WeaponARModel() { RequirementsMet = false, StrReq = weapon.StrReq, DexReq = weapon.DexReq, IntReq = weapon.IntReq, FthReq = weapon.FthReq }; } else { SqlParameter[] parameters = new SqlParameter[] { new SqlParameter("@WeaponId", weaponId), new SqlParameter("@InfusionId", infusionId), new SqlParameter("@ReinforcementLevel", upgradeLevel), new SqlParameter("@STR", STR), new SqlParameter("@DEX", DEX), new SqlParameter("@INT", INT), new SqlParameter("@FTH", FTH), new SqlParameter("@LCK", LCK) }; string query = "Exec [DS3].[CalculateWeaponAR] @WeaponId, @InfusionId, @ReinforcementLevel, @STR, @DEX, @INT, @FTH, @LCK"; result = unit.SqlQuery <WeaponARModel>(query, parameters).FirstOrDefault(); result.RequirementsMet = true; } return(result); } } }