public void Init() { string filename = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "itemData.xml"); ItemReader mitemReader = new ItemReader(); mitemsData = mitemReader.Load(filename); }
public void Load(string inventoryFile, ItemsData itemsData) { using (var writer = XmlWriter.Create(inventoryFile)) (new XmlSerializer(typeof(Inventory))).Serialize(writer, this); using (StreamReader reader2 = new StreamReader(inventoryFile)) { var serializer = new XmlSerializer(typeof(Inventory)); try { Inventory inventory = serializer.Deserialize(reader2) as Inventory; if (inventory != null) { foreach (var item in inventory.ItemToQuantity) { Item newitem = itemsData.FindItem(item.Key.ToString()); Console.WriteLine("Item: {0} Quantity: {1} Description {2} Effect {3} UnlockRequirement {4}" , item.Key, item.Value, newitem.Description, newitem.Effect, newitem.UnlockRequirement); } } } catch (Exception ex) { Console.WriteLine("Cannot load {0} due to the following {1}", inventoryFile, ex.Message); } } }
public void FindItem(string name) { ItemsData mItemsdata = new ItemsData(); Entry entry = mItemsdata.FindEntry(this.Items, name); Console.WriteLine("Name: {0} , Quantity: {1}", entry.Key, entry.Value); }
public List <Entry> UnlockedEntries(int level, ItemsData itemsData) { List <Entry> inventoryitems = new List <Entry>(); for (int i = 0; i < itemsData.Items.Count(); ++i) { if (itemsData.Items[i].UnlockRequirement <= level) { inventoryitems.Add(new Entry(itemsData.Items[i].Name, null)); } } return(inventoryitems); }
public List <Entry> UnlockItems(int level, ItemsData itemsData) { List <Entry> inventoryitems = itemsData.UnlockedEntries(level, itemsData); List <Entry> UnlockedItems = new List <Entry>(); foreach (Entry entry in inventoryitems) { foreach (Entry inventry in Items) { if (inventry.Key.ToString() == entry.Key.ToString()) { Console.WriteLine("Name: {0}, Quantity: {1}", inventry.Key, inventry.Value); UnlockedItems.Add(new Entry(inventry.Key, inventry.Value)); } } } return(UnlockedItems); }
public void Init() { string InventoryFile = "inventory.xml"; string filename = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "itemData.xml"); Console.WriteLine("-----Creating Inventory-----"); source = new Inventory() { ItemToQuantity = new Dictionary <object, object> { { "Poke ball", 10 }, { "Potion", 10 }, { "Premier ball", 20 }, { "Revive", 3 }, { "Great ball", 8 }, { "Hyper Potion", 2 } } }; source.Serialize(source); source = source.Deserialize(InventoryFile); itemReader = new ItemReader(); itemsDatafile = itemReader.Load(filename); }
public ItemsData Load(string filepath) { if (!File.Exists(filepath)) { throw new Exception(string.Format("{0} does not exist", filepath)); } ItemsData data = null; using (var file = new StreamReader(filepath)) { try { data = serializer.Deserialize(file) as ItemsData; } catch (Exception ex) { throw new Exception(string.Format("Unable to deserialize the {0} due to following: {1}", filepath, ex.Message)); } } return(data); }