public static EnemyFightController getInstance() { if (instance == null) { instance = new EnemyFightController(); } return(instance); }
public static EnemyFightController getInstance() { if (instance == null) { instance = new EnemyFightController(); } return instance; }
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); }
public void DestroyCardsObject(CardEnemy card) { int pos = card.cardData.Pos; int id = viewCardDic[pos].getCardData().getId(); //清理数据 EnemyFightController.getInstance().destroy(id); card.DestoryCard(); //清理对象 viewCardDic.Remove(pos); createCardObject(pos); }
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]); } }