public Field(UnityBinaryReader reader) { Version = reader.ReadInt16(); Depth = reader.ReadByte(); IsArray = reader.ReadBool(); _typeOffset = reader.ReadInt32(); _nameOffset = reader.ReadInt32(); Size = reader.ReadInt32(); Index = reader.ReadInt32(); Flags = reader.ReadInt32(); }
private void Read(UnityBinaryReader reader, int version) { _format = version; HasTypeTree = true; if (version <= 6) { UnityVersion = $"Unsupported Format"; TypeVersion = 0; return; } UnityVersion = reader.ReadString(); TypeVersion = reader.ReadInt32(); if (version >= 13) { HasTypeTree = reader.ReadBool(); } var fieldCount = reader.ReadInt32(); if (version > 13) { for (int i = 0; i < fieldCount; i++) { Types_0D.Add(new Type_0D(reader, version, TypeVersion, HasTypeTree)); } } else { throw new NotImplementedException(); for (int i = 0; i < fieldCount; i++) { //Types_07.Add(new Type_07(reader, format, Version, HasTypeTree)); } } if (version < 14) { _unknown = reader.ReadInt32(); } }