void OnDistanceStay(DistanceInteraction interaction) { if (Interaction == null) { return; } if (Interaction.AutoDetection) { if (!Interaction.HasDeteced) { return; } } if (Interaction.IsGrab && !IsSelf) { return; } if (!IsOpen && !IsLimit) { //if (Interaction.FeaturesObjectController.ActiveShadow) //{ if (shadowController != null) { shadowController.Init(Interaction.transform.parent, traModelNode, Color.yellow, 0.25f, 3000, traModelNode ? ShadowType.Manual : ShadowType.Auto); shadowController.OpenGhost(interaction.FeaturesObjectController.transform, localPosition, localScale, Quaternion.Euler(localRotation)); } IsOpen = true; } }
public override void OnOpen(DistanceInteraction InteractionSelf, DistanceInteraction interaction) { base.OnOpen(InteractionSelf, interaction); if (interaction == null) { return; } if (InteractionSelf == null) { return; } if (InteractionSelf.IsGrab && !IsSelf) { return; } if (!IsOpen && !IsLimit) { if (shadowController == null || isReUpdate) { Init(InteractionSelf.transform); } shadowController.OpenGhost(interaction.FeaturesObjectController.transform, localPosition, localScale, Quaternion.Euler(localRotation), isLocal); IsOpen = true; } }