public void Init()
        {
            string     filename    = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "itemData.xml");
            ItemReader mitemReader = new ItemReader();

            mitemsData = mitemReader.Load(filename);
        }
Beispiel #2
0
        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);
                }
            }
        }
Beispiel #3
0
        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);
        }
Beispiel #4
0
        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);
        }
Beispiel #5
0
        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);
        }
Beispiel #6
0
        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);
        }
Beispiel #7
0
        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);
        }