public void Parse(DataSection node, VoidPtr address) { _data = node; _address = address; TryGetValues(); OnParse(); int i = 0; foreach (var a in _data._articles) { a._index = i++; } _data._articles = _data._articles.OrderBy(x => x._offset).ToList(); i = 0; foreach (var a in _data._paramLists) { a._index = i++; } _data._paramLists = _data._paramLists.OrderBy(x => x._offset).ToList(); }
public static void ParseCharacter(CharName name, DataSection data, VoidPtr address) { OffsetHolder o = ExtraDataOffsets.GetOffsets(name); if (o != null) { o.Parse(data, address); } }
public void Parse(DataSection node, VoidPtr address) { Offsets *addr = (Offsets *)address; for (int i = 6; i < 10; i++) { int x = (int)addr->Entries[i]; node._articles.Add(x, node.Parse <ArticleNode>(x)); } }
public List <VoidPtr> Write(DataSection node, VoidPtr address) { _lookupAddresses = new List <VoidPtr>(); _data = node; _address = address; TrySetValues(); OnWrite(); return(_lookupAddresses); }
public void Parse(DataSection node, VoidPtr address) { Offsets *addr = (Offsets *)address; for (int i = 0; i < 5; i++) { node._extraEntries.Add(node.Parse <RawParamList>((int)addr->Entries[i])); } for (int i = 5; i < 10; i++) { node._articles.Add((int)addr->Entries[i], node.Parse <ArticleNode>((int)addr->Entries[i])); } }
protected override void HandleSpecialSections(List <TableEntryNode> sections) { foreach (TableEntryNode section in sections) { if (section is DataSection) { _data = (DataSection)section; } else if (section is DataCommonSection) { _dataCommon = (DataCommonSection)section; } } }