public static GearItem LoadFrom(XmlElement element, string rawXML) { var result = new GearItem(); var itemTooltip = element.SelectSingleNode("//itemTooltip"); result.Name = ParseText(itemTooltip, "name"); result.Id = ParseInt(itemTooltip, "id"); result.ILevel = ParseInt(itemTooltip, "itemLevel"); var equipData = itemTooltip.SelectSingleNode("equipData"); if (equipData != null) { result.Slot = (GearSlot)ParseInt(equipData, "inventoryType"); } var sockets = itemTooltip.SelectNodes("socketData/socket"); foreach (XmlNode socket in sockets) { switch (socket.Attributes["color"].Value) { case "Red": result.RedSockets++; break; case "Yellow": result.YellowSockets++; break; case "Blue": result.BlueSockets++; break; case "Meta": result.MetaSockets++; break; } } if (result.Slot == GearSlot.Waist) result.BlueSockets++; result.OptionsStr = new Simcraft().GetItem(rawXML); return result; }
public SlotSuffixGearItem(GearItem gearItem, string slotSuffix) { this.gearItem = gearItem; this.slotSuffix = slotSuffix; }