#include "stdafx.h"
using namespace System;
using namespace System::Xml;
void Navigate(XmlNode ^node)
{
if (node == nullptr)
return;
if (node->Value != nullptr && node->Value->Equals("D"))
{
if (node->ParentNode->ParentNode["Name"]->FirstChild->Value->Equals("G"))
{
node->Value = "S";
node->ParentNode->Attributes["Damage"]->Value = "1d8";
}
}
Navigate(node->FirstChild);
Navigate(node->NextSibling);
}
void main()
{
XmlDocument ^doc = gcnew XmlDocument();
try{
doc->Load("a.xml");
XmlNode ^root = doc->DocumentElement;
Navigate(root);
doc->Save("New.xml");
}catch (Exception ^e){
Console::WriteLine("Error Occurred: {0}", e->Message );
}
}