public override IEnumerator PerformFirstPass()
    {
        splashScreen = SystemCanvas.transform.Find("SplashScreen").gameObject;
        Service.Set(SystemCanvas);
        LoadingController instance = splashScreen.AddComponent <LoadingController>();

        Service.Set(instance);
        Service.Set(new ActionIndicatorController());
        Service.Set(new UIElementDisablerManager());
        notificationBreadcrumbController = new NotificationBreadcrumbController();
        Service.Set(notificationBreadcrumbController);
        TutorialBreadcrumbController tutorialBreadcrumbController = new TutorialBreadcrumbController();

        tutorialBreadcrumbController.Init();
        Service.Set(tutorialBreadcrumbController);
        GameObject gameObject             = new GameObject();
        NativeSystemBarsManager instance2 = gameObject.AddComponent <NativeSystemBarsManager>();

        gameObject.transform.SetParent(Service.Get <GameObject>().transform);
        Service.Set(instance2);
        InAppRatingsPrompt instance3 = Service.Get <GameObject>().AddComponent <InAppRatingsPrompt>();

        Service.Set(instance3);
        PromptManagerRef.SetEventDispatcher(Service.Get <EventDispatcher>());
        yield break;
    }
예제 #2
0
    private void OnEnable()
    {
        notificationBreadcrumbController = Service.Get <NotificationBreadcrumbController>();
        notificationBreadcrumbController.ResetBreadcrumbs(Breadcrumb);
        NotificationBreadcrumbController obj = notificationBreadcrumbController;

        obj.OnBreadcrumbAdded = (Action <string, int>)Delegate.Combine(obj.OnBreadcrumbAdded, new Action <string, int>(onBreadcrumbAdded));
    }
예제 #3
0
 public NoSelectionState(Camera mainCam, OriginalFabricData originalFabricChannelData, OriginalDecalData originalDecalChannelData, PersistentBreadcrumbTypeDefinitionKey templateBreadcrumbType, PersistentBreadcrumbTypeDefinitionKey fabricBreadcrumbType, PersistentBreadcrumbTypeDefinitionKey decalBreadcrumbType)
 {
     this.mainCam = mainCam;
     this.originalFabricChannelData = originalFabricChannelData;
     this.originalDecalChannelData  = originalDecalChannelData;
     this.templateBreadcrumbType    = templateBreadcrumbType;
     this.fabricBreadcrumbType      = fabricBreadcrumbType;
     this.decalBreadcrumbType       = decalBreadcrumbType;
     breadcrumbController           = Service.Get <NotificationBreadcrumbController>();
 }
예제 #4
0
    private void OnDestroy()
    {
        NotificationBreadcrumbController obj = notificationBreadcrumbController;

        obj.OnBreadcrumbAdded = (Action <string, int>)Delegate.Remove(obj.OnBreadcrumbAdded, new Action <string, int>(onBreadcrumbAdded));
        NotificationBreadcrumbController obj2 = notificationBreadcrumbController;

        obj2.OnBreadcrumbRemoved = (Action <string, int>)Delegate.Remove(obj2.OnBreadcrumbRemoved, new Action <string, int>(onBreadcrumbRemoved));
        NotificationBreadcrumbController obj3 = notificationBreadcrumbController;

        obj3.OnBreadcrumbReset = (Action <string>)Delegate.Remove(obj3.OnBreadcrumbReset, new Action <string>(onBreadcrumbReset));
    }
예제 #5
0
 public NotificationMediator(EventDispatcher eventDispatcher, CPDataEntityCollection dataEntityCollection, TrayNotificationManager trayNotificationManager, NotificationBreadcrumbController notificationBreadcrumbController, BreadcrumbIdentifiers breadcrumbIdentifiers)
 {
     this.dataEntityCollection             = dataEntityCollection;
     this.trayNotificationManager          = trayNotificationManager;
     this.notificationBreadcrumbController = notificationBreadcrumbController;
     this.breadcrumbIdentifiers            = breadcrumbIdentifiers;
     eventDispatcher.AddListener <TaskServiceEvents.TasksLoaded>(onTasksLoaded);
     eventDispatcher.AddListener <TaskEvents.TaskCompleted>(onTaskComplete);
     eventDispatcher.AddListener <RewardEvents.RewardPopupComplete>(onRewardPopupComplete);
     eventDispatcher.AddListener <RewardServiceEvents.MyRewardEarned>(onMyRewardEarned);
     eventDispatcher.AddListener <DisneyStoreEvents.PurchaseComplete>(onDisneyStorePurchase);
     eventDispatcher.AddListener <SessionEvents.SessionEndedEvent>(onSessionEnded);
     eventDispatcher.AddListener <IglooUIEvents.ShowNotification>(onShowIglooNotification);
 }
예제 #6
0
    private void Awake()
    {
        breadcrumbAnimator               = GetComponent <Animator>();
        breadrumbImage                   = GetComponent <Image>();
        breadrumbImage.enabled           = false;
        notificationBreadcrumbController = Service.Get <NotificationBreadcrumbController>();
        NotificationBreadcrumbController obj = notificationBreadcrumbController;

        obj.OnBreadcrumbAdded = (Action <string, int>)Delegate.Combine(obj.OnBreadcrumbAdded, new Action <string, int>(onBreadcrumbAdded));
        NotificationBreadcrumbController obj2 = notificationBreadcrumbController;

        obj2.OnBreadcrumbRemoved = (Action <string, int>)Delegate.Combine(obj2.OnBreadcrumbRemoved, new Action <string, int>(onBreadcrumbRemoved));
        NotificationBreadcrumbController obj3 = notificationBreadcrumbController;

        obj3.OnBreadcrumbReset = (Action <string>)Delegate.Combine(obj3.OnBreadcrumbReset, new Action <string>(onBreadcrumbReset));
    }
 public void SetItem(IglooCatalogItemData item, Sprite icon, IglooCatalogController catalog, IglooCatalogItem catalogItem, RectTransform scrollRectTransform)
 {
     this.catalog         = catalog;
     this.item            = item;
     this.catalogItem     = catalogItem;
     titleText.text       = Service.Get <Localizer>().GetTokenTranslation(item.TitleToken);
     descriptionText.text = Service.Get <Localizer>().GetTokenTranslation(item.DescriptionToken);
     StartCoroutine(waitForItemIcon());
     setState(ConfirmationState.Pending);
     setPurchaseCount(1);
     ConfirmationPlacement.PositionConfirmation((RectTransform)catalogItem.transform, scrollRectTransform);
     logItemViewed(item);
     if (notificationBreadcrumbController == null)
     {
         notificationBreadcrumbController = Service.Get <NotificationBreadcrumbController>();
     }
     Service.Get <EventDispatcher>().AddListener <IglooServiceEvents.DecorationPurchaseFailed>(onDecorationPurchaseFailed);
 }
예제 #8
0
        private void onTimerTick()
        {
            DateTime     dateTime = Service.Get <INetworkServicesManager>().GameTimeMilliseconds.MsToDateTime();
            List <Quest> list     = new List <Quest>();
            NotificationBreadcrumbController notificationBreadcrumbController = Service.Get <NotificationBreadcrumbController>();

            for (int i = 0; i < timeLockedQuests.Count; i++)
            {
                Quest    quest     = timeLockedQuests[i];
                DateTime dateTime2 = quest.UnlockedTimeMilliseconds.MsToDateTime();
                long     num       = (long)(dateTime2 - dateTime).TotalMilliseconds;
                if (num > 0)
                {
                    continue;
                }
                quest.UpdateLockedState();
                if (quest.State == Quest.QuestState.Available)
                {
                    list.Add(quest);
                    notificationBreadcrumbController.AddPersistentBreadcrumb(breadcrumbType, quest.Definition.name);
                    string breadcrumbId = $"{quest.Definition.Mascot.AbbreviatedName}{quest.Definition.ChapterNumber}";
                    if (Service.Get <NotificationBreadcrumbController>().GetBreadcrumbCount(breadcrumbId) == 0)
                    {
                        Service.Get <NotificationBreadcrumbController>().AddBreadcrumb(breadcrumbId);
                    }
                }
            }
            for (int i = 0; i < list.Count; i++)
            {
                string breadcrumbId2 = $"{list[i].Mascot.AbbreviatedName}Quest";
                if (notificationBreadcrumbController.GetBreadcrumbCount(breadcrumbId2) == 0)
                {
                    notificationBreadcrumbController.AddBreadcrumb(breadcrumbId2);
                }
                timeLockedQuests.Remove(list[i]);
            }
        }
 private void Awake()
 {
     Item.SetActive(value: false);
     LoadingSpinner.SetActive(value: true);
     breadcrumbController = Service.Get <NotificationBreadcrumbController>();
 }
예제 #10
0
 private void Start()
 {
     notificationBreadcrumbController = Service.Get <NotificationBreadcrumbController>();
     Service.Get <EventDispatcher>().AddListener <FriendsServiceEvents.FriendsServiceInitialized>(onFriendsServiceInitialized);
     Service.Get <EventDispatcher>().AddListener <FriendsServiceEvents.FriendsServiceCleared>(onFriendsServiceCleared);
 }
예제 #11
0
    private void OnDisable()
    {
        NotificationBreadcrumbController obj = notificationBreadcrumbController;

        obj.OnBreadcrumbAdded = (Action <string, int>)Delegate.Remove(obj.OnBreadcrumbAdded, new Action <string, int>(onBreadcrumbAdded));
    }
예제 #12
0
    private void addBreadcrumbsForReward(Reward reward)
    {
        addBreadCrumbsForReward <PropDefinition, DurableReward, int>(reward, breadcrumbIdentifiers.GearType, breadcrumbIdentifiers.Gear);
        addBreadCrumbsForReward <TemplateDefinition, EquipmentTemplateReward, int>(reward, breadcrumbIdentifiers.TemplateType, breadcrumbIdentifiers.Template);
        addBreadCrumbsForReward <FabricDefinition, FabricReward, int>(reward, breadcrumbIdentifiers.FabricType, breadcrumbIdentifiers.Fabric);
        addBreadCrumbsForReward <DecalDefinition, DecalReward, int>(reward, breadcrumbIdentifiers.DecalType, breadcrumbIdentifiers.Decal);
        addBreadCrumbsForReward <TubeDefinition, TubeReward, int>(reward, breadcrumbIdentifiers.TubeType, breadcrumbIdentifiers.Tube);
        addBreadCrumbsForReward <DecorationDefinition, DecorationReward, int>(reward, breadcrumbIdentifiers.DecorationType, breadcrumbIdentifiers.Decoration);
        addBreadCrumbsForReward <StructureDefinition, StructureReward, int>(reward, breadcrumbIdentifiers.StructureType, breadcrumbIdentifiers.Structure);
        addBreadCrumbsForReward <MusicTrackDefinition, MusicTrackReward, int>(reward, breadcrumbIdentifiers.MusicTrackType, breadcrumbIdentifiers.MusicTrack);
        addBreadCrumbsForReward <LightingDefinition, LightingReward, int>(reward, breadcrumbIdentifiers.LightingType, breadcrumbIdentifiers.Lighting);
        if (reward.TryGetValue(out EquipmentInstanceReward rewardable) && !rewardable.IsEmpty())
        {
            bool flag = false;
            for (int i = 0; i < rewardable.EquipmentInstances.Count; i++)
            {
                if (dataEntityCollection.IsLocalPlayerMember() || !RewardUtils.IsMemberLockableItemMemberOnly <TemplateDefinition, int>(rewardable.EquipmentInstances[i].definitionId))
                {
                    NotificationBreadcrumbController      obj           = notificationBreadcrumbController;
                    PersistentBreadcrumbTypeDefinitionKey inventoryType = breadcrumbIdentifiers.InventoryType;
                    long equipmentId = rewardable.EquipmentInstances[i].equipmentId;
                    obj.AddPersistentBreadcrumb(inventoryType, equipmentId.ToString());
                    flag = true;
                }
            }
            if (flag)
            {
                notificationBreadcrumbController.AddBreadcrumb(breadcrumbIdentifiers.Inventory);
            }
        }
        if (!reward.TryGetValue(out ConsumableInstanceReward rewardable2) || rewardable2.IsEmpty())
        {
            return;
        }
        Dictionary <string, int> .Enumerator enumerator = rewardable2.Consumables.GetEnumerator();
        bool flag2 = false;
        bool flag3 = false;

        while (enumerator.MoveNext())
        {
            if (dataEntityCollection.IsLocalPlayerMember() || !RewardUtils.IsMemberLockableItemMemberOnly <PropDefinition, int>(RewardUtils.GetConsumableIdByServerName(enumerator.Current.Key)))
            {
                PersistentBreadcrumbTypeDefinitionKey type;
                if (RewardUtils.IsConsumablePartyGame(enumerator.Current.Key))
                {
                    type  = breadcrumbIdentifiers.PartyGameType;
                    flag3 = true;
                }
                else
                {
                    type  = breadcrumbIdentifiers.ConsumableType;
                    flag2 = true;
                }
                notificationBreadcrumbController.AddPersistentBreadcrumb(type, RewardUtils.GetConsumableIdByServerName(enumerator.Current.Key).ToString());
            }
        }
        if (flag2)
        {
            notificationBreadcrumbController.AddBreadcrumb(breadcrumbIdentifiers.Consumable);
        }
        if (flag3)
        {
            notificationBreadcrumbController.AddBreadcrumb(breadcrumbIdentifiers.PartyGame);
        }
    }