コード例 #1
0
        public void FillFormulaTemplate(ViewModels.RateSettings rateSettings)
        {
            FormulaTemplate = (string)Formula.Clone();

            SetValueToTemplateFormula("Ур", rateSettings.Damage, rateSettings.Parameters.Damage);
            SetValueToTemplateFormula("Л", rateSettings.Heal, rateSettings.Parameters.Heal);
            SetValueToTemplateFormula("ОВ", rateSettings.Time, rateSettings.Parameters.Time);
            SetValueToTemplateFormula("П", rateSettings.Death, rateSettings.Parameters.Death);
            SetValueToTemplateFormula("М", rateSettings.Minutes, rateSettings.Parameters.Minutes);
            SetValueToTemplateFormula("С", rateSettings.Seconds, rateSettings.Parameters.Seconds);

            FormulaTemplate = FormulaTemplate.Replace("Коэфф. времени", rateSettings.RateMinSec.ToString());
            FormulaTemplate = FormulaTemplate.Replace("Общий коэфф.", rateSettings.CommonRate.ToString());
        }
コード例 #2
0
        public void Calculate(CalculationParameters parameters)
        {
            ViewModels.RateSettings rateSettings = ViewModels.RateSettings.GetObject();

            double damage  = parameters.Damage * rateSettings.Damage;
            double heal    = parameters.Heal * rateSettings.Heal;
            double time    = parameters.Time * rateSettings.Time;
            double death   = parameters.Death * rateSettings.Death;
            double minutes = parameters.Minutes * rateSettings.Minutes;
            double seconds = parameters.Seconds * rateSettings.Seconds;


            //           ((F      - H   ) / N    - G     - (L       + M      ) / 100                     ) * 100
            ResultFull = ((damage - heal) / time - death - (minutes + seconds) / rateSettings.RateMinSec) * rateSettings.CommonRate;

            Result = Math.Round(ResultFull);
        }