SadConsoleEditor.Editors.SceneEditor.Save C# (CSharp) Method

Save() public method

public Save ( ) : void
return void
        public void Save()
        {
            var popup = new Windows.SelectFilePopup();
            popup.Center();
            popup.SkipFileExistCheck = true;
            popup.Closed += (s, e) =>
            {
                if (popup.DialogResult)
                {
                    SadConsole.Game.Scene scene = new Scene(textSurface);
                    scene.Objects = new GameObjectCollection(this.Objects.Select(g => g.GameObject).ToArray());
                    scene.Zones = new List<Zone>(
                                                 this.Zones.Select(
                                                     z => new Zone()
                                                                    { Area = new Rectangle(z.GameObject.Position.X, z.GameObject.Position.Y, z.GameObject.Width, z.GameObject.Height),
                                                                      DebugAppearance = new CellAppearance(Color.White, z.GameObject.RenderCells[0].Background, 0),
                                                                      Title = z.GameObject.Name }));
                    scene.Hotspots = this.Hotspots;
                    popup.SelectedLoader.Save(scene, popup.SelectedFile);
                }
            };
            popup.FileLoaderTypes = new FileLoaders.IFileLoader[] { new FileLoaders.Scene() };
            popup.SelectButtonText = "Save";
            popup.Show(true);
        }