예제 #1
0
    private async void LoadCardLimitDataFromFirebase(UserDB pUser)
    {
        CardDataLimit cardLimitData = await helperCardDataLimitFirebaseKimboko.GetCardDataLimitFromFirebase(pUser);

        CardPropertiesDatabase.SetCardDataLimits(cardLimitData);
        helperCardCollectionJsonKimboko.SetCardLimitToJson(cardLimitData);
    }
 public void SetActiveStatusPanel()
 {
     deckPanel.SetActive(false);
     cardInDeckPanel.SetActive(true);
     if (deckStatusVisualManager.isInitialized == false)
     {
         deckStatusVisualManager.CreateSlotUI(CardPropertiesDatabase.GetAmountPerCardPerLevelPerDeck());
         deckStatusVisualManager.SetMaxDeckAmount(CardPropertiesDatabase.maxAmountOfCardsPerDeck);
     }
     deckStatusVisualManager.SetActiveStatusPanel(true);
     backPanel.SetActive(false);
 }
예제 #3
0
    private void LoadCardLimitDataFromJson()
    {
        CardDataLimit cardDataLimit = helperCardCollectionJsonKimboko.GetCardLimitDataFromJson();

        CardPropertiesDatabase.SetCardDataLimits(cardDataLimit);
    }
    public void OnTryToAddCardToDeck(CardData cardData, CardSlotUI pCardSlotUI)
    {
        if (isEditing == false)
        {
            return;
        }

        if (auxDeck == null)
        {
            if (debugOn)
            {
                Debug.Log("NO AUX DECK");
            }
            return;
        }

        // REHABILITAR CUANDO SE ACTUALIZEN BIEN LOS DATOS DE LA BD ONLINE
        //if (cardData.IsAvailable == false)
        //{
        //    if (debugOn) Debug.Log("CARD NOT AVAILABLE YET");
        //    return;
        //}

        if (pCardSlotUI.cardSlot.userCollectionAmount <= 0)
        {
            if (debugOn)
            {
                Debug.Log("NO QUEDAN DE ESAS CARDS EN LA COLECCION");
            }
            return;
        }

        if (auxDeck.totalCards >= CardPropertiesDatabase.maxAmountOfCardsPerDeck)
        {
            if (debugOn)
            {
                Debug.Log("SE SUPERO EL LIMITE DE CARDS POR MAZO");
            }
            return;
        }

        if (auxDeck.GerCardAmountByRarity(cardData.CardRarity) >= CardPropertiesDatabase.GetAmountPerCardPerLevelPerDeck()[cardData.CardRarity])
        {
            if (debugOn)
            {
                Debug.Log("SE SUPERO EL LIMITE DE CARDS POR TIPO DE RAREZA");
            }
            return;
        }

        if (auxDeck.GetCardAmount(cardData) >= cardData.AmountPerDeck)
        {
            if (debugOn)
            {
                Debug.Log("SE SUPERO EL LIMITE DE CARDS POR TIPO ESE TIPO DE CARD");
            }
            return;
        }

        auxDeck.AddCard(cardData);
        pCardSlotUI.cardSlot.AddDeckAmount();
        RibbonData ribbonData = new RibbonData(cardData.CardName, pCardSlotUI.cardSlot.deckAmount, cardData, pCardSlotUI);

        ribbonManager.AddRibbon(ribbonData, this);
        if (debugOn)
        {
            Debug.Log("CARD ADDED " + cardData.CardName);
        }

        OnDeckChange?.Invoke(auxDeck);
        isDirty = true;
    }