private void SaveItem() { bool bAvailable = true == cbItemAvailable.IsChecked; CCBStorePlaceType place = GetCurrentPlace(); string itemTag = GetCurrentItem(); if ((null != place) && (null != itemTag)) { CCBPotentialStoreItem potentialStoreItem = place.FindItem(itemTag); if (null == potentialStoreItem) { potentialStoreItem = new CCBPotentialStoreItem(itemTag); } potentialStoreItem.Available = bAvailable; potentialStoreItem.Chance = IntFromTextbox(tbChance); potentialStoreItem.MinCost = IntFromTextbox(tbMinCost); potentialStoreItem.MaxCost = IntFromTextbox(tbMaxCost); if (true == cbLimit.IsChecked) { potentialStoreItem.Count = IntFromTextbox(tbLimit); } else { potentialStoreItem.Count = -1; } potentialStoreItem.RandomizeLimit = (true == cbRandomizeLimit.IsChecked); place.AddPotentialStoreItem(potentialStoreItem); } }
public bool RemovePotentialStoreItem(CCBPotentialStoreItem item) { CCBBagItem foundItem = m_items.Find(item.Item); if (null == foundItem) { return(false); } m_items.RemoveItem(foundItem); return(true); }
public void AddPotentialStoreItem(CCBPotentialStoreItem item) { //Avoid duplicate items by removing it first if there. CCBPotentialStoreItem oldItem = FindItem(item.Item); if (null != oldItem) { m_items.RemoveItem(oldItem); } m_items.Add(item); }
public CCBPotentialStoreItem FindItem(string name) { CCBBagItem item = m_items.Find(name); if (null != item) { CCBPotentialStoreItem storeItem = (CCBPotentialStoreItem)item; System.Diagnostics.Debug.Assert(null != storeItem); return(storeItem); } return(null); }
public bool CompareStats(CCBPotentialStoreItem rhs) { if (m_chance != rhs.m_chance) { return(false); } if (m_costRange[0] != rhs.m_costRange[0]) { return(false); } if (m_costRange[1] != rhs.m_costRange[1]) { return(false); } if (m_randomizeLimit != rhs.m_randomizeLimit) { return(false); } if (Count != rhs.Count) { return(false); } return(true); }
private void UpdateProperties() { string itemTag = GetCurrentItem(); CCBStorePlaceType place = GetCurrentPlace(); System.Diagnostics.Debug.Assert(null != place); if (null != place) { CCBPotentialStoreItem potentialStoreItem = place.FindItem(itemTag); if (null != potentialStoreItem) { cbItemAvailable.IsChecked = potentialStoreItem.Available; SetTextboxInt(tbChance, potentialStoreItem.Chance); SetTextboxInt(tbMinCost, potentialStoreItem.MinCost); SetTextboxInt(tbMaxCost, potentialStoreItem.MaxCost); if (-1 == potentialStoreItem.Count) { cbLimit.IsChecked = false; tbLimit.Text = ""; tbLimit.IsEnabled = false; } else { cbLimit.IsChecked = true; SetTextboxInt(tbLimit, potentialStoreItem.Count); tbLimit.IsEnabled = true; } cbRandomizeLimit.IsChecked = potentialStoreItem.RandomizeLimit; } else { Reset(); } } }