private int DistanceToObjetive() { if (!CalculatedNumbers.Any()) { return(Objetive); } return(Math.Abs(Objetive - CalculatedNumbers.First().Value)); }
private int YourNumber() { if (!CalculatedNumbers.Any()) { return(Objetive); } return(CalculatedNumbers.First().Value); }
public void Resolve() { if (CurrentCalculation.CanBeOperated()) { CalculatedNumbers.Add(new CalculatedNumber(CurrentCalculation)); CalculationList.Add(new Calculation(CurrentCalculation)); RemoveValuesFromLists(CurrentCalculation); CurrentCalculation.Restart(); SetMessage(); } }
public void RestartGame() { foreach (var number in Numbers) { number.Enable(); } CalculatedNumbers.Clear(); Message = new Message(Objetive); CurrentCalculation.Restart(); CalculationList.Clear(); }
private void RemoveValuesFromLists(Calculation calculation) { foreach (var number in calculation.GetNumbers()) { if (number is CalculatedNumber calculatedNumber) { CalculatedNumbers.Remove(calculatedNumber); } else { Numbers.First(x => x.Equals(number)).Disable(); } } }