public void SelectBanner() { displayPromoIndex = promos.Count == 0 ? 0 : displayPromoIndex % promos.Count; activePromo = promos.Count == 0 ? UB_PromoDisplay.EMPTY_PROMO : promos[displayPromoIndex]; AdjustSlotDisplay(displayPromoIndex); ViewSaleBtn.SetActive(!string.IsNullOrEmpty(PF_GameData.GetEventSaleStore(activePromo.EventKey))); PlayEventBtn.SetActive(activePromo.linkedAd == null && PF_GameData.GetEventAssociatedLevels(activePromo.EventKey).Count > 0); WatchAdBtn.SetActive(activePromo.linkedAd != null); if (activePromo.EventKey != null) // Event Type { selectedDesc.text = activePromo.Description; selectedTitle.text = activePromo.Title; } else if (activePromo.linkedAd != null) // Ad Type { var qtyString = string.Format("{0}", activePromo.linkedAd.Details.PlacementViewsRemaining == null ? "UNLIMITED rewarded ads." : activePromo.linkedAd.Details.PlacementViewsRemaining + " more rewarded ads."); selectedDesc.text = activePromo.linkedAd.Details.RewardDescription + " You may watch " + qtyString; selectedTitle.text = activePromo.linkedAd.Details.RewardName; } else { selectedDesc.text = GlobalStrings.NO_EVENTS_MSG; selectedTitle.text = ""; } if (activePromo.assets.Banner != null) { PromoBanner.overrideSprite = Sprite.Create(activePromo.assets.Banner, new Rect(0, 0, activePromo.assets.Banner.width, activePromo.assets.Banner.height), new Vector2(0.5f, 0.5f)); } }
public void Init() { _timeSinceMove = Time.time; if (PF_GameData.PromoAssets.Count == 0) { return; } promos.Clear(); foreach (var item in PF_GameData.PromoAssets) { var promo = new UB_PromoDisplay { assets = item }; UB_EventData ev; if (PF_GameData.Events.TryGetValue(item.PromoId, out ev)) { promo.EventKey = ev.EventKey; promo.Title = ev.EventName; promo.Description = ev.EventDescription; promos.Add(promo); } } SetAdSlotCount(promos.Count); SelectBanner(); CheckForPlayFabPlacement(); }
public void SelectBanner(UB_PromoDisplay newPromo, int index) { activePromo = newPromo; AdjustSlotDisplay(index); PlayEventBtn.SetActive(activePromo.linkedEvent != null); ViewSaleBtn.SetActive(activePromo.linkedSale != null || (activePromo.linkedEvent != null && !string.IsNullOrEmpty(activePromo.linkedEvent.StoreToUse))); if (activePromo.linkedSale != null) // Sale Type { selectedDesc.text = activePromo.linkedSale.SaleDescription; selectedTitle.text = activePromo.linkedSale.SaleName; } else if (activePromo.linkedEvent != null) // Event Type { selectedDesc.text = activePromo.linkedEvent.EventDescription; selectedTitle.text = activePromo.linkedEvent.EventName; } else { selectedDesc.text = GlobalStrings.NO_EVENTS_MSG; selectedTitle.text = ""; } if (activePromo.assets.Banner != null) { PromoBanner.sprite = Sprite.Create(activePromo.assets.Banner, new Rect(0, 0, activePromo.assets.Banner.width, activePromo.assets.Banner.height), new Vector2(0.5f, 0.5f)); } else { PromoBanner.sprite = null; } }
static UB_PromoDisplay() { EMPTY_PROMO = new UB_PromoDisplay(); EMPTY_PROMO.assets = new UB_UnpackedAssetBundle(); EMPTY_PROMO.assets.Banner = null; EMPTY_PROMO.assets.ContentKey = "none"; EMPTY_PROMO.assets.PromoId = "none"; EMPTY_PROMO.assets.Splash = null; EMPTY_PROMO.linkedEvent = null; EMPTY_PROMO.linkedSale = null; }
static UB_PromoDisplay() { EMPTY_PROMO = new UB_PromoDisplay { assets = new UB_UnpackedAssetBundle { Banner = null, ContentKey = "none", PromoId = "none", Splash = null }, linkedAd = null, EventKey = null, Title = null, Description = null }; }
public void AddAdPromo(AdPlacementDetails details) { var adPromo = new UB_PromoDisplay(); adPromo.linkedAd = new UB_AdData { Details = details }; adPromo.assets = new UB_UnpackedAssetBundle(); adPromo.assets.Banner = defaultVideoBanner; adPromo.assets.PromoId = details.PlacementId; promos.Add(adPromo); SetAdSlotCount(promos.Count); displayPromoIndex = promos.Count - 1; SelectBanner(); }
public void Init() { // load sales or load default banners // set up ad circles timeSinceMove = Time.time; if (PF_GameData.PromoAssets.Count > 0) { promos.Clear(); foreach (var item in PF_GameData.PromoAssets) { UB_PromoDisplay promo = new UB_PromoDisplay() { assets = item }; if (item.ContentKey.Contains("events")) { UB_EventData ev = null; PF_GameData.Events.TryGetValue(item.PromoId, out ev); promo.linkedEvent = ev; promo.linkedSale = null; } else { UB_SaleData sl = null; PF_GameData.Sales.TryGetValue(item.PromoId, out sl); promo.linkedSale = sl; promo.linkedEvent = null; } promos.Add(promo); } SetAdSlotCount(promos.Count); SelectBanner(promos[0], 0); } }