c# – Unity Event destroys all GameObjects if there are more than two listeners

I’ve been writing a system where, if a raycast hits a 2D gameObject, a UnityEvent is fired and the Shot() method is executed. It works fine if the amount of listeners receiving the callback is equal to one, in this situation it destroys only clicked GameObject (which is what I need). As soon as you add another callback (AudioSource, Playing Particles), it destroys all GameObjects, which I don’t want to be destroyed.

Class with Event:

public class ItemRaycastHit :  MonoBehaviour
{
    (SerializeField) private UnityEvent _shot;
    void Update()
    {
        if(Input.GetMouseButtonDown(0)) 
        {
            Vector2 mousePos = Camera.main.ScreenToWorldPoint(Input.mousePosition); 
            RaycastHit2D hit = Physics2D.Raycast(mousePos, Vector2.zero); 
            if (hit.collider.TryGetComponent<ClickableObject>(out ClickableObject clickable)) 
            {
                _shot?.Invoke();
            }
        }
    }
}

public class ClickableObject : MonoBehaviour
{
    public void Shot()
    {
        Destroy(gameObject);
    }
}

Image of the clickable object in inspector

Inspector screenshot