public void Reset() { ControlPanels = new CustomPanel[] { EditorConsoleManager.Instance.ToolPane.FilesPanel, EditorConsoleManager.Instance.ToolPane.LayersPanel, EditorConsoleManager.Instance.ToolPane.ToolsPanel }; if (_consoleLayers != null) { _consoleLayers.MouseMove -= _mouseMoveHandler; _consoleLayers.MouseEnter -= _mouseEnterHandler; _consoleLayers.MouseExit -= _mouseExitHandler; } _objectsSurface = new SadConsole.Consoles.Console(25, 10); _objectsSurface.Font = SadConsoleEditor.Settings.Config.ScreenFont; _objectsSurface.Data.DefaultForeground = Color.White; _objectsSurface.Data.DefaultBackground = Color.Transparent; _objectsSurface.Data.Clear(); _objectsSurface.BeforeRenderHandler = (cr) => cr.Batch.Draw(SadConsole.Engine.BackgroundCell, cr.RenderBox, null, new Color(0, 0, 0, 0.5f)); _consoleLayers = new LayeredConsole(1, 25, 10); _consoleLayers.Font = SadConsoleEditor.Settings.Config.ScreenFont; _consoleLayers.CanUseMouse = true; _consoleLayers.CanUseKeyboard = true; _consoleLayers.GetLayerMetadata(0).Name = "Root"; _consoleLayers.GetLayerMetadata(0).IsRemoveable = false; _consoleLayers.GetLayerMetadata(0).IsMoveable = false; _width = 25; _height = 10; SelectedGameObjects = new GameObjectCollection(); GameObjects = new List <GameObjectCollection>(); GameObjects.Add(SelectedGameObjects); _mouseMoveHandler = (o, e) => { if (this.MouseMove != null) { this.MouseMove(_consoleLayers.ActiveLayer, e); } EditorConsoleManager.Instance.ToolPane.SelectedTool.MouseMoveSurface(e.OriginalMouseInfo, _consoleLayers.ActiveLayer); }; _mouseEnterHandler = (o, e) => { if (this.MouseEnter != null) { this.MouseEnter(_consoleLayers.ActiveLayer, e); } EditorConsoleManager.Instance.ToolPane.SelectedTool.MouseEnterSurface(e.OriginalMouseInfo, _consoleLayers.ActiveLayer); }; _mouseExitHandler = (o, e) => { if (this.MouseExit != null) { this.MouseExit(_consoleLayers.ActiveLayer, e); } EditorConsoleManager.Instance.ToolPane.SelectedTool.MouseExitSurface(e.OriginalMouseInfo, _consoleLayers.ActiveLayer); }; _consoleLayers.MouseMove += _mouseMoveHandler; _consoleLayers.MouseEnter += _mouseEnterHandler; _consoleLayers.MouseExit += _mouseExitHandler; }
public void Save(string file) { GameConsole tempConsole = new GameConsole(_consoleLayers.Layers, _consoleLayers.Width, _consoleLayers.Height); for (int i = 0; i < _consoleLayers.Layers; i++) { tempConsole.RemoveLayer(0); } for (int i = 0; i < _consoleLayers.Layers; i++) { tempConsole.AddLayer(_consoleLayers[i].CellData); var metadataNew = new GameConsoleMetadata(); var metadataOld = _consoleLayers.GetLayerMetadata(i); metadataNew.IsMoveable = metadataOld.IsMoveable; metadataNew.IsRemoveable = metadataOld.IsRemoveable; metadataNew.IsRenamable = metadataOld.IsRenamable; metadataNew.IsVisible = metadataOld.IsVisible; metadataNew.Name = metadataOld.Name; metadataNew.Index = metadataOld.Index; metadataNew.GameObjects = GameObjects[i]; tempConsole.SetLayerMetadata(i, metadataNew); } SadConsole.Serializer.Save <GameConsole>(tempConsole, file); //tempConsole.Save(file); //_consoleLayers.Save(file); //GameObjectCollection.SaveCollection(GameObjects, file.Replace(System.IO.Path.GetExtension(file), ".objects")); }
public void Reset() { ControlPanels = new CustomPanel[] { EditorConsoleManager.Instance.ToolPane.FilesPanel, EditorConsoleManager.Instance.ToolPane.LayersPanel, EditorConsoleManager.Instance.ToolPane.ToolsPanel }; if (_consoleLayers != null) { _consoleLayers.MouseMove -= _mouseMoveHandler; _consoleLayers.MouseEnter -= _mouseEnterHandler; _consoleLayers.MouseExit -= _mouseExitHandler; } _objectsSurface = new SadConsole.Consoles.Console(25, 10); _objectsSurface.Font = SadConsoleEditor.Settings.Config.ScreenFont; _objectsSurface.Data.DefaultForeground = Color.White; _objectsSurface.Data.DefaultBackground = Color.Transparent; _objectsSurface.Data.Clear(); _objectsSurface.BeforeRenderHandler = (cr) => cr.Batch.Draw(SadConsole.Engine.BackgroundCell, cr.RenderBox, null, new Color(0, 0, 0, 0.5f)); _consoleLayers = new LayeredConsole(1, 25, 10); _consoleLayers.Font = SadConsoleEditor.Settings.Config.ScreenFont; _consoleLayers.CanUseMouse = true; _consoleLayers.CanUseKeyboard = true; _consoleLayers.GetLayerMetadata(0).Name = "Root"; _consoleLayers.GetLayerMetadata(0).IsRemoveable = false; _consoleLayers.GetLayerMetadata(0).IsMoveable = false; _width = 25; _height = 10; SelectedGameObjects = new GameObjectCollection(); GameObjects = new List<GameObjectCollection>(); GameObjects.Add(SelectedGameObjects); _mouseMoveHandler = (o, e) => { if (this.MouseMove != null) this.MouseMove(_consoleLayers.ActiveLayer, e); EditorConsoleManager.Instance.ToolPane.SelectedTool.MouseMoveSurface(e.OriginalMouseInfo, _consoleLayers.ActiveLayer); }; _mouseEnterHandler = (o, e) => { if (this.MouseEnter != null) this.MouseEnter(_consoleLayers.ActiveLayer, e); EditorConsoleManager.Instance.ToolPane.SelectedTool.MouseEnterSurface(e.OriginalMouseInfo, _consoleLayers.ActiveLayer); }; _mouseExitHandler = (o, e) => { if (this.MouseExit != null) this.MouseExit(_consoleLayers.ActiveLayer, e); EditorConsoleManager.Instance.ToolPane.SelectedTool.MouseExitSurface(e.OriginalMouseInfo, _consoleLayers.ActiveLayer); }; _consoleLayers.MouseMove += _mouseMoveHandler; _consoleLayers.MouseEnter += _mouseEnterHandler; _consoleLayers.MouseExit += _mouseExitHandler; }