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(); } }
public override void NewStartingHand() { //Вернуть карты из руки в колоду ReservCards.ForEach(x => { DeckCards.Add(x.Combat.CardData); x.DestroyUI(); }); ReservCards.Clear(); ShuffleCards(DeckCards); //Перетасовать AddCardsReserve(startPositionReservCard); ReservCards.StartingHandLocation(); }
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(); } }