internal void SetCard(PlayableCard card, int index) { if (index >= cardDeck.Length) { throw new ArgumentOutOfRangeException(nameof(index)); } cardDeck[index] = card ?? throw new ArgumentNullException(nameof(card)); card.Player = this; CardDeckChanged?.Invoke(); }
internal void PutCardsOnDeck(UInt64[] cardGuids) { for (var i = 0; i < cardGuids.Length; i++) { if (cards.TryGetValue(cardGuids[i], out var card)) { cardDeck[i] = card; } else { cardDeck[i] = null; } } for (var i = cardGuids.Length; i < cardDeck.Length; i++) { cardDeck[i] = null; } CardDeckChanged?.Invoke(); }