Ejemplo n.º 1
0
        internal void HandleNewCards(MindVision mindVision, IMemoryUpdate result)
        {
            if (!isInit)
            {
                lastCollection = mindVision.GetCollectionCards();
                if (lastCollection == null || lastCollection.Count == 0)
                {
                    // We could not read the collection, so we throw and wait for a reset
                    throw new Exception("could not read collection " + (lastCollection != null));
                }
            }

            if (isInit)
            {
                var currentCards = mindVision.GetCollectionCards();
                if (currentCards == null || currentCards.Count == 0)
                {
                    return;
                }
                var newCards = GetNewCards(currentCards, lastCollection);
                if (newCards != null && newCards.Count > 0)
                {
                    result.HasUpdates = true;
                    result.NewCards   = newCards;
                }
                lastCollection = currentCards;
            }

            isInit = true;
        }
        internal void HandleXpChange(MindVision mindVision, IMemoryUpdate result)
        {
            var xpChanges = mindVision.GetXpChanges();

            if (xpChanges != null && xpChanges.Count > 0 && !AreEqual(lastXpChanges, xpChanges) && isInit)
            {
                result.HasUpdates = true;
                result.XpChanges  = xpChanges;
            }
            lastXpChanges = xpChanges;
            isInit        = true;
        }
        internal void HandleOpenedPack(MindVision mindVision, IMemoryUpdate result)
        {
            var openedPack = mindVision.GetOpenedPack();

            if (openedPack != null && !openedPack.Equals(lastOpenedPack) && isInit)
            {
                result.HasUpdates = true;
                result.OpenedPack = openedPack;
                lastOpenedPack    = openedPack;
            }
            isInit = true;
        }
Ejemplo n.º 4
0
        internal void HandleSceneMode(MindVision mindVision, IMemoryUpdate result)
        {
            var scene = mindVision.GetSceneMode();

            if (scene != null && scene != SceneModeEnum.INVALID && scene != 0 && scene != lastScene && isInit)
            {
                result.HasUpdates   = true;
                result.CurrentScene = scene;
            }
            lastScene = scene;
            isInit    = true;
        }
Ejemplo n.º 5
0
        internal void HandleDisplayingAchievementToast(MindVision mindVision, IMemoryUpdate result)
        {
            var displayToast = mindVision.IsDisplayingAchievementToast();

            if (displayToast && displayToast != lastToastStatus && isInit)
            {
                result.HasUpdates = true;
                result.DisplayingAchievementToast = displayToast;
            }
            lastToastStatus = displayToast;
            isInit          = true;
        }
Ejemplo n.º 6
0
        internal void HandleSelectedDeck(MindVision mindVision, IMemoryUpdate result)
        {
            var selectedDeckId = mindVision.GetSelectedDeckId();

            if (selectedDeckId != null && selectedDeckId != 0 && selectedDeckId != previousSelectedDeckId && isInit)
            {
                result.HasUpdates      = true;
                result.SelectedDeckId  = selectedDeckId;
                previousSelectedDeckId = selectedDeckId;
            }
            isInit = true;
        }