public IEnumerator AttackPlayer()
    {
        BatController bat = player.GetComponent <BatController>();

        bossAnim.SetTrigger("pGrab");
        yield return(new WaitForSeconds(0.75f));

        if (isGrabbable && bat.canGetHit)
        {
            if (Vector3.Distance(bat.transform.position, spiderSecondCheckTriggerRight.position) < Vector3.Distance(bat.transform.position, spiderSecondCheckTriggerLeft.position))
            {
                grabbedPlayedRight = true;
            }
            else
            {
                grabbedPlayedLeft = true;
            }

            audioSource.clip = spiderSounds[Random.Range(0, spiderSounds.Count)];
            audioSource.Play();

            bossAnim.SetTrigger("pPlayerCaught");
            bossAnim.SetBool("bEat", true);
            bat.GetComponent <Rigidbody2D>().simulated = false;
        }
        else
        {
            yield break;
        }

        yield return(new WaitForSeconds(3.5f));

        audioSource.clip = spiderSounds[Random.Range(0, spiderSounds.Count)];
        audioSource.Play();

        GameManager.instance.SubtractLive();
        Camera.main.transform.GetComponent <CameraShake>().Shake(shakeDuration, shakeX, shakeY, shakeZ, shakeRotate, shakeSpeed);
        StartCoroutine(bat.HitInvinsibility(2));

        yield return(new WaitForSeconds(1f));

        grabbedPlayedRight = false;
        grabbedPlayedLeft  = false;

        bossAnim.SetBool("bEat", false);
        bat.GetComponent <Rigidbody2D>().simulated = true;

        if (isInEatRange)
        {
            StartCoroutine(AttackPlayer());
        }
    }