public static MainWindowDataModel Load() { if (File.Exists(DataPath)) { MainWindowDataModel model = DataSerializer.DeserializeItem(DataPath); ResourceList list = new ResourceList(); model.resources.ForEach(r => list.add(new Resource(ResourceType.VALUES.Where(type => type.getName() == r.resource).First(), r.count))); Map map = new Map(10, 10); model.map.ForEach(item => { MapEnum menum = null; MapObject mobj = null; try { menum = BuildType.VALUES.Where(type => type.getName() == item.build).First(); if (menum != null) { mobj = new Build((BuildType)menum); } } catch (Exception) { } try { menum = ReliefType.VALUES.Where(type => type.getName() == item.build).First(); if (menum != null) { mobj = new Relief((ReliefType)menum); } } catch (Exception) { } if (mobj != null) { map.set(mobj, item.x, item.y); } }); model.game = new Game(map, list); return(model); } return(new MainWindowDataModel()); }
public void Save() { DataSerializer.SerializeData(DataPath, this); }