private Field CreateField(char toString) { var field = new NormalField(); var items = "1234".ToArray(); switch (char.ToLower(toString)) { case 'r': return(new RestField()); case 'n': return(new NormalField()); case 'f': return(new FinishField()); case 'w': return(GetWoodField()); case 'x': return(AddBarricadeToField()); case var e when items.Contains(e): return(SetupPlayerField(e)); } if (toString == '.') { return(null); } return(field); }
private Field AddBarricadeToField() { BarricadePiece piece = new BarricadePiece(); NormalField field = new NormalField(); field.Pieces.Add(piece); piece.PieceField = field; // If null create it piece.VisitedFields ??= new List <Field>(); piece.VisitedFields.Add(field); BarricadePieces.Add(piece); return(field); }