/// <summary>
 /// Transition out of SelectingTerrain state.
 /// </summary>
 public override void TransitionOut()
 {
     if (_cursor != null)
     {
         _cursor.Deactivate();
     }
 }
        /// <summary>
        /// Instantiates an instance of the controller.
        /// </summary>
        /// <param name="terrain">The terrain to edit.</param>
        public SelectingTerrainController(GridMesh terrain)
        {
            _terrain = terrain;
            _cursor  = GridCursor.Create(terrain, ResourceLoader.Load <Material>(ResourceType.Materials, ResourceCategory.Terrain, "cursor_terrain"));
            _cursor.Deactivate();

            OnTerrainSelectionUpdate += SelectionUpdate;
            OnTerrainClicked         += Clicked;
        }
 /// <summary>
 /// Instantiates an instance of the controller.
 /// </summary>
 /// <param name="terrain">The terrain to edit.</param>
 public EditingTerrainController(GridMesh terrain)
 {
     _terrain = terrain;
     _cursor  = GridCursor.Create(terrain, ResourceLoader.Load <Material>(ResourceType.Materials, ResourceCategory.Terrain, "cursor_terrain2"));
     _cursor.Deactivate();
 }