Esempio n. 1
0
    private void HideAllCards()
    {
        foreach (CardSelectWindowCardContainer ccc in AllCardContainers.Values)
        {
            ccc.gameObject.SetActive(false);
        }

        AllShownCards.Clear();
    }
Esempio n. 2
0
    public void ShowHiddenCard(int cardID)
    {
        CardBase cb = AllCards[cardID];

        if (!AllShownCards.ContainsKey(cardID))
        {
            AllShownCards.Add(cardID, cb);
            AllCardContainers[cardID].gameObject.SetActive(true);
        }
    }
Esempio n. 3
0
    public void UpdateCardUpgradeDegrade(bool isUpgrade, CardBase previewCard)
    {
        if (CurrentEditBuildButton == null)
        {
            NoticeManager.Instance.ShowInfoPanelCenter(LanguageManager.Instance.GetText("Notice_SelectBuildManagerPreviewUpgrade_PleaseCreateDeck"), 0f, 1f);
            return;
        }

        int           currentCardID  = previewCard.CardInfo.CardID;
        int           changeCardID   = isUpgrade ? previewCard.CardInfo.UpgradeInfo.UpgradeCardID : previewCard.CardInfo.UpgradeInfo.DegradeCardID;
        CardInfo_Base changeCardInfo = global::AllCards.GetCard(changeCardID);

        if (previewCard.CardInfo.BaseInfo.LimitNum == 0)
        {
            return;
        }

        if (CurrentEditBuildButton.BuildInfo.M_BuildCards.GetCardLimitDict()[currentCardID] > 0)
        {
            if ((CurrentGamePlaySettings.DefaultMaxCoin - CurrentEditBuildButton.BuildInfo.BuildConsumeCoin) + (previewCard.CardInfo.BaseInfo.Coin - changeCardInfo.BaseInfo.Coin) < 0)
            {
                NoticeManager.Instance.ShowInfoPanelCenter(LanguageManager.Instance.GetText("Notice_SelectBuildManagerPreviewUpgrade_NotEnoughBudget"), 0f, 1f);
                return;
            }
        }

        CardBase changeCard = AllCards[changeCardID];

        if (changeCard.CardInfo.BaseInfo.LimitNum == 0)
        {
            AllCardContainers[changeCardID].gameObject.SetActive(true);
            AllShownCards.Add(changeCardID, changeCard);
        }

        previewCard.ChangeCardSelectLimit(previewCard.CardInfo.BaseInfo.LimitNum - 1);
        changeCard.ChangeCardSelectLimit(changeCard.CardInfo.BaseInfo.LimitNum + 1);
        CurrentEditBuildButton.BuildInfo.M_BuildCards.CardSelectInfos[previewCard.CardInfo.CardID].CardSelectUpperLimit--;
        CurrentEditBuildButton.BuildInfo.M_BuildCards.CardSelectInfos[changeCardID].CardSelectUpperLimit++;

        if (GetSelectedCardCount(previewCard.CardInfo.CardID) > 0)
        {
            UnSelectCard(previewCard, SelectCardMethods.UpgradeDegrade);
            SelectCard(changeCard, SelectCardMethods.UpgradeDegrade);
            RefreshCoinLifeEnergy();
        }

        AudioManager.Instance.SoundPlay("sfx/OnMoneyChange");
        AudioManager.Instance.SoundPlay("sfx/ShowCardDetail");
        HideNoLimitCards();
    }
Esempio n. 4
0
    /// <summary>
    /// 隐藏一些没有数量限额的卡牌
    /// </summary>
    private void HideNoLimitCards()
    {
        List <int> removeCards = new List <int>();

        foreach (KeyValuePair <int, CardBase> kv in AllShownCards)
        {
            if (kv.Value.CardInfo.BaseInfo.LimitNum == 0)
            {
                removeCards.Add(kv.Key);
            }
        }

        foreach (int cardID in removeCards)
        {
            AllCardContainers[cardID].gameObject.SetActive(false);
            AllShownCards.Remove(cardID);
        }
    }
Esempio n. 5
0
    private void HideHigherLevelNumCardsForStoryMode()
    {
        if (SelectBuildManager.Instance.CurrentGameMode == SelectBuildManager.GameMode.Single)
        {
            List <int> removeCards = new List <int>();
            foreach (KeyValuePair <int, CardBase> kv in AllShownCards)
            {
                //if (kv.Value.CardInfo.BaseInfo.CardRareLevel > StoryManager.Instance.Conquered_LevelNum + 1)
                //{
                //    removeCards.Add(kv.Key);
                //}
            }

            foreach (int cardID in removeCards)
            {
                AllCardContainers[cardID].gameObject.SetActive(false);
                AllShownCards.Remove(cardID);
            }
        }
    }
Esempio n. 6
0
    public void ShowNewCardNotice()
    {
        foreach (KeyValuePair <int, CardBase> kv in AllCards)
        {
            kv.Value.SetBannerType(CardNoticeComponent.BannerTypes.None);
            kv.Value.SetArrowType(CardNoticeComponent.ArrowTypes.None);
        }

        foreach (int cardID in StoryManager.Instance.JustGetNewCards)
        {
            if (AllShownCards.ContainsKey(cardID))
            {
                AllCards[cardID].SetBannerType(CardNoticeComponent.BannerTypes.None);
                AllCards[cardID].SetArrowType(CardNoticeComponent.ArrowTypes.StorageIncrease);
            }
            else
            {
                AllCards[cardID].SetBannerType(CardNoticeComponent.BannerTypes.NewCard);
                AllCards[cardID].SetArrowType(CardNoticeComponent.ArrowTypes.None);
            }
        }
    }
Esempio n. 7
0
    public void SetCardLimit(SortedDictionary <int, int> cardLimits)
    {
        foreach (KeyValuePair <int, int> kv in cardLimits)
        {
            int CardID         = kv.Key;
            int CardLimitCount = kv.Value;

            if (AllCards.ContainsKey(CardID))
            {
                CardBase cb = AllCards[CardID];
                cb.ChangeCardSelectLimit(CardLimitCount);

                if (!AllShownCards.ContainsKey(CardID))
                {
                    if (CardLimitCount > 0)
                    {
                        AllShownCards.Add(CardID, cb);
                        AllCardContainers[CardID].gameObject.SetActive(true);
                    }
                    else
                    {
                        AllCardContainers[CardID].gameObject.SetActive(false);
                    }
                }
                else
                {
                    if (CardLimitCount == 0)
                    {
                        AllCardContainers[CardID].gameObject.SetActive(false);
                        AllShownCards.Remove(CardID);
                    }
                }
            }
        }

        HideHigherLevelNumCardsForStoryMode();
    }