예제 #1
0
        private void AddItemsToStore(CCBStore store, CCBStorePlaceType place, Random rnd)
        {
            foreach (CCBPotentialStoreItem maybeItem in place.StoreItems.Items)
            {
                if (maybeItem.IncludeInStore(rnd))
                {
                    CCBStoreItem newItem = new CCBStoreItem(maybeItem.Item);

                    newItem.Cost  = maybeItem.GetCost(rnd);
                    newItem.Count = maybeItem.GetLimit(rnd);
                    if (0 == newItem.Count)
                    {
                        store.Add(new CCBStoreItemOmitted(maybeItem.Item, "Limited"));
                    }
                    else
                    {
                        store.Add(newItem);
                    }
                }
                else
                {
                    store.Add(new CCBStoreItemOmitted(maybeItem.Item, "Chance"));
                }
            }
        }
예제 #2
0
 public CreateStoreWnd(CCBStore store)
 {
     m_store     = store;
     m_keepStore = false;
     InitializeComponent();
     CeebeetleWindowInit();
     tbStoreName.Text        = store.Name;
     btnDeleteItem.IsEnabled = false;
     Populate();
 }
예제 #3
0
 public bool DeleteStore(CCBStore store)
 {
     lock (this)
     {
         if (m_stores.Contains(store))
         {
             m_stores.Remove(store);
             return(true);
         }
     }
     return(false);
 }
예제 #4
0
        private void btnRollStore_Click(object sender, RoutedEventArgs e)
        {
            CCBStore       store          = m_manager.AddStore(GetCurrentPlace());
            CreateStoreWnd createStoreWnd = new CreateStoreWnd(store);

            SaveItem();
            createStoreWnd.ShowDialog();
            if (!createStoreWnd.Keep)
            {
                m_manager.DeleteStore(store);
            }
        }
예제 #5
0
        private void btnDeleteItem_Click(object sender, RoutedEventArgs e)
        {
            CCBStore curStore = GetCurrentStore();

            if (null != curStore)
            {
                int ixCur = lbStores.SelectedIndex;

                lbStores.Items.RemoveAt(ixCur);
                SelectListboxItem(lbStores, ixCur);
            }
        }
예제 #6
0
        private void PopulateItems()
        {
            CCBStore store = GetCurrentStore();

            lbItems.Items.Clear();
            if (null != store)
            {
                foreach (CCBBagItem item in store.Items)
                {
                    if (item is CCBStoreItem)
                    {
                        lbItems.Items.Add(new StoreItemViewer(item));
                    }
                }
            }
        }
예제 #7
0
        public CCBStore AddStore(CCBStorePlaceType place)
        {
            if (null != place)
            {
                CCBStore      newStore = new CCBStore("New Store", place.Name);
                System.Random rnd      = new Random();

                lock (this)
                {
                    //New items replace previous items, and we want the specific place to override
                    //the generic All place. So add items from All first.
                    AddItemsToStore(newStore, m_places.AllPlaces, rnd);
                    AddItemsToStore(newStore, place, rnd);
                    m_stores.Add(newStore);
                }
                return(newStore);
            }
            return(null);
        }
예제 #8
0
        private void btnPrint_Click(object sender, RoutedEventArgs e)
        {
            PrintDialog printDlg = new PrintDialog();
            CCBStore    store    = GetCurrentStore();

            if (null != store)
            {
                if (true != printDlg.ShowDialog())
                {
                    return;
                }
                else
                {
                    Visual oPrint = store.Print();

                    printDlg.PrintVisual(oPrint, store.ToString());
                }
            }
        }
예제 #9
0
 private void OnStorePicked(CCBStore store)
 {
     Log("Store picked: " + store.Name);
 }
예제 #10
0
 public CCBP2PStore(string owner, CCBStore store)
 {
     m_id    = Guid.NewGuid();
     m_owner = owner;
     m_store = store;
 }