Пример #1
0
        public override void Initialize()
        {
            m_idProvider    = new UniqueIdProvider(1);
            m_bidHouseItems = new ConcurrentList <BidHouseItem>(Database.Query <BidHouseItemRecord>(BidHouseItemRelator.FetchQuery).Select(x => new BidHouseItem(x)));

            foreach (var item in m_bidHouseItems)
            {
                var category = GetBidHouseCategory(item);

                if (category == null)
                {
                    category = new BidHouseCategory(m_idProvider.Pop(), item);
                    m_bidHouseCategories.Add(category);
                }

                category.Items.Add(item);
            }

            World.Instance.RegisterSaveableInstance(this);
        }
Пример #2
0
        public void AddBidHouseItem(BidHouseItem item)
        {
            m_bidHouseItems.Add(item);

            var category    = GetBidHouseCategory(item);
            var newCategory = false;

            if (category == null)
            {
                category = new BidHouseCategory(m_idProvider.Pop(), item);
                m_bidHouseCategories.Add(category);

                newCategory = true;
            }

            category.Items.Add(item);

            var handler = ItemAdded;

            if (handler != null)
            {
                handler(item, category, newCategory);
            }
        }