public override int GetElementType(int id) { XsollaPricepoint pricepoint = GetItem(id); switch (pricepoint.label) { case null: case "null": case "": if (pricepoint.IsSpecialOffer()) { return(SPECIAL_OFFER); } return(NORMAL); case "RECOMMENDED": return(RECOMMENDED); case "BEST DEAL": return(BEST_DEAL); default: return(NORMAL); } }
public void init(XsollaPricepoint pItem, XsollaUtils pUtils) { mItem = pItem; mUtils = pUtils; // Загружаем картинку if (pItem.image != "null") { mImgLoader.LoadImage(mItemImg, pItem.GetImageUrl()); } else if (pUtils.GetProject().virtualCurrencyIconUrl != "null") { mImgLoader.LoadImage(mItemImg, pUtils.GetProject().virtualCurrencyIconUrl); } else { mItemImg.color = new Color(255, 255, 255, 0); } // Задаем короткое описание mShortDesc.text = pItem.GetDescription(); // Задаем название mItemName.text = pUtils.GetProject().isDiscrete ? pItem.outAmount.ToString("N2") : pItem.outAmount.ToString("##.00"); mVcCurr.text = mUtils.GetProject().virtualCurrencyName; // Рекламный блок SetAdBlock(pItem); // Ценовой блок SetAmountBlock(pItem.sum, pItem.sumWithoutDiscount, pItem.currency); }
public static StyleManager.BaseSprite SetAdBlockItem(XsollaPricepoint pItem, XsollaUtils pUtils, Text pLabel, Image pPanel) { bool isOffer = (pItem.sum != pItem.sumWithoutDiscount) || (pItem.bonusItems.Count > 0); String lDisplaLabel; if (isOffer) { lDisplaLabel = pItem.offerLabel != "" ? pItem.offerLabel : pUtils.GetTranslations().Get("option_offer_desktop"); } else { lDisplaLabel = pItem.label; } if (!isOffer && pItem.advertisementType != AXsollaShopItem.AdType.NONE) { switch (pItem.advertisementType) { case AXsollaShopItem.AdType.BEST_DEAL: { pLabel.text = pItem.label; pPanel.enabled = true; pPanel.sprite = StyleManager.Instance.GetSprite(StyleManager.BaseSprite.bckg_bd_panel); return(StyleManager.BaseSprite.bckg_item_bd); } case AXsollaShopItem.AdType.RECCOMENDED: { pLabel.text = pItem.label; pPanel.enabled = true; pPanel.sprite = StyleManager.Instance.GetSprite(StyleManager.BaseSprite.bckg_ad_panel); return(StyleManager.BaseSprite.bckg_item_ad); } case AXsollaShopItem.AdType.SPECIAL_OFFER: { pLabel.text = pItem.label; pPanel.enabled = true; pPanel.sprite = StyleManager.Instance.GetSprite(StyleManager.BaseSprite.bckg_sales_panel); return(StyleManager.BaseSprite.bckg_item_sales); } case AXsollaShopItem.AdType.CUSTOM: { pLabel.text = pItem.label; pPanel.enabled = true; pPanel.sprite = StyleManager.Instance.GetSprite(StyleManager.BaseSprite.bckg_sales_panel); return(StyleManager.BaseSprite.bckg_item_sales); } default: { return(StyleManager.BaseSprite.bckg_item); } } } return(StyleManager.BaseSprite.bckg_item); }
private void BuyClick(XsollaPricepoint pItem) { Logger.Log("Click buy btn "); Dictionary <string, object> map = new Dictionary <string, object> (1); map.Add("out", pItem.outAmount); gameObject.GetComponentInParent <XsollaPaystationController> ().ChooseItem(map, false); }
public override GameObject GetView(int position) { int type = GetElementType(position); GameObject shopItemInstance; switch (type) { case NORMAL: shopItemInstance = Instantiate(shopItemPrefab) as GameObject; break; case RECOMMENDED: shopItemInstance = Instantiate(shopItemPrefabRecomended) as GameObject; break; case BEST_DEAL: shopItemInstance = Instantiate(shopItemPrefabBest) as GameObject; break; case SPECIAL_OFFER: shopItemInstance = Instantiate(shopItemPrefabOffer) as GameObject; break; default: shopItemInstance = Instantiate(shopItemPrefab) as GameObject; break; } XsollaPricepoint pricepoint = GetItem(position); ShopItemViewAdapter itemAdapter = shopItemInstance.GetComponent <ShopItemViewAdapter>(); itemAdapter.SetRealPrice(pricepoint.GetPriceString()); itemAdapter.SetSpecial(pricepoint.desc); if ("".Equals(pricepoint.label) || "null".Equals(pricepoint.label)) { itemAdapter.SetCoins(textValue); } else { itemAdapter.SetCoins(pricepoint.label); } itemAdapter.SetCoinsAmount(pricepoint.outAmount.ToString()); itemAdapter.SetImage(pricepoint.GetImageUrl()); itemAdapter.SetOnClickListener(() => OnClickBuy(pricepoint.outAmount)); // ImageLoader imageLoader = GetComponent<ImageLoader> (); // imageLoader.LoadImage (shopItemInstance.GetComponent<Image>(), url); return(shopItemInstance); }
private void AddPricePointItem(XsollaPricepoint pItem) { GameObject lBaseObj = Resources.Load(PREFAB_SHOP_PRICEPOINT_GRID) as GameObject; // создаем экземпляр объекта товара GameObject lItemObj = Instantiate(lBaseObj); // получаем контроллер PricePointItemController itemController = lItemObj.GetComponent <PricePointItemController>(); // инициализируем контроллер itemController.init(pItem, mUtils); // добавляем на панель lItemObj.transform.SetParent(mItemsContentGrid.transform); // масштабирование Resizer.SetDefScale(lItemObj); mListItems.Add(itemController); }
public override GameObject GetView(int position) { GameObject shopItemInstance = Instantiate(shopItemPrefab) as GameObject; XsollaPricepoint pricepoint = GetItem(position); ShopItemViewAdapter itemAdapter = shopItemInstance.GetComponent <ShopItemViewAdapter>(); itemAdapter.SetImage(pricepoint.GetImageUrl()); itemAdapter.SetName(pricepoint.GetOutString()); itemAdapter.SetDesc(_virtualCurrencyName); itemAdapter.SetBuyText(_buyBtnText); itemAdapter.SetSpecial(pricepoint.GetDescription()); itemAdapter.SetPrice(pricepoint.GetPriceString()); itemAdapter.SetLabel(pricepoint.GetAdvertisementType(), pricepoint.GetLabel()); itemAdapter.SetOnClickListener(() => OnClickBuy(pricepoint.outAmount)); return(shopItemInstance); }
// новая инициализация public void init(XsollaUtils pUtils, XsollaPricepoint pDefPackage) { mUtils = pUtils; if (pUtils.GetProject().isDiscrete) { virtCurrAmount.contentType = InputField.ContentType.IntegerNumber; } else { virtCurrAmount.contentType = InputField.ContentType.DecimalNumber; } btnPay.gameObject.GetComponentInChildren <Text>().text = pUtils.GetTranslations().Get("form_continue"); FindObjectOfType <ImageLoader>().LoadImage(iconVirtCurr, pUtils.GetProject().virtualCurrencyIconUrl); // Задаем дефолтное значение для обсчета totalAmountTitle.text = mUtils.GetTranslations().Get("form_subtotal"); virtCurrAmount.text = pDefPackage.outAmount.ToString(); realCurrAmount.text = pDefPackage.sum.ToString(); mTotalAmount.text = CurrencyFormatter.Instance.FormatPrice(pDefPackage.currency, pDefPackage.sum);; virtCurrAmount.onValueChanged.AddListener(delegate { if (!mSetValues) { CancelInvoke(); Invoke("RecalcVcAmount", 1); } }); virtCurrAmount.onEndEdit.AddListener(delegate { mErrorPanel.gameObject.SetActive(false); }); realCurrAmount.onValueChanged.AddListener(delegate { if (!mSetValues) { CancelInvoke(); Invoke("RecalcAmount", 1); } }); realCurrAmount.onEndEdit.AddListener(delegate { mErrorPanel.gameObject.SetActive(false); }); btnPay.onClick.AddListener(delegate { BuyBtn(); }); }
private void SetAdBlock(XsollaPricepoint pItem) { StyleManager.BaseSprite lItemBckg = ShopItemHelper.SetAdBlockItem(pItem, mUtils, mAdPanel.GetComponentInChildren <Text>(), mAdPanel.GetComponent <Image>()); SetSpecialAdBkcg(lItemBckg); }