void AddInteraction(ComponentId componentId, int index)
        {
            Interactions.Add(null);

            ObjectPrivate obj = ScenePrivate.FindObject(componentId.ObjectId);

            if (obj == null || !obj.IsValid)
            {
                return;
            }

            obj.AddInteraction(InteractionPrompt, false, (data) =>
            {
                if (data.Success == true && data.Interaction != null)
                {
                    Interactions[index] = data.Interaction;
                    data.Interaction.Subscribe((interactData) => OnInteract(interactData, index));
                }
            });
        }