public override void Read(ResourceDataReader reader, params object[] parameters) { base.Read(reader, parameters); this.NodesPointer = reader.ReadUInt64(); this.NodesCount = reader.ReadUInt32(); this.NodesCountVehicle = reader.ReadUInt32(); this.NodesCountPed = reader.ReadUInt32(); this.Unk24 = reader.ReadUInt32(); this.LinksPtr = reader.ReadUInt64(); this.LinksCount = reader.ReadUInt32(); this.Unk34 = reader.ReadUInt32(); this.JunctionsPtr = reader.ReadUInt64(); this.JunctionHeightmapBytesPtr = reader.ReadUInt64(); this.Unk48 = reader.ReadUInt32(); this.Unk4C = reader.ReadUInt32(); this.JunctionRefsPtr = reader.ReadUInt64(); this.JunctionRefsCount0 = reader.ReadUInt16(); this.JunctionRefsCount1 = reader.ReadUInt16(); this.Unk5C = reader.ReadUInt32(); this.JunctionsCount = reader.ReadUInt32(); this.JunctionHeightmapBytesCount = reader.ReadUInt32(); this.Unk68 = reader.ReadUInt32(); this.Unk6C = reader.ReadUInt32(); this.Nodes = reader.ReadStructsAt <Node>(this.NodesPointer, this.NodesCount); this.Links = reader.ReadStructsAt <NodeLink>(this.LinksPtr, this.LinksCount); this.Junctions = reader.ReadStructsAt <NodeJunction>(this.JunctionsPtr, this.JunctionsCount); this.JunctionHeightmapBytes = reader.ReadBytesAt(this.JunctionHeightmapBytesPtr, this.JunctionHeightmapBytesCount); this.JunctionRefs = reader.ReadStructsAt <NodeJunctionRef>(this.JunctionRefsPtr, this.JunctionRefsCount1); }
/// <summary> /// Reads the data-block from a stream. /// </summary> public override void Read(ResourceDataReader reader, params object[] parameters) { // read structure data this.StructureNameHash = (MetaName)reader.ReadInt32(); this.DataLength = reader.ReadInt32(); this.DataPointer = reader.ReadInt64(); this.Data = reader.ReadBytesAt((ulong)this.DataPointer, (uint)DataLength); }