Пример #1
0
 /// <summary>
 /// Метод открытия магазина по типу
 /// </summary>
 /// <param name="typeMarketOpen">Тип открытия магазина</param>
 public void OpenMarket(EnumTypeMarketOpen typeMarketOpen)
 {
     if (currentMarket == null)
     {
         Debug.LogError("Магазин не установлен! Enum name: " + typeMarketOpen.ToString());
         return;
     }
     CleanContentZone();
     currentMarket.InstanceItemsInContentZone(contentZone.transform, this, typeMarketOpen);
 }
Пример #2
0
    /// <summary>
    /// Предоставляет товар исходя из типа открытия магазина
    /// </summary>
    /// <param name="typeMarketOpen">Тип открытия магазина</param>
    /// <returns>Товары</returns>
    private List <GameItem> GetItemsForOpen(EnumTypeMarketOpen typeMarketOpen)
    {
        var allGameItems = dataBaseManager.GameItemWorker.allGameItems;

        switch (typeMarketOpen)
        {
        case EnumTypeMarketOpen.DefaultOpen:
            allGameItems = allGameItems.OrderBy(x => x.Name).ToList();
            break;

        case EnumTypeMarketOpen.OrderByPrice:
            allGameItems = allGameItems.OrderBy(x => x.Id).ToList();
            break;

        default:
            //allGameItems.OrderBy(x => x.Name).ToList();
            allGameItems = allGameItems.OrderByDescending(x => x.Id).ToList();
            break;
        }
        return(allGameItems);
    }
Пример #3
0
    public List <GameObject> InstanceItemsInContentZone(Transform contentZone, MarketManager marketManager, EnumTypeMarketOpen typeMarketOpen)
    {
        var allGameItems  = GetItemsForOpen(typeMarketOpen);
        var gameItemsObjs = new List <GameObject>();

        foreach (var gameItem in allGameItems)
        {
            var itemObject = Object.Instantiate(marketItem, Vector3.zero, Quaternion.identity, contentZone);
            itemObject.GetComponent <ShopItemMarket>().SetItemMarket(gameItem);
            itemObject.GetComponent <ShopItemMarket>().marketBase = marketManager;
            gameItemsObjs.Add(itemObject);
        }
        return(gameItemsObjs);
    }