Ejemplo n.º 1
0
    private void HandleDestroyMode()
    {
        var mousePos = _cam.ScreenToWorldPoint(Input.mousePosition);

        if (mousePos.x < 0 || mousePos.y < 0)
        {
            return;
        }

        var pos = new Vector2Int((int)mousePos.x, (int)mousePos.y);

        if (pos == _lastPos)
        {
            return;
        }


        var tile = UIEditorState.GetTileAt(pos);

        if (tile == null)
        {
            return;
        }

        TileOperationsHandler.DestroyTile(tile);
        _lastPos = pos;
    }
Ejemplo n.º 2
0
    private void HandleCreateMode()
    {
        if (!UIEditorState.IsTileDefSelected)
        {
            return;
        }

        var mousePos = _cam.ScreenToWorldPoint(Input.mousePosition);

        if (mousePos.x < 0 || mousePos.y < 0)
        {
            return;
        }

        var pos  = new Vector2Int((int)mousePos.x, (int)mousePos.y);
        var tile = UIEditorState.GetTileAt(pos);

        if (tile != null)
        {
            if (tile.Definition == UIEditorState.CurrentSelectedTileDef && tile.Position == pos ||
                tile == _lastCreatedTile)
            {
                return;
            }
        }

        Tile newtile = null;

        //

        TileOperationsHandler.AddTile(newtile);
        _lastCreatedTile = newtile;
    }
    private void Update()
    {
        if (Input.GetKeyDown(KeyCode.Z) && Input.GetKey(KeyCode.LeftControl))
        {
            TileOperationsHandler.Undo();
            return;
        }

        if (!UIEditorState.Instance.IsTileSelected)
        {
            return;
        }

        if (Input.GetKeyDown(KeyCode.Delete))
        {
            var tile = UIEditorState.Instance.CurrentSelectedTile;
            TileOperationsHandler.DestroyTile(tile);
        }
    }
 public void Delete()
 {
     CloseDialog();
     TileOperationsHandler.DestroyTile(UIEditorState.Instance.CurrentSelectedTile);
 }