void readDefines(byte[] data, Cursor cursor)
{
int len = Utils.ReadLength(data, cursor);
int newIndex = cursor.index + len;
int maxcharacterId = Utils.ReadInt32(data, cursor);
int definesCount = Utils.ReadInt32(data, cursor);
chId_defs = new TagDefine[maxcharacterId + 1];
classNameDefs = new Dictionary <string, TagDefine> (definesCount / 4);
for (int i = 0; i < definesCount; i++)
{
TagDefine define = parseDefine(this, data, cursor);
if (define != null)
{
chId_defs[define.characterId] = define;
if (define is TagDefine && (define as TagDefine).className != null)
{
classNameDefs[(define as TagDefine).className] = define;
}
}
}
cursor.index = newIndex;
}