private bool CanUseCard(GamePlayer gamePlayer, CardRecord cardRecord) { if (gamePlayer.HandCardIDs.Contains(cardRecord.CardRecordID) && gamePlayer.RemainedManaCrystal >= cardRecord.ManaCost) { return(true); } else { return(false); } }
public bool FindCard(int cardRecordID, out CardRecord card) { if (cardDictionary.ContainsKey(cardRecordID)) { card = cardDictionary[cardRecordID]; return(true); } else { card = null; return(false); } }
public void LoadCard(CardRecord card) { if (cardDictionary.ContainsKey(card.CardRecordID)) { cardDictionary[card.CardRecordID] = card; OnCardChanged?.Invoke(card, DataChangeCode.Update); } else { cardDictionary.Add(card.CardRecordID, card); OnCardChanged?.Invoke(card, DataChangeCode.Add); } }
private void UseCard(GamePlayer gamePlayer, CardRecord cardRecord) { gamePlayer.RemainedManaCrystal -= cardRecord.ManaCost; gamePlayer.RemoveHandCard(cardRecord.CardRecordID); OnUseCard?.Invoke(this, gamePlayer, cardRecord); }