private void InitDisplay_MouseDown(object sender, MouseEventArgs e) { if (e.Button == System.Windows.Forms.MouseButtons.Left) { InitDisplay iDisplay = sender as InitDisplay; iDisplay.DoDragDrop(iDisplay.Name, DragDropEffects.Move); } else { Global.SelectedActorID = lblID.Text; this.BackColor = Color.CadetBlue; if (Global._UserState == Global.UserState.GM) { Global.SelectedActorType = DisplayType; GMControl gmControl = new GMControl(); GMForm.setPanelSelectedGMControl(gmControl); } } }
private void treeReference_AfterSelect(object sender, TreeViewEventArgs e) { XPathDocument xDoc; XPathNavigator xNav = null; bool descriptionOnly = false; if (e.Node.Parent != null) { switch (e.Node.Parent.Name) { case "nodeStatuses": xDoc = new XPathDocument(Global.StatusXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Statuses/Status[@Text=\"{e.Node.Text}\"]"); break; case "nodeActions": xDoc = new XPathDocument(Global.ActionsXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Actions/Action[@Name=\"{e.Node.Text}\"]"); break; case "nodeDamageTypes": xDoc = new XPathDocument(Global.DamageXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Damages/Damage[@Name=\"{e.Node.Text}\"]"); break; case "nodeFormWerewolf": xDoc = new XPathDocument(Global.FormXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Forms/Werewolf/Form[@Name=\"{e.Node.Text}\"]"); break; case "nodeDerangements": xDoc = new XPathDocument(Global.DerangementXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Derangements/Derangement[@Name=\"{e.Node.Text}\"]"); break; case "nodeFlaws": xDoc = new XPathDocument(Global.FlawXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Flaws/Flaw[@Name=\"{e.Node.Text}\"]"); break; case "nodeMerits": xDoc = new XPathDocument(Global.MeritXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Merits/Merit[@Name=\"{e.Node.Text}\"]"); break; case "nodeVices": xDoc = new XPathDocument(Global.ViceXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Vices/Vice[@Name=\"{e.Node.Text}\"]"); break; case "nodeVirtues": xDoc = new XPathDocument(Global.VirtueXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Virtues/Virtue[@Name=\"{e.Node.Text}\"]"); break; case "nodeRules": xDoc = new XPathDocument(Global.RuleXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Rules/Rule[@Name=\"{e.Node.Text}\"]"); break; case "nodeArcana": xDoc = new XPathDocument(Arcana.ArcanaXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Arcanum/Arcana[@Name=\"{e.Node.Text}\"]"); descriptionOnly = true; break; case "nodeArcanaGeneral": xDoc = new XPathDocument(Arcana.ArcanaXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Arcanum/Arcana[@Name='General']/Rote[@Name=\"{e.Node.Text}\"]"); break; case "nodeArcanaDeath": xDoc = new XPathDocument(Arcana.ArcanaXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Arcanum/Arcana[@Name='Death']/Rote[@Name=\"{e.Node.Text}\"]"); break; case "nodeArcanaFate": xDoc = new XPathDocument(Arcana.ArcanaXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Arcanum/Arcana[@Name='Fate']/Rote[@Name=\"{e.Node.Text}\"]"); break; case "nodeArcanaForces": xDoc = new XPathDocument(Arcana.ArcanaXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Arcanum/Arcana[@Name='Forces']/Rote[@Name=\"{e.Node.Text}\"]"); break; case "nodeArcanaLife": xDoc = new XPathDocument(Arcana.ArcanaXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Arcanum/Arcana[@Name='Life']/Rote[@Name=\"{e.Node.Text}\"]"); break; case "nodeArcanaMatter": xDoc = new XPathDocument(Arcana.ArcanaXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Arcanum/Arcana[@Name='Matter']/Rote[@Name=\"{e.Node.Text}\"]"); break; case "nodeArcanaMind": xDoc = new XPathDocument(Arcana.ArcanaXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Arcanum/Arcana[@Name='Mind']/Rote[@Name=\"{e.Node.Text}\"]"); break; case "nodeArcanaPrime": xDoc = new XPathDocument(Arcana.ArcanaXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Arcanum/Arcana[@Name='Prime']/Rote[@Name=\"{e.Node.Text}\"]"); break; case "nodeArcanaSpace": xDoc = new XPathDocument(Arcana.ArcanaXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Arcanum/Arcana[@Name='Space']/Rote[@Name=\"{e.Node.Text}\"]"); break; case "nodeArcanaSpirit": xDoc = new XPathDocument(Arcana.ArcanaXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Arcanum/Arcana[@Name='Spirit']/Rote[@Name=\"{e.Node.Text}\"]"); break; case "nodeArcanaTime": xDoc = new XPathDocument(Arcana.ArcanaXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Arcanum/Arcana[@Name='Time']/Rote[@Name=\"{e.Node.Text}\"]"); break; case "nodeDisciplines": xDoc = new XPathDocument(Discipline.DisciplineXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Disciplines/Discipline[@Name=\"{e.Node.Text}\"]"); descriptionOnly = true; break; case "nodeDisciplineAnimalism": xDoc = new XPathDocument(Discipline.DisciplineXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Disciplines/Discipline[@Name='Animalism']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeDisciplineAuspex": xDoc = new XPathDocument(Discipline.DisciplineXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Disciplines/Discipline[@Name='Auspex']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeDisciplineCelerity": xDoc = new XPathDocument(Discipline.DisciplineXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Disciplines/Discipline[@Name='Celerity']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeDisciplineDominate": xDoc = new XPathDocument(Discipline.DisciplineXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Disciplines/Discipline[@Name='Dominate']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeDisciplineMajesty": xDoc = new XPathDocument(Discipline.DisciplineXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Disciplines/Discipline[@Name='Majesty']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeDisciplineNightmare": xDoc = new XPathDocument(Discipline.DisciplineXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Disciplines/Discipline[@Name='Nightmare']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeDisciplineObfuscate": xDoc = new XPathDocument(Discipline.DisciplineXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Disciplines/Discipline[@Name='Obfuscate']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeDisciplineProtean": xDoc = new XPathDocument(Discipline.DisciplineXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Disciplines/Discipline[@Name='Protean']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeDisciplineResilience": xDoc = new XPathDocument(Discipline.DisciplineXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Disciplines/Discipline[@Name='Resilience']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeDisciplineVigor": xDoc = new XPathDocument(Discipline.DisciplineXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Disciplines/Discipline[@Name='Vigor']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeDisciplineCrúac": xDoc = new XPathDocument(Discipline.DisciplineXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Disciplines/Discipline[@Name='Crúac']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeDisciplineThebanSorcery": xDoc = new XPathDocument(Discipline.DisciplineXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Disciplines/Discipline[@Name='Theban Sorcery']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeDevotions": xDoc = new XPathDocument(Devotion.DevotionXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Devotions/Devotion[@Name=\"{e.Node.Text}\"]"); break; case "nodeGifts": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name=\"{e.Node.Text}\"]"); descriptionOnly = true; break; case "nodeGiftCrescentMoon": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Crescent Moon']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftDeath": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Death']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftDominance": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Dominance']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftElemental": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Elemental']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftEvasion": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Evasion']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftFatherWolf": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Father Wolf']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftFullMoon": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Full Moon']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftGibbousMoon": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Gibbouls Moon']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftHalfMoon": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Half Moon']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftInsight": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Insight']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftInspiration": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Inspiration']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftKnowledge": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Knowledge']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftMotherLuna": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Mother Luna']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftNature": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Nature']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftNewMoon": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='New Moon']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftRage": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Rage']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftShaping": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Shaping']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftStealth": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Stealth']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftStrength": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Strength']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftTechnology": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Technology']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftWarding": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Warding']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeGiftWeather": xDoc = new XPathDocument(Gift.GiftXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Gifts/Gift[@Name='Weather']/Sub[@Name=\"{e.Node.Text}\"]"); break; case "nodeProfessions": xDoc = new XPathDocument(Profession.ProfessionXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Professions/Profession[@Name=\"{e.Node.Text}\"]"); break; case "nodeRites": xDoc = new XPathDocument(Rite.RiteXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Rites/Rite[@Name=\"{e.Node.Text}\"]"); break; case "nodeVestments": xDoc = new XPathDocument(Vestment.VestmentXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Vesments/Vice[@Name=\"{e.Node.Text}\"]"); descriptionOnly = true; break; case "nodeVestmentEnvy": xDoc = new XPathDocument(Vestment.VestmentXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Vestments/Vice[@Name='Envy']//Vestment[@Name=\"{e.Node.Text}\"]"); break; case "nodeVestmentGluttony": xDoc = new XPathDocument(Vestment.VestmentXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Vestments/Vice[@Name='Gluttony']//Vestment[@Name=\"{e.Node.Text}\"]"); break; case "nodeVestmentGreed": xDoc = new XPathDocument(Vestment.VestmentXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Vestments/Vice[@Name='Greed']//Vestment[@Name=\"{e.Node.Text}\"]"); break; case "nodeVestmentLust": xDoc = new XPathDocument(Vestment.VestmentXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Vestments/Vice[@Name='Lust']//Vestment[@Name=\"{e.Node.Text}\"]"); break; case "nodeVestmentPride": xDoc = new XPathDocument(Vestment.VestmentXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Vestments/Vice[@Name='Pride']//Vestment[@Name=\"{e.Node.Text}\"]"); break; case "nodeVestmentSloth": xDoc = new XPathDocument(Vestment.VestmentXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Vestments/Vice[@Name='Sloth']//Vestment[@Name=\"{e.Node.Text}\"]"); break; case "nodeVestmentWrath": xDoc = new XPathDocument(Vestment.VestmentXml); xNav = xDoc.CreateNavigator().SelectSingleNode($"Vestments/Vice[@Name='Wrath']//Vestment[@Name=\"{e.Node.Text}\"]"); break; default: return; } } else { return; } string rtf = RtfHelper.Begin(); RtfHelper.Bold(ref rtf, xNav.SelectSingleNode("@Name").Value); RtfHelper.EndLine(ref rtf); XPathNodeIterator nodeIter = xNav.SelectChildren(XPathNodeType.All); while (nodeIter.MoveNext()) { if (nodeIter.Current.Name == "Image") { continue; } RtfHelper.EndLine(ref rtf); RtfHelper.Bold(ref rtf, nodeIter.Current.Name + ": "); XPathNodeIterator xChildIter = nodeIter.Current.SelectChildren(XPathNodeType.Element); if (xChildIter.Count > 0) { while (xChildIter.MoveNext()) { RtfHelper.EndLine(ref rtf); RtfHelper.ConvertText(ref rtf, xChildIter.Current.Name + " | "); RtfHelper.ConvertText(ref rtf, xChildIter.Current.Value); if (xChildIter.Current.SelectSingleNode("@Value") != null) { RtfHelper.ConvertText(ref rtf, $" [{xChildIter.Current.SelectSingleNode("@Value").Value}]"); } } } else if (descriptionOnly) { if (nodeIter.Current.SelectSingleNode("Description") != null) { RtfHelper.EndLine(ref rtf); RtfHelper.Bold(ref rtf, "Description: "); RtfHelper.ConvertText(ref rtf, nodeIter.Current.SelectSingleNode("Description").Value); } } else { RtfHelper.ConvertText(ref rtf, nodeIter.Current.Value); } RtfHelper.EndLine(ref rtf); } RtfHelper.End(ref rtf); RtfDisplay.Description = rtf; RtfDisplay iDisplay = new RtfDisplay(); GMForm.setPanelSelectedItem(iDisplay); }
private void treeCompendium_AfterSelect(object sender, TreeViewEventArgs e) { if (e.Node.Text == "Cash") { CashControl cControl = new CashControl(); GMForm.setPanelSelectedCash(cControl); } else if (e.Node.Parent != null) { switch (e.Node.Parent.Text) { case "Item": XPathNavigator itemNav = cvItemXml.CreateNavigator().SelectSingleNode("Items/Item[@Name = '" + e.Node.Text + "']"); ItemDisplay.ItemName = e.Node.Text; ItemDisplay.Image = itemNav.SelectSingleNode("Image").Value; ItemDisplay.Cost = itemNav.SelectSingleNode("Cost").ValueAsInt; ItemDisplay.ItemSize = itemNav.SelectSingleNode("Size").ValueAsInt; ItemDisplay.Durability = itemNav.SelectSingleNode("Durability").ValueAsInt; ItemDisplay.Structure = itemNav.SelectSingleNode("Structure").ValueAsInt; ItemDisplay.Description = itemNav.SelectSingleNode("Description").Value; ItemDisplay.Scope = null; ItemDisplay.Damage_Prim = null; ItemDisplay.Damage_Sec = null; ItemDisplay.Capacity = null; ItemDisplay.Def_General = 0; ItemDisplay.Def_Ballistic = 0; ItemDisplay.Range = null; ItemDisplay iDisplay = new ItemDisplay(); GMForm.setPanelSelectedItem(iDisplay); break; case "Weapon": XPathNavigator weaponNav = cvItemXml.CreateNavigator().SelectSingleNode("Items/Item[@Name = '" + e.Node.Text + "']"); ItemDisplay.ItemName = e.Node.Text; ItemDisplay.Scope = weaponNav.SelectSingleNode("Scope").Value; ItemDisplay.Image = weaponNav.SelectSingleNode("Image").Value; ItemDisplay.Cost = weaponNav.SelectSingleNode("Cost").ValueAsInt; ItemDisplay.ItemSize = weaponNav.SelectSingleNode("Size").ValueAsInt; ItemDisplay.Damage_Prim = weaponNav.SelectSingleNode("Primary/Damage").Value + "(" + weaponNav.SelectSingleNode("Primary/Threat").Value + ")";; XPathNavigator secNav = weaponNav.SelectSingleNode("Secondary/Damage"); if (secNav != null) { ItemDisplay.Damage_Sec = weaponNav.SelectSingleNode("Secondary/Damage").Value + "(" + weaponNav.SelectSingleNode("Secondary/Threat").Value + ")"; } else { ItemDisplay.Damage_Sec = null; } XPathNavigator mediumNav = weaponNav.SelectSingleNode("Range/Medium"); XPathNavigator longNav = weaponNav.SelectSingleNode("Range/Long"); ItemDisplay.Range = weaponNav.SelectSingleNode("Range/Short").Value; if (mediumNav != null) { ItemDisplay.Range += @"/" + mediumNav.Value; } if (longNav != null) { ItemDisplay.Range += @"/" + longNav.Value; } ItemDisplay.Durability = 0; ItemDisplay.Structure = 0; ItemDisplay.Def_General = 0; ItemDisplay.Def_Ballistic = 0; ItemDisplay.Description = weaponNav.SelectSingleNode("Description").Value; ItemDisplay wDisplay = new ItemDisplay(); GMForm.setPanelSelectedItem(wDisplay); break; case "Armor": XPathNavigator armorNav = cvItemXml.CreateNavigator().SelectSingleNode("Items/Item[@Name = '" + e.Node.Text + "']"); ItemDisplay.ItemName = e.Node.Text; ItemDisplay.Image = armorNav.SelectSingleNode("Image").Value; ItemDisplay.Cost = armorNav.SelectSingleNode("Cost").ValueAsInt; ItemDisplay.Def_General = armorNav.SelectSingleNode("General").ValueAsInt; ItemDisplay.Def_Ballistic = armorNav.SelectSingleNode("Ballistic").ValueAsInt; ItemDisplay.Description = armorNav.SelectSingleNode("Description").Value; ItemDisplay.Durability = 0; ItemDisplay.Structure = 0; ItemDisplay.Scope = null; ItemDisplay.Damage_Prim = null; ItemDisplay.Damage_Sec = null; ItemDisplay.Capacity = null; ItemDisplay.Range = null; ItemDisplay aDisplay = new ItemDisplay(); GMForm.setPanelSelectedItem(aDisplay); break; case "Vehicle": XPathNavigator vehicleNav = cvVehicleXml.CreateNavigator().SelectSingleNode("Vehicles/Vehicle[@Name = '" + e.Node.Text + "']"); VehicleDisplay.VehicleName = e.Node.Text; VehicleDisplay.Image = vehicleNav.SelectSingleNode("Image").Value; VehicleDisplay.Cost = vehicleNav.SelectSingleNode("Cost").ValueAsInt; VehicleDisplay.ItemSize = vehicleNav.SelectSingleNode("Size").ValueAsInt; VehicleDisplay.Durability = vehicleNav.SelectSingleNode("Durability").ValueAsInt; VehicleDisplay.Structure = vehicleNav.SelectSingleNode("Structure").ValueAsInt; VehicleDisplay.Acceleration = vehicleNav.SelectSingleNode("Acceleration").ValueAsInt; VehicleDisplay.Speed = vehicleNav.SelectSingleNode("Speed").ValueAsInt; VehicleDisplay.Safe_Speed = vehicleNav.SelectSingleNode("Safe_Speed").ValueAsInt; VehicleDisplay.Handling = vehicleNav.SelectSingleNode("Handling").ValueAsInt; VehicleDisplay.Occupancy = vehicleNav.SelectSingleNode("Occupancy").ValueAsInt; VehicleDisplay.Capacity = vehicleNav.SelectSingleNode("Capacity").ValueAsInt; VehicleDisplay.Description = vehicleNav.SelectSingleNode("Description").Value; VehicleDisplay vDisplay = new VehicleDisplay(); GMForm.setPanelSelectedVehicle(vDisplay); break; case "NPC": XPathDocument lvNPCxml = new XPathDocument(Properties.Settings.Default.DataLocation + @"NPC/" + e.Node.Text + ".xml"); XPathNavigator npcNav = lvNPCxml.CreateNavigator(); CharDisplay.CharName = npcNav.SelectSingleNode("Character/Background/Name").Value; CharDisplay.Type = npcNav.SelectSingleNode("Character/Background/Type").Value; CharDisplay.Health = npcNav.SelectSingleNode("Character/Attributes/Health/Max").ValueAsInt; CharDisplay.Bash = npcNav.SelectSingleNode("Character/Attributes/Health/Bash").ValueAsInt; CharDisplay.Lethal = npcNav.SelectSingleNode("Character/Attributes/Health/Lethal").ValueAsInt; CharDisplay.Aggravated = npcNav.SelectSingleNode("Character/Attributes/Health/Aggravated").ValueAsInt; CharDisplay.WillpowerMax = npcNav.SelectSingleNode("Character/Attributes/Willpower/Max").ValueAsInt; CharDisplay.WillpowerCurrent = npcNav.SelectSingleNode("Character/Attributes/Willpower/Current").ValueAsInt; CharDisplay.Image = npcNav.SelectSingleNode("Character/Image").Value; CharDisplay.DisplayType = Global.CharType.NPC; CharDisplay lvChar = new CharDisplay(); CharDisplay cDisplay = new CharDisplay(); GMForm.setPanelSelectedChar(cDisplay); break; default: break; } } }