// Update is called once per frame
    void Update()
    {
        if (!movementChecker.GetGridStatic() && Time.time > timeStamp + cooldown)
        {
            movementChecker.CheckGridForMovement();
            timeStamp = Time.time;
        }

        if (Time.time > powerTrackerTimestamp + powerTrackerCooldown)
        {
            powerTrackerTimestamp = Time.time;
            PowerStarTracker.Clear();
        }

//		if (!okayToMoveAgain && Time.time > okayToMoveTimeStamp + okayToMoveCooldown) {
//			//Debug.Log ("Okay To Move Again");
//			okayToMoveAgain = true;
//		}

        if (!stopFindingMatches && Time.time > assistanceTimeStamp + assistanceCooldown)
        {
            findMatchForPlayer  = true;
            assistanceTimeStamp = Time.time;
        }

        if (findMatchForPlayer)
        {
            matchAssistant.FindMatchForPlayer();
            findMatchForPlayer = false;
        }
    }
    public void CheckGridForMovement()
    {
        gridStatic = false;
        if (GameObject.Find("Time Bomb Identification") != null)
        {
            if (GameObject.Find("Time Bomb Identification").GetComponent <TimeBombController> ().GetBombsExploding())
            {
                return;
            }
        }
        for (int i = 0; i < 9; i++)
        {
            for (int j = 0; j < 9; j++)
            {
                if (instantiator.GetJewelGridGameObject(i, j) == null)
                {
                    return;
                }
                jewelMovement = instantiator.GetJewelGridGameObject(i, j).GetComponent <RockLevelJewelMovement> ();
                if (PaidPowerTracker.GetPowerListSize() != 0 /*|| starShooter.GetBombCount () > 0 || fourInARow.GetHomingStarList ().Count > 0 || fiveInARow.GetMotherStarList ().Count > 0 || fiveInARow.GetMotherStarList ().Count > 0 || corners.GetCornerStarList ().Count > 0*/)
                {
                    gridStatic = false;
                    deleteJewels.PunchNewTimeStamp();
                    return;
                }
            }
        }

        if (!shuffle.GetShuffleFinished())
        {
            shuffle.SetShuffleFinished(true);
        }
        if (noMatchChecker.CheckForNoMatches())
        {
            gridStatic = false;
            deleteJewels.PunchNewTimeStamp();
            return;
        }
        if (!soundController.GetGameStarted())
        {
            soundController.SetGameStarted(true);
        }
        CheckEveryJewelForMatch();
        gridStatic = true;
        PowerStarTracker.Clear();
    }