public void AddCard(CardVariable c) { deck.Add(c); index++; UpdateText(); }
private void Populate() { for (int i = 0; i < 8; i++) { CardVariable c = new CardVariable(CardCache.Instance.GetCard("Attack")); AddCard(c); } }
//Used by CardVariable to create CardObj in Game public void CreateCardObject(CardVariable cardVar) { GameObject newCard = GameObject.Instantiate(PrefabCache.Instance.cardPrefab, HandManager.Instance.transform); CardObject cardObj = newCard.GetComponent <CardObject>(); cardObj.SetCardVar(cardVar); cardVar.cardObject = cardObj; }
public CardVariable PopRandom() { int index = Random.Range(0, discard.Count); CardVariable cv = discard[index]; discard.RemoveAt(index); return(cv); }
public void SetCardVar(CardVariable cv) { if (cv == null) { return; } cardVar = cv; disp.SetCard(cv.card); }
//draws one card public void Draw() { CardVariable cardVar = DeckManager.Instance.Pop(); //Out of cards if (cardVar == null) { return; } cardVar.CreateObject(); hand.Add(cardVar); UpdateCardLayout(); }
public CardVariable Pop() { if (isEmpty()) { RefillFromDiscard(); } CardVariable c = deck[index - 1]; deck.RemoveAt(index - 1); index--; UpdateText(); return(c); }
public void ResolveBattle(CardVariable currentCard, CardInstance targetCard) { var currentCardAttack = currentCard.value.currentAttack; var currentCardHp = currentCard.value.currentHp; var targetCardAttack = targetCard.currentAttack; var targetCardHp = targetCard.currentHp; // damage self currentCardHp -= targetCardAttack; // damage target targetCardHp -= currentCardAttack; //update UI currentCard.value.cardViz.UpdateHealthUI(currentCardHp); targetCard.cardViz.UpdateHealthUI(targetCardHp); // resolve if (currentCardHp < 1) { currentCard.value.DestroySelf(); } else { currentCard.value.currentHp = currentCardHp; } if (targetCardHp < 1) { targetCard.DestroySelf(); } else { targetCard.currentHp = targetCardHp; } }
public void AddCard(CardVariable c) { discard.Add(c); }
public void RemoveCard(CardVariable cardVar) { hand.Remove(cardVar); }