示例#1
0
    public override void BringCardsToBattlefield(float animationTime, Action actEndRelocation)
    {
        var cardAttackList = new List <IAttackCard>();

        for (int i = 0; i < Cell.Count; i++)
        {
            if (Cell[i].IsExist == false)
            {
                var card = ReservCards[0];
                PlaceAttackCell(card, Cell[i], false);
                cardAttackList.Add(AttackCards.Last());
            }
        }

        Action actFinish = () =>
        {
            cardAttackList.ForEach(x => { x.View.SetScale(new Vector3(1, 1, 1)).SetSortingOrder(0); });
            AddCardsReserve(startPositionReservCard);
            ReservCards.ReservLocation(actEndRelocation);
        };

        if (cardAttackList.Count > 0)
        {
            cardAttackList.Relocation(actFinish, 0.3f);
        }
        else
        {
            actFinish?.Invoke();
        }
    }
示例#2
0
    public override void NewStartingHand()
    {
        //Вернуть карты из руки в колоду
        ReservCards.ForEach(x => { DeckCards.Add(x.Combat.CardData); x.DestroyUI(); });
        ReservCards.Clear();

        ShuffleCards(DeckCards); //Перетасовать
        AddCardsReserve(startPositionReservCard);

        ReservCards.StartingHandLocation();
    }
示例#3
0
    public override void BringCardsToBattlefield(float animationTime, Action actEndRelocation)
    {
        var data = JsonConvert.DeserializeObject <PersonDATAREPORT>(Report);

        var cardAttackList = new List <IAttackCard>();

        for (int i = 0; i < Cell.Count; i++)
        {
            if (Cell[i].IsExist == false)
            {
                var card = ReservCards.Where(x => x.Combat.Name == data.cardsAttack[i]).FirstOrDefault();
                PlaceAttackCell(card, Cell[i]);
                cardAttackList.Add(card);
            }
        }

        if (cardAttackList.Count > 0)
        {
            Action actFinish = () =>
            {
                cardAttackList.ForEach(x => { x.View.SetScale(new Vector3(1, 1, 1)).SetSortingOrder(0); });

                for (int i = 0; i < data.cardReserv.Count; i++)
                {
                    if (i >= ReservCards.Count)
                    {
                        CreatCard(collection.GetCard(data.cardReserv[i]), startPositionReserv);
                    }
                }

                actEndRelocation?.Invoke();
            };

            cardAttackList.Relocation(actFinish, 0.5f);
        }
        else
        {
            actEndRelocation?.Invoke();
        }
    }