Пример #1
0
        public void UpdateLotView(int lotId)
        {
            if (lotId == 0)
            {
                Lot = new Lot()
                {
                    Id             = 0,
                    Name           = "",
                    Quantity       = 0,
                    Price          = 0,
                    Sum            = 0,
                    DeliveryPlace  = "Согласно договору",
                    DeliveryTime   = "Согласно договору",
                    PaymentTerm    = "Согласно договору",
                    Step           = 0,
                    Warranty       = 0,
                    LocalContent   = 0,
                    Dks            = 0,
                    ContractNumber = ""
                };

                SelectedUnit = UnitsList[0];
            }
            else
            {
                Lot          = LotService.ReadLot(lotId);
                SelectedUnit = UnitsList.FirstOrDefault(u => u.Id == Lot.UnitId);
            }
        }
Пример #2
0
 private void GetUnitsForEachQuantity()
 {
     foreach (var qt in QuantityTypes)
     {
         UnitsList.Add(getUnitsForType(qt));
     }
 }
Пример #3
0
        private void SortUnits()
        {
            var sortedList = UnitsList
                             .OrderByDescending(x => x.IsAlive)
                             .ThenByDescending(x => !x.IsEnded)
                             .ThenByDescending(x => x.CurrentInitiative)
                             .ThenByDescending(x => x.Team == BattleUnitTeamType.Ally)
                             .ToList();

            UnitsList = sortedList;
        }
Пример #4
0
        private bool IsBattleEnd()
        {
            var allyDead = UnitsList
                           .Where(x => x.Team == BattleUnitTeamType.Ally)
                           .All(x => !x.IsAlive);

            var enemyDead = UnitsList
                            .Where(x => x.Team == BattleUnitTeamType.Enemy)
                            .All(x => !x.IsAlive);

            return(allyDead || enemyDead);
        }
Пример #5
0
        public void TurnEnd()
        {
            OnTurnEnd?.Invoke();

            if (IsBattleEnd())
            {
                return;
            }

            if (IsPhaseEnd())
            {
                UnitsList.ForEach(x => x.IsEnded = false);
            }

            TurnStart();
        }
Пример #6
0
    private void Awake()
    {
        cellSelection = CellSelection.GetInstance();
        unitsList     = UnitsList.GetInstance();
        unitSelection = UnitSelection.GetInstance();

        for (int i = 0; i < toggles.GetComponentsInChildren <Toggle>().Length; i++)
        {
            foreach (Image image in toggles.GetComponentsInChildren <Toggle>()[i].GetComponentsInChildren <Image>())
            {
                if (image.gameObject.name == "Image")
                {
                    images[i] = image;
                }
            }
        }
    }
Пример #7
0
        private void DoCapturings()
        {
            Debug.Log("Capturings: " + capturings.Count.ToString());
            Debug.Log("Friendly units: " + UnitsList.GetInstance().GetAllFriends().Length);
            if (capturings.Count == 0)
            {
                return;
            }
            if (UnitsList.GetInstance().GetAllFriends().Length == 0)
            {
                return;
            }
            foreach (Vector3 portalPos in capturings)
            {
                foreach (Unit unit in UnitsList.GetInstance().GetAllFriends())
                {
                    if (unit.transform.position == portalPos)
                    {
                        Cell newPortal;
                        Cell oldPortal = GetCell(portalPos);

                        if (PlayerControler.GetInstance().FirstPlayerTurn())
                        {
                            Debug.Log("!!!");
                            //newPortal = Instantiate(leftPortalPrefab, gameObject.transform);
                            newPortal = Instantiate(leftPortalPrefab, oldPortal.transform.position, GetCell(portalPos).transform.rotation, gameObject.transform);
                        }
                        else
                        {
                            //newPortal = Instantiate(rightPortalPrefab, gameObject.transform);
                            newPortal = Instantiate(rightPortalPrefab, oldPortal.transform.position, GetCell(portalPos).transform.rotation, gameObject.transform);
                        }
                        cells[cells.IndexOf(oldPortal)] = newPortal;
                        Destroy(oldPortal.gameObject);
                    }
                }
            }
            capturings.RemoveAll(pos => (int)PlayerControler.GetInstance().GetCurrentPlayer() == (int)GetCell(pos).type - 1);

            if (GameControler.WinCheck())
            {
                Debug.Log("Win!!!");
                GameEvents.GetInstance().ShowWinScreen();
            }
        }
Пример #8
0
        private async void LoadUnitsList()
        {
            if (!IsBusy)
            {
                IsBusy = true;

                UnitsList.Clear();

                var unitsList = await DataRepository.Instance.GetUnitsAsync();

                foreach (var unit in unitsList)
                {
                    UnitsList.Add(new UnitModel(unit));
                }

                Title = Resource.Units;

                IsBusy = false;
            }
        }
Пример #9
0
 private bool IsPhaseEnd()
 {
     return(UnitsList
            .Where(x => x.IsAlive)
            .All(x => x.IsEnded));
 }
Пример #10
0
 private void FunctionCancel()
 {
     UnitsList.Clear();
     SelectedUnitsList.Clear();
     ExcludingUnitsList.Clear();
 }