private static OverwatchMemoryMoment ReadMoment(XElement xElement) { var moment = new OverwatchMemoryMoment((float)xElement.Attribute("Time")); var bufferElements = xElement.Element("Info").Elements(); if (bufferElements != null) { IMemorableInfo info; foreach (var element in bufferElements) { info = ReadInfo(element); moment.Add(info); } } return(moment); }
public static OverwatchMemoryCell ReadCell(XElement xElement) { int size = (int)xElement.Attribute("Size"); var moments = new OverwatchMemoryMoment[size]; var elements = from element in xElement.Elements() orderby(int) element.Attribute("Index") select element; int index = 0; foreach (var element in elements) { moments[index] = ReadMoment(element); index++; } var cell = new OverwatchMemoryCell(moments); return(cell); }