Пример #1
0
    void Update()
    {
        if (!isActive)
        {
            return;
        }
        if (!AcceptsInput)
        {
            return;
        }

        if (input.GetButtonDown(ButtonCode.Left))
        {
            if (focused.Left != null)
            {
                focused.UnFocus();
                focused = focused.Left;
                focused.Focus();
                _OnNodeFocused.OnNext(focused);
            }
        }
        if (input.GetButtonDown(ButtonCode.Right))
        {
            if (focused.Right != null)
            {
                focused.UnFocus();
                focused = focused.Right;
                focused.Focus();
                _OnNodeFocused.OnNext(focused);
            }
        }
        if (input.GetButtonDown(ButtonCode.Up))
        {
            if (focused.Up != null)
            {
                focused.UnFocus();
                focused = focused.Up;
                focused.Focus();
                _OnNodeFocused.OnNext(focused);
            }
        }
        if (input.GetButtonDown(ButtonCode.Down))
        {
            if (focused.Down != null)
            {
                focused.UnFocus();
                focused = focused.Down;
                focused.Focus();
                _OnNodeFocused.OnNext(focused);
            }
        }
    }
Пример #2
0
 void Start()
 {
     focused = initialNode;
     initialNode.Focus();
     _OnNodeFocused.OnNext(initialNode);
 }