//-----------------------------------------------------------------
        //	                                USED
        //-----------------------------------------------------------------
        protected virtual void InteractableObjectUsed(object sender, InteractableObjectEventArgs e)
        {
            isUsed = true;

            SGPushStartedEvent.RegisterListener(OnSGPushStarted);
            SGPushChangedEvent.RegisterListener(OnSGPushChanged);
            SGPushEndedEvent.RegisterListener(OnSGPushEnded);

            controller = e.interactingObject.transform;

            //log.InfoMS("Controller: " + controller.name);
            //log.InfoMS("Button: " + gameObject.name);//(sender as GameObject).name);
            //log.InfoMS("<Color=red>\n+++Used+++</Color>");



            atEnd = false;
        }
Beispiel #2
0
        /// <summary>
        /// Additional methods can be called here during button state changes. e.g. play a sound.
        /// The listeners for the Skeleton Gestures are managed here.
        /// </summary>
        /// <param name="state">the standard button selection states.</param>
        /// <param name="instant">will use fade tiem or transition instantly.</param>
        protected override void DoStateTransition(SelectionState state, bool instant)
        {
            //log.InfoMS($"<Color=cyan>state transition </Color> <b>{state}</b> <Color=cyan>of </Color><Color=green>{gameObject.name}</Color>");

            switch (state)
            {
            case SelectionState.Normal:
                SGPushStartedEvent.UnregisterListener(OnSGPushStarted);
                SGPushEndedEvent.UnregisterListener(OnSGPushEnded);
                break;

            case SelectionState.Highlighted:
                SGPushStartedEvent.RegisterListener(OnSGPushStarted);
                break;

            case SelectionState.Pressed:
                SGPushStartedEvent.UnregisterListener(OnSGPushStarted);
                SGPushEndedEvent.RegisterListener(OnSGPushEnded);
                break;

            case SelectionState.Selected:
                break;

            case SelectionState.Disabled:
                SGPushStartedEvent.UnregisterListener(OnSGPushStarted);
                SGPushEndedEvent.UnregisterListener(OnSGPushEnded);
                break;

            default:
                SGPushStartedEvent.UnregisterListener(OnSGPushStarted);
                SGPushEndedEvent.UnregisterListener(OnSGPushEnded);
                break;
            }

            base.DoStateTransition(state, instant);
        }