示例#1
0
        public void loadXML()
        {
            XElement xml = XElement.Parse(File.ReadAllText(@"scripts\extractable.xml"));
            XElement ex  = xml.Element("list");

            foreach (var m in ex.Elements())
            {
                if (m.Name == "capsule")
                {
                    CapsuleItem caps = new CapsuleItem();
                    caps.id = Convert.ToInt32(m.Attribute("id").Value);

                    foreach (var stp in m.Elements())
                    {
                        switch (stp.Name.LocalName)
                        {
                        case "item":
                            try
                            {
                                CapsuleItemReward rew = new CapsuleItemReward();
                                rew.id   = int.Parse(stp.Attribute("id").Value);
                                rew.min  = int.Parse(stp.Attribute("min").Value);
                                rew.max  = int.Parse(stp.Attribute("max").Value);
                                rew.rate = int.Parse(stp.Attribute("rate").Value);
                                caps.rewards.Add(rew);
                            }
                            catch (Exception)
                            {
                                Console.WriteLine("cant parse capsule " + caps.id);
                            }
                            break;
                        }
                    }

                    items.Add(caps.id, caps);
                }
            }
        }