Beispiel #1
0
        private void Setup()
        {
            itemList.Setup(itemPrefab, layout, (data, view) => view.Setup(data), (data1, data2) => data1.Id == data2.Id,
                           (data1, data2) => {
                IUpgradeService serv  = Services.UpgradeService;
                bool isAllowBuyFirst  = serv.IsAllowBuy(data1);
                bool isAllowBuySecond = serv.IsAllowBuy(data2);

                if (isAllowBuyFirst && !isAllowBuySecond)
                {
                    return(-1);
                }
                if (!isAllowBuyFirst && isAllowBuySecond)
                {
                    return(1);
                }
                return(data1.Price(() => {
                    return BosUtils.GetUpgradePriceMult(Planets.CurrentPlanet.Data, data1);
                }).CompareTo(data2.Price(() => {
                    return BosUtils.GetUpgradePriceMult(Planets.CurrentPlanet.Data, data2);
                })));
            });
            itemList.UpdateViews(DataSource);
        }