Example #1
0
        public static void SerializeData(string fileName, MainWindowDataModel data)
        {
            //Create an instance of the type and serializa it.
            var formatter = new DataContractSerializer(typeof(MainWindowDataModel));
            var s         = new FileStream(fileName, FileMode.Create);

            formatter.WriteObject(s, data);
            s.Close();
        }
Example #2
0
        public App()
        {
            var model = MainWindowDataModel.Load();

            window = new MainWindow(model)
            {
                DataContext = model
            };
            window.Show();
        }
 public MainWindow(MainWindowDataModel model)
 {
     this.model = model;
     InitializeComponent();
     generateMapGrid();
     drawMap();
     generateBuilds();
     generateResources();
     addStoryBoard();
     mediaPlayer = new MediaPlayer();
     mediaPlayer.Open(new Uri(@"C:\Files\Musics\Mono\01 - Studio Albums\2001 - Under The Pipal Tree [Tzadik, TZ 7237]\01. Karelia (Opus 2).mp3"));
 }
        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);
                            if (item.sleep)
                            {
                                mobj.sleep();
                            }
                            if (item.recondition)
                            {
                                mobj.recondition();
                            }
                        }
                    } 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());
        }