Example #1
0
    /// <summary>
    /// 表现的卡牌位置排序
    /// </summary>
    public void sortCardGameObject()
    {
        this.listFightCard.Sort(sortNumber);
        for (int i = 0; i < this.listFightCard.Count; ++i)
        {
            listFightCard[i].pos = i;
            FightCard  fightCard  = this.listFightCard[i];
            int        cardId     = fightCard.GetCardDetail().id;
            GameObject obj        = this.dicCardObj[cardId];
            FightCard  vFightCard = obj.GetComponent <FightCard>();
            vFightCard.pos = i;

            //卡牌动画
            FightCardAnim cardAnim = obj.GetComponent <FightCardAnim>();
            cardAnim.PlayTo(this.fightCardTransfrom.GetPos(i));
        }
    }
Example #2
0
    /// <summary>
    /// 卡牌点击事件响应
    /// </summary>
    /// <param name="obj"></param>
    /// <param name="vFightCardState"></param>
    void EveCard(GameObject vObj)
    {
        FightCard     vFightCard = vObj.GetComponent <FightCard>();
        FightCardAnim vAnim      = vObj.GetComponent <FightCardAnim>();

        if (vFightCard.postionState == FightCard.PostionState.Unchecked)
        {
            vAnim.PlayToWait();
            vFightCard.postionState = FightCard.PostionState.choice;
            return;
        }
        else
        {
            vAnim.PlayToInitPos();
            vFightCard.postionState = FightCard.PostionState.Unchecked;
            return;
        }
    }
Example #3
0
    /// <summary>
    /// 创建战斗卡牌
    /// </summary>
    /// <param name="vCardId"></param>
    override public void CreateCard(int vPos, float vPlayingTime)
    {
        if (this.listSpcaePos.ContainsKey(vPos))
        {
            //从牌库中获取卡牌id
            int cardId = this.fightData.RandCard();

            //卡牌对象
            GameObject CardObj = GameObject.Instantiate(CardPrefabs) as GameObject;
            CardObj.transform.name = "mineCard";
            //设置卡牌对象上的数据
            FightCard fightCard = CardObj.GetComponent <FightCard>();
            fightCard.pos = vPos;
            CardDetail cardDetail = ConfigDatas.Inst.card.GetCardDetail(cardId);
            fightCard.SetCardDetail(cardDetail);

            this.listFightCard.Add(fightCard);

            //设置卡牌UI数据
            CardPrefabsCtr cardPrefabsCtr = CardObj.GetComponent <CardPrefabsCtr>();
            cardPrefabsCtr.SetCard(cardDetail);

            //设置卡牌位置
            fightCardTransfrom.SetTransform(CardObj.transform, vPos);

            //设置攻击位置
            FightAtkAnim atkAnim = CardObj.GetComponent <FightAtkAnim>();
            atkAnim.SetTragetPos(targetTransform.position);

            //卡牌动画
            FightCardAnim cardAnim = CardObj.GetComponent <FightCardAnim>();
            StartCoroutine(cardAnim.Licensing(vPlayingTime));

            Button btn = CardObj.transform.GetComponent <Button>();
            btn.onClick.AddListener(delegate()
            {
                EveCard(CardObj);
            });
            dicCardObj.Add(cardId, CardObj);
        }
    }