c# – Unity Event destroy’s all gameObject’s if the ammount of callbacks is more than two

I’ve been writing a system where a raycast hit’s a 2D gameObject, if it does a Unity Event is fired and the Shot() method is executed. It works fine if the ammount of callbacks 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

enter image description here