Exemple #1
0
    //清理场上已经死亡的卡牌
    //参数为卡牌唯一id
    public void destroyCard(int id)
    {
        int number = FightingCardsDic[id].getNumber();

        EnemyFightData.getInstance().subHp(number);
        FightingCardsDic.Remove(id);
    }
Exemple #2
0
    //拿取首发卡牌
    public Dictionary <int, CardData> getFristCards()
    {
        Dictionary <int, CardData> dic = new Dictionary <int, CardData>();

        for (int num = 1; num <= Const.FRIST_CARD_NUM; ++num)
        {
            int      pos   = num;
            CardData cards = EnemyFightData.getInstance().takeCard(pos);
            dic.Add(pos, cards);
        }
        return(dic);
    }
Exemple #3
0
    public void createCardObject(int pos)
    {
        CardData  cardData = EnemyFightController.getInstance().substitute(pos);
        CardEnemy card     = CardEnemy.create(cardData);

        card.setParent(parentGame);
        card.setPosition(new Vector3(Screen.width, 0, 0));
        card.setScale(doSize * enemyCardScale);
        card.moveTo(viewPosList[pos], () => {
            _enemyCardNumsObj.text = (EnemyFightData.getInstance().cardsNumber() + EnemyFightData.getInstance().usingCardsNumber()).ToString();
        });
        viewCardDic.Add(pos, card);
    }
Exemple #4
0
    void Start()
    {
        clearnDictionary();
        _enemyCardNumsObj = enemyCardNumsObj;
        _hpObj            = hpObj;
        EnemyFightController.getInstance().initEnemyFightData();

        _enemyCardNumsObj.text = EnemyFightData.getInstance().cardsNumber().ToString();
        _hpObj.text            = EnemyFightData.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 = EnemyFightController.getInstance().getFristCards();

        for (int i = 1; i <= cardDataDic.Count; i++)
        {
            CardEnemy card = CardEnemy.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 * enemyCardScale);

            int key = cardDataDic[i].Pos;

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

            viewCardDic.Add(key, card);

            card.setPosition(viewPosList[i]);
        }
    }
Exemple #5
0
 //敌方遭受攻击结束
 static public void Atkend()
 {
     _hpObj.text = EnemyFightData.getInstance().getHp().ToString();
 }
Exemple #6
0
 //view报告销毁数据
 public void destroy(int id)
 {
     EnemyFightData.getInstance().destroyCard(id);
 }
Exemple #7
0
 //从仓库随机一个替补数据
 public CardData substitute(int pos)
 {
     return(EnemyFightData.getInstance().takeCard(pos));
 }
Exemple #8
0
 //初始化我的仓库
 public void initEnemyFightData()
 {
     EnemyFightData.getInstance().createCards();
 }