Beispiel #1
0
 public int GetQuantity(int cardId)
 {
     if (BannedIds.Contains(cardId))
     {
         return(0);
     }
     if (LimitedIds.Contains(cardId))
     {
         return(1);
     }
     if (SemiLimitedIds.Contains(cardId))
     {
         return(2);
     }
     return(3);
 }
Beispiel #2
0
        public int GetQuantity(int cardId)
        {
            int al = 0;

            try
            {
                al = YGOSharp.CardsManager.Get(cardId).Alias;
            }
            catch (Exception)
            {
            }
            if (al == 0)
            {
                if (BannedIds.Contains(cardId))
                {
                    return(0);
                }
                if (LimitedIds.Contains(cardId))
                {
                    return(1);
                }
                if (SemiLimitedIds.Contains(cardId))
                {
                    return(2);
                }
                return(4);
            }
            else
            {
                if (BannedIds.Contains(al))
                {
                    return(0);
                }
                if (LimitedIds.Contains(al))
                {
                    return(1);
                }
                if (SemiLimitedIds.Contains(al))
                {
                    return(2);
                }
                return(4);
            }
        }
Beispiel #3
0
        public void Add(int cardId, int quantity)
        {
            if (quantity < 0 || quantity > 2)
            {
                return;
            }
            switch (quantity)
            {
            case 0:
                BannedIds.Add(cardId);
                break;

            case 1:
                LimitedIds.Add(cardId);
                break;

            case 2:
                SemiLimitedIds.Add(cardId);
                break;
            }
            uint code = (uint)cardId;

            Hash = Hash ^ ((code << 18) | (code >> 14)) ^ ((code << (27 + quantity)) | (code >> (5 - quantity)));
        }