private Field AddMove(int insertIndex, char character, string color) { var insertField = FieldsList.FirstOrDefault( f => f.FieldCoordinates.XCoordinate == 6 && f.FieldCoordinates.YCoordinate == insertIndex); List <Field> fieldsInColumn = new List <Field>(); for (int i = 0; i < 6; i++) { var busyField = FieldsList.FirstOrDefault( f => f.FieldCoordinates.XCoordinate == i && f.FieldCoordinates.YCoordinate == insertIndex); if (busyField != null) { fieldsInColumn.Add(busyField); } } var x = fieldsInColumn.Count; Field newField = new Field(new FieldCoordinates(x, insertIndex), character, color, ""); FieldsList.Add(newField); if (x == 5) { insertField.FieldValue = '-'; insertField.Activity = "disabled"; insertField.Color = "black"; } return(newField); }