예제 #1
0
    private void InternalActivateStoreTab()
    {
        inventoryButton.Deselect();

        var selectedGroup = _groupsController.GetSelectedGroup();

        if (selectedGroup != null)
        {
            _itemsController.ActivateContainer(selectedGroup.Id);
        }
    }
예제 #2
0
    void Awake()
    {
        _storeController  = FindObjectOfType <StoreController>();
        _groupsController = FindObjectOfType <GroupsController>();

        var cartGroup = FindObjectOfType <CartGroupUI>();

        buyButton.onClick = (() =>
        {
            var purchaseParams = new PurchaseParams();
            purchaseParams.currency = _itemInformation.price.currency;

            if (_itemInformation.virtual_prices.Any())
            {
                _storeController.ShowConfirm(
                    () => {
                    XsollaStore.Instance.BuyItem(XsollaSettings.StoreProjectId, _itemInformation.sku, GetVirtualPrice().sku, VirtualCurrencyPurchaseComplete, _storeController.ShowError, null);
                }, null);
            }
            else
            {
                bool isItemVirtualCurrency = _groupsController?.GetSelectedGroup().Name == Constants.CurrencyGroupName;
                XsollaStore.Instance.BuyItem(XsollaSettings.StoreProjectId, _itemInformation.sku, data =>
                {
                    XsollaStore.Instance.OpenPurchaseUi(data);
                    _storeController.ProcessOrder(data.order_id, () => {
                        if (isItemVirtualCurrency)
                        {
                            _storeController.RefreshVirtualCurrencyBalance();
                        }
                    });
                }, _storeController.ShowError);
            }
        });

        addToCartButton.onClick = (bSelected =>
        {
            if (bSelected)
            {
                _storeController.CartModel.AddCartItem(_itemInformation);
                cartGroup.IncreaseCounter();
            }
            else
            {
                _storeController.CartModel.RemoveCartItem(_itemInformation.sku);
                cartGroup.DecreaseCounter();
            }
        });
    }