// Use this for initialization void Start() { // Update content List <ItemProductData> itemProducts = ItemModel.Instance.itemProducts; for (int i = 0; i < this.transform.childCount; i++) { ItemProductData productData = itemProducts[i]; ItemData itemData = ItemModel.Instance.itemDataDict[productData.itemName]; GameObject cellObj = transform.GetChild(i).gameObject; DiamondCell cellCom = cellObj.GetComponent <DiamondCell>(); cellCom.diamondProductID = i; // item name GameObject nameLabelObj = cellCom.transform.Find("NameLabel").gameObject; UILabel nameLabelCom = nameLabelObj.GetComponent <UILabel>(); nameLabelCom.text = Language.Get(itemData.textKey); // itemData.name; // item sprite GameObject itemSpriteObj = cellCom.transform.Find("ItemSprite").gameObject; UISprite itemSpriteCom = itemSpriteObj.GetComponent <UISprite>(); itemSpriteCom.spriteName = itemData.spriteName; if (productData.itemName == ItemModel.MAGIC_POWER) { itemSpriteObj.transform.localScale = new Vector3(62, 100, 0); } // item introduction GameObject introLabelObj = cellCom.transform.Find("IntroLabel").gameObject; UILabel introLabelCom = introLabelObj.GetComponent <UILabel>(); introLabelCom.text = Language.Get(itemData.descKey); // item number GameObject itemNumObj = cellCom.transform.Find("ItemNumLabel").gameObject; UILabel itemNumCom = itemNumObj.GetComponent <UILabel>(); itemNumCom.text = productData.itemNum.ToString(); itemNumCom.transform.localScale = new Vector3(40, 40, 0); itemNumCom.transform.localPosition = new Vector3(40, -30, 0); // diamond number GameObject diamondNumObj = cellCom.transform.Find("ConfirmButton/NumLabel").gameObject; UILabel diamondNumCom = diamondNumObj.GetComponent <UILabel>(); diamondNumCom.text = productData.diamondNum.ToString(); } }
public ItemProductData getItemProductData(string itemName, int index) { if (itemName != SNOW_BALL && itemName != HOUR_GLASS && itemName != ICE_PICK) { itemName = MAGIC_POWER; } List <ItemProductData> products = new List <ItemProductData>(); for (int i = 0; i < itemProducts.Count; i++) { ItemProductData productData = itemProducts[i]; if (productData.itemName == itemName) { products.Add(productData); } } return(products[index]); }
void OnClick() { if (purchasing || buyFSM.ActiveStateName != "In") { return; } //purchasing = true; BasicItem itemComponent = item.itemPrefab.GetComponent <BasicItem>(); ItemProductData productData = ItemModel.Instance.getItemProductData(itemComponent.ItemName, packIndex); bool purchaseSuccess = ItemModel.Instance.buyItem(productData); if (purchaseSuccess) { Debug.Log("Purchase success"); item.AddItems(itemCount + freeItemCount); buyFSM.SendEvent("BuyFinished"); } else { Debug.Log("Not enough diamond"); // Popup mall window, with "mall" tab enabled. MallTab mallTab = GameObject.Find("MallTabButton2").gameObject.GetComponent <MallTab>(); mallTab.OnClick(); mallFSM.SendEvent("Show"); } /* * InAppPurchasesSystem.OnPurchaseSuccess += OnPurchaseSuccess; * InAppPurchasesSystem.OnPurchaseFail += OnPurchaseFail; * InAppPurchasesSystem.OnPurchaseCancel += OnPurchaseFail; * InAppPurchasesSystem.Instance.PurchaseProduct(purchaseId); */ }
public bool buyItem(ItemProductData productData) { bool isOK = true; int userDiamondNum = UserManagerCloud.Instance.CurrentUser.UserGoldCoins; if (userDiamondNum >= productData.diamondNum) { UserManagerCloud.Instance.CurrentUser.UserGoldCoins -= productData.diamondNum; if (productData.itemName == ICE_PICK) { UserManagerCloud.Instance.CurrentUser.IcePick += productData.itemNum; } else if (productData.itemName == MAGIC_POWER) { UserManagerCloud.Instance.CurrentUser.MagicPower += productData.itemNum; } else if (productData.itemName == SNOW_BALL) { UserManagerCloud.Instance.CurrentUser.SnowBall += productData.itemNum; } else if (productData.itemName == HOUR_GLASS) { UserManagerCloud.Instance.CurrentUser.Hourglass += productData.itemNum; } // Update user.data UserCloud.Serialize(UserManagerCloud.FILE_NAME_LOCAL); BIModel.Instance.addPurchaseData(productData.itemName, productData.itemNum, productData.diamondNum); } else { return(false); } return(true); }
public bool buyItem(ItemProductData productData) { bool isOK = true; int userDiamondNum = UserManagerCloud.Instance.CurrentUser.UserGoldCoins; if (userDiamondNum >= productData.diamondNum) { UserManagerCloud.Instance.CurrentUser.UserGoldCoins -= productData.diamondNum; if (productData.itemName == ICE_PICK) { UserManagerCloud.Instance.CurrentUser.IcePick += productData.itemNum; } else if (productData.itemName == MAGIC_POWER) { UserManagerCloud.Instance.CurrentUser.MagicPower += productData.itemNum; } else if (productData.itemName == SNOW_BALL) { UserManagerCloud.Instance.CurrentUser.SnowBall += productData.itemNum; } else if (productData.itemName == HOUR_GLASS) { UserManagerCloud.Instance.CurrentUser.Hourglass += productData.itemNum; } // Update user.data UserCloud.Serialize(UserManagerCloud.FILE_NAME_LOCAL); BIModel.Instance.addPurchaseData(productData.itemName, productData.itemNum, productData.diamondNum); } else { return false; } return true; }
void UpdateStats() { BasicItem itemComponent = item.itemPrefab.GetComponent <BasicItem>(); ItemProductData productData = ItemModel.Instance.getItemProductData(itemComponent.ItemName, packIndex); icon.enabled = true; iconBg.enabled = true; icon.spriteName = itemComponent.iconName; icon.transform.localScale = new Vector3(100, 100, 0); ChangeScaleX(buttonBg.transform, 352f); if (packIndex == 0) { itemDescriptionLabel.text = Language.Get(itemComponent.NameSingular.Replace(" ", "_").ToUpper() + "_DESCRIPTION"); titleLabel.text = Language.Get("BUY_ITEMS"); } if (itemComponent.GetType() == typeof(IcePick)) { //itemCount = TweaksSystem.Instance.intValues["IcePickPack" + packIndex]; itemCount = productData.itemNum; freeItemCount = 0; } else if (itemComponent.GetType() == typeof(Snowball)) { // itemCount = TweaksSystem.Instance.intValues["SnowballPack" + packIndex]; // freeItemCount = endGame ? 0 : TweaksSystem.Instance.intValues["SnowballFreePack" + packIndex]; itemCount = productData.itemNum; freeItemCount = 0; } else if (itemComponent.GetType() == typeof(Hourglass)) { // itemCount = TweaksSystem.Instance.intValues["HourglassPack" + packIndex]; // freeItemCount = endGame ? 0 : TweaksSystem.Instance.intValues["HourglassFreePack" + packIndex]; itemCount = productData.itemNum; freeItemCount = 0; } else { //itemCount = TweaksSystem.Instance.intValues["ItemsPack" + packIndex]; itemCount = productData.itemNum; freeItemCount = 0; //icon.enabled = false; //iconBg.enabled = false; icon.spriteName = "magic_potion"; icon.transform.localScale = new Vector3(54, 86, 0); ChangeScaleX(buttonBg.transform, 310f); if (packIndex == 0) { itemDescriptionLabel.text = Language.Get("ITEM_TOKEN_DESCRIPTION"); titleLabel.text = Language.Get("GET_MORE_TOKENS"); } } itemCountLabel.text = (itemCount + freeItemCount).ToString(); // + " " + ((itemCount == 1) ? itemComponent.NameSingular : itemComponent.NamePlural); packLabel.text = productData.diamondNum.ToString(); // packLabel actually is diamond number label if (itemComponent is Snowball) { purchaseId = (InAppPurchasesSystem.InAppPurchase)((int)InAppPurchasesSystem.InAppPurchase.SnowballSmallPack + packIndex); } else if (itemComponent is Hourglass) { purchaseId = (InAppPurchasesSystem.InAppPurchase)((int)InAppPurchasesSystem.InAppPurchase.HourglassSmallPack + packIndex); } else if (itemComponent is IcePick) { purchaseId = (InAppPurchasesSystem.InAppPurchase)((int)InAppPurchasesSystem.InAppPurchase.IcePickSmallPack + packIndex); } else { purchaseId = (InAppPurchasesSystem.InAppPurchase)((int)InAppPurchasesSystem.InAppPurchase.TokenSmallPack + packIndex); } }
public bool buyItem(int productID) { ItemProductData productData = itemProducts[productID]; return(buyItem(productData)); }