Indiefreaks.Xna.Input.Button.SetState C# (CSharp) Method

SetState() private method

private SetState ( bool value, long tick ) : void
value bool
tick long
return void
        internal void SetState(bool value, long tick)
        {
            if (value && !IsDown)
                _pressTick = tick;
            if (value)
                _heldTicks = (int) (tick - _pressTick);
            _prev = IsDown;
            IsDown = value;
            if (!IsDown && _prev)
                _releaseTick = tick;
            if (_releaseTick != 0)
                _releasedTicks = (int) (tick - _releasedTicks);
        }

Usage Example

示例#1
0
        internal void Update(long tick, ref MouseState mouseState)
        {
            _state = mouseState;

            _x           = _state.X;
            _y           = _state.Y;
            _scrollDelta = _state.ScrollWheelValue - this._scroll;
            _scroll      = _state.ScrollWheelValue;

            _left.SetState(_state.LeftButton == ButtonState.Pressed, tick);
            _right.SetState(_state.RightButton == ButtonState.Pressed, tick);
            _middle.SetState(_state.MiddleButton == ButtonState.Pressed, tick);
            _x1.SetState(_state.XButton1 == ButtonState.Pressed, tick);
            _x2.SetState(_state.XButton2 == ButtonState.Pressed, tick);
        }
Button