void OnMouseDown() { // 1 if (render.sprite == null || BoardManager_AI.instance.IsShifting) { return; } if (isSelected) { // 2 Is it already selected? Deselect(); } else { if (previousSelected == null) { // 3 Is it the first tile selected? Select(); } else { if (GetAllAdjacentTiles().Contains(previousSelected.gameObject)) { // 1 SwapSprite(previousSelected.render); // 2 previousSelected.ClearAllMatches(); previousSelected.Deselect(); ClearAllMatches(); } else { // 3 previousSelected.GetComponent <Tile_AI>().Deselect(); Select(); } } } }