private void CardDeckShuffle(CardSetType setType) { if (mCardDeck == null) { int cardMaxCount = Mathf.Max(cardsOrgan.Length, cardsSystem.Length); mCardDeck = new M8.CacheList <CardData>(cardMaxCount); } else { mCardDeck.Clear(); } switch (setType) { case CardSetType.Organs: for (int i = 0; i < cardsOrgan.Length; i++) { mCardDeck.Add(cardsOrgan[i]); } break; case CardSetType.Systems: for (int i = 0; i < cardsSystem.Length; i++) { mCardDeck.Add(cardsSystem[i]); } break; } mCardDeck.Shuffle(); }
void Awake() { mCardActives = new M8.CacheList <CardWidget>(templateCapacity); mCardCache = new M8.CacheList <CardWidget>(templateCapacity); for (int i = 0; i < templateCapacity; i++) { var newGO = Instantiate(template, layoutRoot); var newCard = newGO.GetComponent <CardWidget>(); newCard.dragBeginCallback += OnCardDragBegin; newCard.dragCallback += OnCardDrag; newCard.dragEndCallback += OnCardDragEnd; newGO.SetActive(false); mCardCache.Add(newCard); } }