public EvaluatorParameters Calc() { m_Points = Points.Calculate(); m_Combo = Combo.Calculate(); m_UnreachableRows = UnreachableRows.Calculate(); m_EmptyRows = EmptyRows.Calculate(); m_TSpinSingle0Potential = TSpinSingle0Potential.Calculate(); m_TSpinSingle1Potential = TSpinSingle1Potential.Calculate(); m_TSpinDoublePotential = TSpinDoublePotential.Calculate(); m_TDoubleClearPotential = TDoubleClearPotential.Calculate(); m_HolesReachable = HolesReachable.Calculate(); m_HolesUnreachable = HolesUnreachable.Calculate(); m_SkipsCalc = Skips.Calculate(); m_PerfectClearPotential = PerfectClearPotential.Calculate(); m_SingleEmpties = new int[SingleEmpties.Length]; for (var i = 0; i < m_SingleEmpties.Length; i++) { m_SingleEmpties[i] = i * SingleEmpties[i]; } return(this); }