private void ShowActionPreview() { if (Preview == null) { return; } if (selectedAction == null || !MouseIsOverMap) { Preview.Hide(); return; } var tileCoord = BoardUtil.GetHoveredTile(); var tile = GameWorld.GetTile(tileCoord.x, tileCoord.y); if (tile == null) { Preview.Hide(); return; } var previewData = selectedAction.PreviewData(tile); Preview.Show(previewData); }