// Update is called once per frame
    public void Update()
    {
        if (gameManager.GetLevelActive())
        {
            if (toolsOn > 0 && Time.time - toolStartTime > toolDelay)
            {
                if (currentTarget == null)
                {
                    currentTarget = gameLevel.GetCurrentTarget();
                }

                if (!oneShot)
                {
                    if (pulseOn)
                    {
                        ActivatePulse();
                    }
                    if (laneOn && !laneActive)
                    {
                        ActivateLane();
                    }
                    if (audioOn)
                    {
                        ActivateAudio();
                    }

                    oneShot = true;
                }
                else if (queueAudio && audioActive && repeatAudio && Time.time - repeatStartTime > repeatDelay)
                {
                    ActivateAudio();
                }

                if (!queueAudio && audioActive && repeatAudio && Time.time - repeatStartTime > repeatDelay)
                {
                    ActivateAudio();
                }

                if (laneOn && !laneActive)
                {
                    ActivateLane();
                }

                assistanceWasActive = true;
            }
        }
        else
        {
            ResetTimer();
        }
    }