Grenade doesn't initialize

I have 2 issues. (1) For some reason my grenade doesn’t initialize. (2) Transform.LookAt(Player) doesn’t work. I am trying to have a floating monster that will throw grenades but I have 2 problems. The grenade doesn’t initialize and for some reason it doesn’t look at the player. Thanks for the help!

My Script that has this:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ZKAttack_lvl3 : MonoBehaviour
{
    public Transform Player;
    public float MoveSpeed = 2.0f;
    public float InRadius = 10.0f;
    public float AttackRange = 15.0f;

    private Coroutine hasCourutineRunYet;

    public GameObject grenade;
    public GameObject FloatingMonster;

    private Animator anim;
    private Rigidbody rigid;

    private void Start()
    {
        anim = GetComponent<Animator>();
        Player = GameObject.FindGameObjectsWithTag("Player")[0].transform;

        rigid = GetComponent<Rigidbody>();
        
    }

    void Update()
    {
        transform.LookAt(Player);

        float dstSqr = (Player.position - transform.position).sqrMagnitude;
        bool inRadius = (dstSqr <= InRadius * InRadius);
        bool inAttackRange = (dstSqr <= AttackRange * AttackRange);
        anim.SetBool("inRadius", inRadius);
        anim.SetBool("AttackingPlayer", inAttackRange);
        if (inRadius)
        {
            transform.position += transform.forward * MoveSpeed * Time.deltaTime;
        }

        rigid.AddForce(1, 10, 1);

        if (inAttackRange)
        {
            if (hasCourutineRunYet == null)
            {
                hasCourutineRunYet = StartCoroutine(GrenadeAttack());
            }
        }
    }

    IEnumerator GrenadeAttack()
    {
        GameObject bulletObject = Instantiate(grenade);
        bulletObject.transform.position = FloatingMonster.transform.position + FloatingMonster.transform.forward;
        bulletObject.transform.forward = FloatingMonster.transform.forward;

        yield return new WaitForSeconds(2.0f);
    }
}

(1): Put some Debug.logs in your coroutine to see if its ever even being started. Im not familiar of the technique you have used to start the coroutine( Setting a private varible to start a new one)