Exemplo n.º 1
0
        protected virtual void Update()
        {
            KeyPhase mask = GetPhaseMask();

            if (mask.HasFlag(phase))
            {
                onTrigger?.Invoke();
            }

            #region LOCAL_FUNCTIONS
            KeyPhase GetPhaseMask()
            {
                var p = KeyPhase.None;

                p |= Input.GetKeyDown(keyCode) ? KeyPhase.Down : KeyPhase.None;
                p |= Input.GetKeyUp(keyCode) ? KeyPhase.Up : KeyPhase.None;
                p |= Input.GetKey(keyCode) ? KeyPhase.Pressed : KeyPhase.Unpressed;

                return(p);
            }

            #endregion
        }