private void DeserializeGridCompat(string jsonString) { try { var grid = JsonConvert.DeserializeObject <CompatSerializedGrid>(jsonString); xsize = grid.xsize; ysize = grid.ysize; elements = new SerializedElement[xsize, ysize]; for (int i = 0; i < xsize; i++) { for (int j = 0; j < ysize; j++) { if (grid.elements[i, j] != null && grid.elements[i, j] != "null") { elements[i, j] = new SerializedElement { Type = grid.elements[i, j] } } ; } } } catch (JsonSerializationException) { throw new InvalidCastException(); } }
public SerializedGrid(Grid grid) { xsize = grid.xsize; ysize = grid.ysize; elements = new SerializedElement[xsize, ysize]; for (int i = 0; i < xsize; i++) { for (int j = 0; j < ysize; j++) { if (grid.elements[i, j] == null) { elements[i, j] = null; } else { elements[i, j] = new SerializedElement() { Type = grid.elements[i, j].GetType().Name, Name = grid.elements[i, j].Name, }; } } } }