private IEnumerator loadAd()
        {
            if (!(definition.AdItem == null) && definition.AdItem.PropType == PropDefinition.PropTypes.Consumable && !(definition.AdMarket == null))
            {
                currentAdItem = new MarketplaceItemData(unlockLevel: progressionService.GetUnlockLevelFromDefinition(definition.AdItem, ProgressionUnlockCategory.partySupplies), propDefn: definition.AdItem);
                AssetRequest <Sprite> backgroundSprite = Content.LoadAsync(bgAssetContentKey, definition.AdMarket.NameInAssets);
                yield return(backgroundSprite);

                currentAdBackground = backgroundSprite.Asset;
                marketplaceAd.SetData(currentAdItem, definition, itemSprites[currentAdItem.PropDefn.GetIconContentKey().Key.ToLower()], currentAdBackground);
            }
        }
        private void onItemSelected(int itemIndex)
        {
            MarketplaceItem marketplaceItem = marketplaceItems[itemIndex].MarketplaceItem;

            if (marketplaceItem.IsMemberLocked)
            {
                Service.Get <GameStateController>().ShowAccountSystemMembership("Marketplace");
            }
            else if (marketplaceItem.IsLevelLocked)
            {
                if (popupController == null)
                {
                    InitPopupController();
                }
                MarketplaceItemData itemData = new MarketplaceItemData(marketplaceItem.ItemDefinition, marketplaceItem.RequiredLevel);
                popupController.ShowItemPopup(itemData, itemSprites[marketplaceItem.ItemDefinition.GetIconContentKey().Key.ToLower()], marketplaceItem.LockStates);
            }
            else
            {
                PrefabContentKey prefabKey = ((marketplaceItem.ItemDefinition.ExperienceType == PropDefinition.ConsumableExperience.PartyGameLobby) ? partyGameConfirmationPrefabKey : confirmationPrefabKey);
                CoroutineRunner.Start(loadConfirmation(prefabKey, marketplaceItem), this, "LoadMarketplaceConfirmation");
            }
        }