Hey, I have been trying out XML as better way to sort my in-game data, but I can’t seem to be able to enter Color32 data. This is how my XML file looks like:
<ProvinceList>
<Provinces>
<Province name="Lithuania">
<provinceColor>Color32(247,0,0,255)</provinceColor>
</Province>
<Province name="Central Latvia">
<provinceColor>(252,0,0,255)</provinceColor>
</Province>
<Province name="E. Latvia">
<provinceColor>Color32 = new Color32(253,0,0,255)</provinceColor>
</Province>
</Provinces>
</ProvinceList>
And this is how my base Province class looks like:
[System.Serializable]
public class Province{
[XmlAttribute("name")]
public string provinceName;
public Color32 provinceColor;
public Province[] neighboringProvinces;
}
And serializer/deserializer itself if it helps:
[XmlRoot("ProvinceList")]
public class ProvinceContainer
{
[XmlArray("Provinces"),XmlArrayItem("Province")]
public List<Province> provinces = new List<Province>();
public void Save(string path)
{
var serializer = new XmlSerializer(typeof(ProvinceContainer));
using(var stream = new FileStream(path, FileMode.Create))
{
serializer.Serialize(stream, this);
}
}
public static ProvinceContainer Load(string path)
{
var serializer = new XmlSerializer(typeof(ProvinceContainer));
using(var stream = new FileStream(path, FileMode.Open))
{
return serializer.Deserialize(stream) as ProvinceContainer;
}
}
}