protected void parseDisneyShopRewards() { Dictionary <int, DisneyStoreFranchiseDefinition> dictionary = Service.Get <GameData>().Get <Dictionary <int, DisneyStoreFranchiseDefinition> >(); Dictionary <int, DisneyStoreFranchiseDefinition> .Enumerator enumerator = dictionary.GetEnumerator(); bool isMember = isLocalPlayerMember(); while (enumerator.MoveNext()) { DisneyStoreFranchiseDefinition value = enumerator.Current.Value; for (int i = 0; i < value.Items.Count; i++) { DisneyStoreItemData disneyStoreItemData = new DisneyStoreItemData(value.Items[i]); if (disneyStoreItemData.Definition != null) { if (DisneyStoreUtils.IsItemOwned(disneyStoreItemData)) { parseRewardDefinition(getRewards(value.Items[i].Reward), isMember, new SpriteContentKey("Images/ProgressionIcons/Quests_ProgressionLock_Membership"), value.Items[i].ThemeDefinition); } } else { Log.LogError(this, $"Franchise contains null item: {value.name}"); } } } }
public override void SetItem(DisneyStoreItemData item, Sprite icon, DisneyStoreFranchise storeFranchise, IDisneyStoreController storeController, DisneyStoreFranchiseItem shopItem, RectTransform scrollRectTransform) { IconImage.sprite = icon; this.storeFranchise = storeFranchise; GetComponent <StoreItemConfirmationPlacement>().PositionConfirmation((RectTransform)shopItem.transform, scrollRectTransform); selectTrayIcons(item); logItemViewed(item); }
public void SetItem(DisneyStoreItemData itemData, DisneyStoreFranchise storeFranchise) { this.itemData = itemData; this.storeFranchise = storeFranchise; TitleText.text = Service.Get <Localizer>().GetTokenTranslation(itemData.Definition.TitleToken); PriceTag.setItem(itemData.Definition, itemData.Definition.Cost, (CellPhoneSaleActivityDefinition sale, DisneyStoreItemDefinition item) => new List <DisneyStoreItemDefinition>(sale.DisneyStoreItems).Find((DisneyStoreItemDefinition disneyStoreItem) => disneyStoreItem.Id == itemData.Definition.Id)); loadItemIcon(itemData); ShowItemStatus(); }
public static bool IsIglooReward(DisneyStoreItemData item) { bool result = false; List <DReward> rewards = item.GetRewards(); for (int i = 0; i < rewards.Count; i++) { result = IsIglooReward(rewards[i].Category); } return(result); }
public static RewardCategory GetItemRewardCategory(DisneyStoreItemData item) { List <DReward> rewards = item.GetRewards(); RewardCategory result = RewardCategory.equipmentInstances; if (rewards.Count > 0) { result = rewards[0].Category; } return(result); }
protected void setPurchaseActionText(DisneyStoreItemData item) { List <DReward> rewards = item.GetRewards(); RewardCategory category = rewards[0].Category; string token = "GlobalUI.Buttons.Use"; if (category == RewardCategory.equipmentInstances) { token = "Marketplace.DisneyShop.WearButton"; } PurchasedActionText.text = Service.Get <Localizer>().GetTokenTranslation(token); }
private bool isItemEquippable(DisneyStoreItemData itemData) { List <DReward> rewards = itemData.GetRewards(); for (int i = 0; i < rewards.Count; i++) { if (rewards[i].Category == RewardCategory.equipmentInstances || rewards[i].Category == RewardCategory.durables || rewards[i].Category == RewardCategory.equipmentTemplates || rewards[i].Category == RewardCategory.fabrics || rewards[i].Category == RewardCategory.decals || rewards[i].Category == RewardCategory.colourPacks || rewards[i].Category == RewardCategory.consumables) { return(true); } } return(false); }
public static bool DoesItemContainEquipmentInstance(DisneyStoreItemData item) { List <DReward> rewards = item.GetRewards(); bool result = false; for (int i = 0; i < rewards.Count; i++) { if (rewards[i].Category == RewardCategory.equipmentInstances) { result = true; break; } } return(result); }
protected void selectTrayIcons(DisneyStoreItemData item) { List <DReward> rewards = item.GetRewards(); RewardCategory category = rewards[0].Category; int num = (DisneyStoreUtils.IsIglooReward(item) ? 3 : Array.IndexOf(TrayIconImageSelectorCategoryIndexes, category)); if (num != -1 || num >= TrayIconImageSelector.Sprites.Length) { TrayIconImageSelector.SelectSprite(num); } else { TrayIconImageSelector.SelectSprite(0); } }
private IEnumerator loadConfirmation(PrefabContentKey prefabKey, DisneyStoreItemData item, Sprite icon, DisneyStoreFranchiseItem shopItem) { AssetRequest <GameObject> request = Content.LoadAsync(prefabKey); yield return(request); GameObject newConfirmation = UnityEngine.Object.Instantiate(request.Asset, ConfirmationContainer, worldPositionStays: false); newConfirmation.GetComponent <AbstractDisneyStoreConfirmation>().SetItem(item, icon, this, storeController, shopItem, ContentScrollRect.transform as RectTransform); if (confirmation != null) { HideConfirmation(); } confirmation = newConfirmation; ContentScrollRect.onValueChanged.AddListener(onContentScrollRectValueChanged); }
public static bool IsItemMultiPurchase(DisneyStoreItemData item) { List <DReward> rewards = item.GetRewards(); bool flag = false; bool flag2 = false; for (int i = 0; i < rewards.Count; i++) { if (rewards[i].Category == RewardCategory.consumables || rewards[i].Category == RewardCategory.decorationInstances) { flag = true; continue; } flag2 = true; break; } return(flag && !flag2); }
private void showPriceTag(DisneyStoreItemData item) { PriceTagSpriteSelector.gameObject.SetActive(value: true); RewardCategory itemRewardCategory = DisneyStoreUtils.GetItemRewardCategory(item); if (DisneyStoreUtils.IsIglooReward(itemRewardCategory)) { PriceTagSpriteSelector.SelectSprite(2); } else if (itemRewardCategory == RewardCategory.consumables) { PriceTagSpriteSelector.SelectSprite(1); } else { PriceTagSpriteSelector.SelectSprite(0); } }
public void ShowConfirmation(DisneyStoreItemData item, Sprite icon, DisneyStoreFranchiseItem shopItem) { PrefabContentKey prefabKey = OwnedConfirmationPrefabKey; bool flag = DisneyStoreUtils.IsItemMultiPurchase(item); if (DisneyStoreUtils.IsIglooReward(item)) { prefabKey = IglooConfirmationPrefabKey; } else if (flag) { prefabKey = ConsumableConfirmationPrefabKey; } else if (!DisneyStoreUtils.IsItemOwned(item)) { prefabKey = PurchaseConfirmationPrefabKey; } CoroutineRunner.Start(loadConfirmation(prefabKey, item, icon, shopItem), this, ""); }
private void loadItemIcon(DisneyStoreItemData item) { if (item.Definition.Icon != null && !string.IsNullOrEmpty(item.Definition.Icon.Key)) { Content.LoadAsync(onCustomIconLoadComplete, item.Definition.Icon); return; } List <DReward> rewards = item.GetRewards(); switch (rewards[0].Category) { case RewardCategory.equipmentTemplates: { Dictionary <int, TemplateDefinition> dictionary2 = Service.Get <GameData>().Get <Dictionary <int, TemplateDefinition> >(); if (dictionary2.TryGetValue((int)rewards[0].UnlockID, out var value2)) { Texture2DContentKey equipmentIconPath = EquipmentPathUtil.GetEquipmentIconPath(value2.AssetName); Content.LoadAsync(delegate(string key, Texture2D texture) { onIconReady(texture, 0); }, equipmentIconPath); } break; } case RewardCategory.equipmentInstances: renderRewardItem(rewards[0].EquipmentRequest.definitionId, CustomEquipmentResponseAdaptor.ConvertResponseToCustomEquipment(rewards[0].EquipmentRequest)); break; case RewardCategory.decorationInstances: { Dictionary <int, DecorationDefinition> dictionary = Service.Get <GameData>().Get <Dictionary <int, DecorationDefinition> >(); if (dictionary.TryGetValue((int)rewards[0].UnlockID, out var value)) { Content.LoadAsync(delegate(string path, Texture2D asset) { onIconReady(asset, 1); }, value.Icon); } break; } } }
public override void SetItem(DisneyStoreItemData item, Sprite icon, DisneyStoreFranchise storeFranchise, IDisneyStoreController storeController, DisneyStoreFranchiseItem shopItem, RectTransform scrollRectTransform) { IconImage.sprite = icon; this.storeFranchise = storeFranchise; this.storeController = storeController; this.item = item; this.shopItem = shopItem; TitleText.text = Service.Get <Localizer>().GetTokenTranslation(item.Definition.TitleToken); DescriptionText.text = Service.Get <Localizer>().GetTokenTranslation(item.Definition.DescriptionToken); setState(ConfirmationState.Pending); setPurchaseCount(1); EquipPanel.SetActive(isItemEquippable(item)); selectTrayIcons(item); setPurchaseActionText(item); GetComponent <StoreItemConfirmationPlacement>().PositionConfirmation((RectTransform)shopItem.transform, scrollRectTransform); logItemViewed(item); singleItemCost = getItemCost(item.Definition); CostText.text = singleItemCost.ToString(); }
public static bool IsItemOwned(DisneyStoreItemData item) { List <DReward> rewards = item.GetRewards(); for (int i = 0; i < rewards.Count; i++) { if (rewards[i].Category == RewardCategory.equipmentInstances) { if (!InventoryUtils.IsCustomEquipmentOwned(rewards[i].EquipmentRequest)) { return(false); } } else if (Enum.IsDefined(typeof(ProgressionUnlockCategory), rewards[i].Category.ToString())) { ProgressionUnlockCategory category = (ProgressionUnlockCategory)Enum.Parse(typeof(ProgressionUnlockCategory), rewards[i].Category.ToString()); if (!Service.Get <ProgressionService>().IsUnlocked(rewards[i].UnlockID, category)) { return(false); } } } return(true); }
public abstract void SetItem(DisneyStoreItemData item, Sprite icon, DisneyStoreFranchise storeFranchise, IDisneyStoreController storeController, DisneyStoreFranchiseItem shopItem, RectTransform scrollRectTransform);
protected void logItemViewed(DisneyStoreItemData item) { Service.Get <ICPSwrveService>().Action("game.disney_store_item_view", item.Definition.name, item.GetRewards()[0].Category.ToString()); }