void ChooseNewSettlement()
    {
        int count = settlementsMeta.Count;

        //Clear Before start.
        CapableSettlementsMetaList.Clear();
        settlementWeightCalculator.Clear();

        //Choose settlement code.
        for (int i = 0; i < count; i++)
        {
            //Check if distance condition for settlement is met.
            if (settlementsMeta[i].prefab.GetComponent <Settlement>().checkAvailability(this))
            {
                settlementWeightCalculator.Add(settlementsMeta[i].frequencyWeight);
                CapableSettlementsMetaList.Add(settlementsMeta[i]);
            }
        }

        //chooses first building if list is empty.
        int index = settlementWeightCalculator.Pick();

//        //Clear for next use.
//        CapableSettlementsList.Clear();
//        settlementWeightCalculator.Clear();

        chosenSettlementMeta = CapableSettlementsMetaList[index];
    }
        public void addItem(JewelryItemsViewModel item)
        {
            Jewelries.Add(item);
            if (Categories.Where(x => x.Id == item.JewelryCategories.Id).Count() == 0)
            {
                Categories.Add(item.JewelryCategories);
                Weight.Add(item.JewelryCategories.Name, 0);
                Price.Add(item.JewelryCategories.Name, 0);
                Quantity.Add(item.JewelryCategories.Name, 0);
            }
            Weight[item.JewelryCategories.Name]   += item.Weight.Value * item.Quantity;
            Price[item.JewelryCategories.Name]    += item.Price.Value * item.Quantity;
            Quantity[item.JewelryCategories.Name] += item.Quantity;

            Weight["Total"]   += item.Weight.Value * item.Quantity;
            Price["Total"]    += item.Price.Value * item.Quantity;
            Quantity["Total"] += item.Quantity;
        }
Exemple #3
0
    void ChooseNewBuilding()
    {
        int count = buildings.Count;

        //choose building.
        for (int i = 0; i < count; i++)
        {
            //Check if distance condition for building is met.
//            if ( distance >= buildings.GetComponent<Building>().reachDistance ) //bypass this check for now.
            buildingWeightCalculator.Add(buildings[i].GetComponent <Building>().frequencyWeight);
        }

        int index = buildingWeightCalculator.Pick();

        //Clear calculator for next use.
        buildingWeightCalculator.Clear();

        toCreateBuilding = buildings[index];
    }