Beispiel #1
0
    /// <summary>
    /// 加入卡片
    /// </summary>
    /// <param name="id"></param>
    public void AddCard(string id, bool isMy)
    {
        Card_Hand prefeb = GameObject.Instantiate(cardPrefeb).GetComponent <Card_Hand>();

        prefeb.transform.SetParent(this.transform);
        float val = cardList.Count > 7 ? cardSizeX / 2 * 8 : cardSizeX / 2 * (cardList.Count + 1);

        if (!isMy)
        {
            val = -val;
        }
        prefeb.rectTransform.anchoredPosition3D = new Vector3(val, 0, 0);
        prefeb.rectTransform.sizeDelta          = new Vector2(cardSizeX, cardSizeY);
        prefeb.rectTransform.localScale         = Vector3.one;
        prefeb.Init(this, isMy);

        if (Duel.GetInstance().IsNetWork)
        {
            if (isMy)
            {
                prefeb.SetTexture(id, true);
            }
            else
            {
                prefeb.SetOverTexture(id);
            }
        }
        else
        {
            prefeb.SetTexture(id, true);
            //prefeb.SetOverTexture(id);
        }
        cardList.Add(prefeb);
        SortCard();
    }
Beispiel #2
0
    /// <summary>
    /// 通过卡片的区域值来移除卡片
    /// </summary>
    /// <param name="val"></param>
    public void RemoveCard(int val)
    {
        Card_Hand card = cardList[val];

        cardList.RemoveAt(val);
        Destroy(card.gameObject);
        SortCard();
    }
Beispiel #3
0
 int GetCardRank(Card_Hand card)
 {
     for (int i = 0; i < cardList.Count; i++)
     {
         if (cardList[i] == card)
         {
             return(i);
         }
     }
     Debug.Log("error");
     return(-1);
 }
Beispiel #4
0
 /// <summary>
 /// 结束卡片选择状态
 /// </summary>
 public void EndSelectCard()
 {
     isInSelect = false;
     foreach (var item in cardList)
     {
         if (item != null)
         {
             Card_Hand card = item.GetComponent <Card_Hand>();
             card.EndSelectState();
         }
     }
 }
Beispiel #5
0
    /// <summary>
    /// 进入选择卡片状态
    /// </summary>
    /// <param name="cardType"></param>
    /// <param name="num"></param>
    /// <param name="dele"></param>
    public void SelectFieldCard(List <int> list, bool isMySelect)
    {
        if (list.Count == 0)
        {
            return;
        }
        isInSelect = true;

        for (int i = 0; i < list.Count; i++)
        {
            Card_Hand cardHand = cardList[list[i]];
            if (cardHand == null)
            {
                Debug.Log("error");
                return;
            }
            cardHand.EnterSelectState(isMySelect);
        }
    }
Beispiel #6
0
 public bool DisSelectCard(Card_Hand card)
 {
     return(selectCardMgr.DisSelectCard(ComVal.Area_Hand, GetCardRank(card), isMy));
 }