Exemple #1
0
    public void createCardObject(int pos)
    {
        if (MineFightData.getInstance().cardsNumber() > 0)
        {
            CardData cardData = MineFightController.getInstance().substitute(pos);
            Card     card     = Card.create(cardData);
            card.setParent(parentGame);
            card.setPosition(new Vector3(Screen.width, 0, 0));
            card.setScale(doSize);
            card.moveTo(viewPosList[pos]);
            viewCardDic.Add(pos, card);

            EventListener eve = EventListener.Get(card.getObj());
            eve.onDown = BtnCallBack;
            eve.DOKill();
            initOutCardRule();
        }
    }
Exemple #2
0
    public void DestroyCardsObject(Card card)
    {
        int pos = card.cardData.Pos;
        int id  = viewCardDic[pos].getCardData().getId();

        //清理数据
        MineFightController.getInstance().destroy(id);

        card.DestoryCard();

        //移除表现对象
        viewCardDic.Remove(pos);

        createCardObject(pos);

        _mineCardNumsObj.text = (MineFightData.getInstance().cardsNumber() + MineFightData.getInstance().usingCardsNumber()).ToString();

        shake();
    }
Exemple #3
0
    // Use this for initialization
    void Start()
    {
        clearnDictionary();
        MineFightController.getInstance().initMineFightData();
        _mineCardNumsObj      = mineCardNumsObj;
        _mineCardNumsObj.text = MineFightData.getInstance().cardsNumber().ToString();

        _hpObj      = hpObj;
        _hpObj.text = MineFightData.getInstance().getHp().ToString();

        parentGame = this.gameObject;
        //初始化摆位

        //卡牌父节点尺寸
        Vector2 vec2 = this.gameObject.transform.GetComponent <RectTransform>().sizeDelta;

        //卡牌节点尺寸
        float itemWidth  = 0.0f;
        float itemHeight = 0.0f;
        //卡牌间的距离间距
        float space = 20.0f;

        //卡牌加间隙占的总宽度
        float allCardWidth = 0.0f;

        //第一张卡牌的坐标位置
        float fristX = 0.0f;


        doSize = 1.0f;

        float middPanelHeight = FightUIData.getInstance().getMiddHeight();

        //初始化首发卡牌对象
        Dictionary <int, CardData> cardDataDic = MineFightController.getInstance().getFristCards();

        for (int i = 1; i <= cardDataDic.Count; i++)
        {
            Card card = Card.create(cardDataDic[i]);
            card.setParent(this.gameObject);

            if (1 == i)
            {
                itemWidth  = card.getSize().x;
                itemHeight = card.getSize().y;
                if (AdaptationResolutionMG.getInstance().getDeviceSizeType() == DEVICE_SIZE_TYPE.Leng)
                {
                    doSize = AdaptationResolutionMG.getInstance().getRawWidth() / (float)Screen.width;
                }
                else if (AdaptationResolutionMG.getInstance().getDeviceSizeType() == DEVICE_SIZE_TYPE.Compare)
                {
                    doSize = AdaptationResolutionMG.getInstance().getDoSizeWidth();
                }
                else
                {
                    doSize = Screen.width / (float)(itemWidth * Const.FRIST_CARD_NUM + space * (Const.FRIST_CARD_NUM - 1));
                }

                allCardWidth = (itemWidth * Const.FRIST_CARD_NUM) + (Const.FRIST_CARD_NUM - 1) * space;
                allCardWidth = allCardWidth * doSize;
                //表示已经超出屏幕 在现有的基础上再一次缩放
                if (Screen.width < allCardWidth)
                {
                    doSize = doSize * Screen.width / allCardWidth;
                }
                itemWidth  = itemWidth * doSize;
                itemHeight = itemHeight * doSize;
                space      = space * doSize;

                allCardWidth = (itemWidth * Const.FRIST_CARD_NUM) + (Const.FRIST_CARD_NUM - 1) * space;

                fristX = (Screen.width - allCardWidth) * 0.5f - Screen.width * 0.5f + itemWidth * 0.5f;
            }

            card.setScale(doSize);

            int key = cardDataDic[i].Pos;

            viewPosList.Add(key, new Vector2(fristX + (i - 1) * (itemWidth + space), -middPanelHeight * 0.5f + itemHeight * 0.5f));

            viewCardDic.Add(key, card);

            card.setPosition(viewPosList[i]);

            EventListener.Get(card.getObj()).onDown = BtnCallBack;
        }
        outCardPosY = outCardPosY * doSize;

        initOutCardRule();
    }