Hi,
I have a project where I want the player to be able to save their progress using checkpoints. Saving the player's progress to the hardrive works fine, but when I try to use the `FindElementsByTagName(string)` method of `XmlElement`, it does not find any elements.
Extracted Saving code:
void Save()
{
using (StreamWriter streamWriter = new StreamWriter(filePath))
{
using (XmlWriter xmlWriter = XmlWriter.Create(streamWriter))
{
XmlDocument doc = new XmlDocument();
if (savable == null)
{
continue;
}
var docEleemnt = doc.CreateElement("root");
doc.AppendChild(docEleemnt);
var scoreElement = doc.CreateElement("score");
scoreElement.InnerText = this.score.ToString();
doc.DocumentElement.Append(scoreElement);
doc.WriteTo(xmlWriter);
}
}
}
Exctracted Loading Code
void Load()
{
using (StreamReader reader = new StreamReader(filePath))
{
XmlDocument doc = new XmlDocument();
doc.Load(reader);
var elements = doc.DocumentElement.GetElementsByTagName("score");
// elements.Count is never bigger than 1
this.score = float.Parse(elements[0].InnerText);
}
}
I am using Unity 2018.2 for macOS.
My Scripting Configuration is:
* **Scripting Runtime Version**: .NET 4.x Equivalent;
* **Scripting Backend**: IL2CPP;
* **API Compatibility Level**: .NET Standard 2.0
* **C++ Compiler Configuration**: Release
**However, after I changes the scripting backend to Mono, everything works out fine.**
Any help will be appreciated!
I am also willing to share my project code is it is needed.
↧