public void ChangePawnOnBoard(Type figureType) { var pawnNumber = FindFigureNumber(pawnToPositionForTransformation, false); if (!pawnNumber.HasValue) { return; } figures.Remove(pawnNumber.Value); if (pawnToPositionForTransformation.Y == 8) { figures.Add(pawnNumber.Value, (Figure) Activator.CreateInstance(figureType, pawnToPositionForTransformation, FigureColors.White)); } else { figures.Add(pawnNumber.Value, (Figure) Activator.CreateInstance(figureType, pawnToPositionForTransformation, FigureColors.Black)); } gameplayScreen.ReloadFigureModel(pawnNumber.Value, GetFigure(pawnNumber.Value).GetModelName()); }