public virtual void SetupAbilityDeck(List <AbilityCardData> abilityDeckConfig)
    {
        foreach (AbilityCardData abilityData in abilityDeckConfig)
        {
            AbilityCard newAbilityCard = new AbilityCard(abilityData);
            AbilityDeck.Add(newAbilityCard);
        }

        AbilityDeck.Shuffle();
        RaiseMain(AbilityDeck);
    }
Exemple #2
0
    // Shuffle Discards back into deck
    IEnumerator ReshuffleDiscards()
    {
        reshuffling = true;
        yield return(StartCoroutine(MoveDeckPanel(DiscardPanel, DeckKey)));

        deck.Add(discards);
        deck.Shuffle();
        DeckPanel.Display(deck.Count);
        discards = new AbilityDeck(new List <Card>());
        DiscardPanel.Display(discards.Count);
        yield return(StartCoroutine(MoveDeckPanel(DiscardPanel, DiscardKey)));

        reshuffling = false;
    }
Exemple #3
0
    // Animation: moves card panel at index i to discards, adds the panel's card to discards, and fills the panel with an empty card before moving it back
    IEnumerator DiscardEntry(int i)
    {
        if (i >= 0 && i < handSize && hand[i] != null && hand[i].GetName() != "")
        {
            yield return(StartCoroutine(MoveAbilityPanel(cardPanels[i], DiscardKey)));

            discards.Add(hand[i]);
            hand[i] = EmptyCard();
            curHandSize--;
            RefreshEntry(i);
            DiscardPanel.Display(discards.Count);
            yield return(StartCoroutine(MoveAbilityPanel(cardPanels[i], GetCardKey(i))));
        }
        SetDrawCooldown();
    }
 public virtual void ReshuffleDiscard()
 {
     // add event for reshuffling discard feedback?
     if (AbilityDiscard.Count > 0)
     {
         int _discardCount = AbilityDiscard.Count;
         for (int i = 0; i < _discardCount; i++)
         {
             // TODO might do something more here with the Add(List<T> function)
             AbilityDeck.Add(AbilityDiscard.Draw());
         }
         RaiseMain(AbilityDeck);
         RaiseDiscard(AbilityDiscard);
     }
     // shuffle ability deck only if it contains more than 1 item
     if (AbilityDeck.Count > 1)
     {
         AbilityDeck.Shuffle();
     }
 }