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)); } }); }