/** * Method that selects the tile at the given coordinate (pos) */ public static void SelectTile(Vector2 pos) { currentSelection.Add(pos); GameObject gameObject = grid[(int)pos.x, (int)pos.y].gameObject; BoxScript boxScript = gameObject.GetComponent <BoxScript>(); currentWord += boxScript.Letter; /***************************************************************** * FEATURE: Highlighting color gradient based on frequency feature *****************************************************************/ DisplayHighlightFeedback(); // ALSO: display the border around the tile boxScript.DisplayBorder(); /****************************************************************** * FEATURE: Obstructions- disable / enable button depending on * word's validity ******************************************************************/ if (GameManagerScript.obstructionProductive || GameManagerScript.obstructionUnproductive) { GameManagerScript.gameManager.UpdatePlayButton(); } /***************************************************************** * FEATURE: Shiny particles whenever you select a tile! * Productive Juice. Unproductive juice produces particles every touch *****************************************************************/ if (GameManagerScript.juiceProductive) { boxScript.PlayShinySelectParticles(); } /****************************************************************** * FEATURE: juice: turn on this flag so that the tile * bounces around/animates when selected ******************************************************************/ boxScript._isSelected = true; //===================================================================== // FEATURE: Juice: extra animations/bouncing if tile is selected. //===================================================================== if (GameManagerScript.juiceUnproductive || GameManagerScript.juiceProductive) { // Animate the tile boxScript.StartCoroutine(boxScript.AnimateBouncingTile()); } //===================================================================== // FEATURE: Unproductive Juice: camera shakes and explosions when // selecting letters. //===================================================================== if (GameManagerScript.juiceUnproductive) { CameraShaker.instance.ShakeOnce(3f, 3.5f, .1f, .3f); } // Play sound effect AudioManager.instance.Play("Select"); DisplaySelectedScore(); }