示例#1
0
    private void Update()
    {
        if (controller.MenuState())
        {
            if (_currentTimer > 0f)
            {
                _currentTimer -= Time.deltaTime;
                if (_currentTimer <= 0f)
                {
                    _currentTimer = 0f;
                }
            }

            if (Input.GetButtonDown("Left"))
            {
                _cursorIndex--;
                if (_cursorIndex < 0)
                {
                    _cursorIndex = _spaces.Length - 1;
                }
            }
            else if (Input.GetButtonDown("Right"))
            {
                _cursorIndex++;
                if (_cursorIndex >= _spaces.Length)
                {
                    _cursorIndex = 0;
                }
            }
            cursorPosition.anchoredPosition = new Vector3(CursorStartingPoint + CursorMove * _cursorIndex, cursorPosition.anchoredPosition.y, 0);

            if (Input.GetButtonDown("PickUp") && _currentTimer <= 0f)
            {
                PickUp pedestalItem   = _currentPedestal.Type;
                Sprite pedestalSprite = _currentPedestal.GetSprite();

                // Switching Item
                _currentPedestal.ChangeItem(_spaces[_cursorIndex], InventoryPanels[_cursorIndex].sprite);
                _spaces[_cursorIndex] = pedestalItem;
                InventoryPanels[_cursorIndex].sprite = pedestalSprite;
                InventoryPanels[_cursorIndex].color  = new Color(1, 1, 1, 1);

                cursorImage.enabled = false;
                _cursorIndex        = 0;
                controller.CloseMenu();
            }
        }
    }