private void OnClickTileView(BoardTile sender, Vector2Int gridPosition) { if (!currentlySelectedPosition.HasValue) { return; } if (currentlySelectedPosition.Value == gridPosition) { return; } if (!checkerboard.IsValidMove(currentlySelectedPosition.Value, gridPosition)) { return; } Vector2Int origin = currentlySelectedPosition.Value; Vector2Int target = gridPosition; ClearSelection(); OnMoveRequest?.Invoke(this, origin, target); }