/// <summary> /// Reads the data-block from a stream. /// </summary> public override void Read(ResourceDataReader reader, params object[] parameters) { // read structure data this.VFT = reader.ReadUInt32(); this.Unknown_4h = reader.ReadUInt32(); this.Unknown_8h = reader.ReadUInt32(); this.Unknown_Ch = reader.ReadUInt32(); this.Unknown_10h = reader.ReadUInt32(); this.Unknown_14h = reader.ReadUInt32(); this.Unknown_18h = reader.ReadUInt32(); this.Unknown_1Ch = reader.ReadUInt32(); this.ArticulatedBodyTypePointer = reader.ReadUInt64(); this.Unknown_28h_Pointer = reader.ReadUInt64(); this.Unknown_30h = reader.ReadBlock <RAGE_Vector4>(); this.Unknown_40h = reader.ReadBlock <RAGE_Vector4>(); this.Unknown_50h = reader.ReadBlock <RAGE_Vector4>(); this.Unknown_60h = reader.ReadBlock <RAGE_Vector4>(); this.Unknown_70h = reader.ReadBlock <RAGE_Vector4>(); this.Unknown_80h = reader.ReadBlock <RAGE_Vector4>(); this.Unknown_90h = reader.ReadBlock <RAGE_Vector4>(); this.Unknown_A0h = reader.ReadBlock <RAGE_Vector4>(); this.Unknown_B0h = reader.ReadBlock <RAGE_Vector4>(); this.GroupNamesPointer = reader.ReadUInt64(); this.GroupsPointer = reader.ReadUInt64(); this.ChildrenPointer = reader.ReadUInt64(); this.Archetype1Pointer = reader.ReadUInt64(); this.Archetype2Pointer = reader.ReadUInt64(); this.BoundPointer = reader.ReadUInt64(); this.Unknown_F0h_Pointer = reader.ReadUInt64(); this.Unknown_F8h_Pointer = reader.ReadUInt64(); this.Unknown_100h_Pointer = reader.ReadUInt64(); this.Unknown_108h_Pointer = reader.ReadUInt64(); this.Unknown_110h_Pointer = reader.ReadUInt64(); this.Count1 = reader.ReadByte(); this.Count2 = reader.ReadByte(); this.GroupsCount = reader.ReadByte(); this.Unknown_11Bh = reader.ReadByte(); this.Unknown_11Ch = reader.ReadByte(); this.ChildrenCount = reader.ReadByte(); this.Count3 = reader.ReadByte(); this.Unknown_11Fh = reader.ReadByte(); this.Unknown_120h = reader.ReadUInt32(); this.Unknown_124h = reader.ReadUInt32(); this.Unknown_128h = reader.ReadUInt32(); this.Unknown_12Ch = reader.ReadUInt32(); // read reference data this.ArticulatedBodyType = reader.ReadBlockAt <ArticulatedBodyType>( this.ArticulatedBodyTypePointer // offset ); this.Unknown_28h_Data = reader.ReadBlockAt <ResourceSimpleArray <uint_r> >( this.Unknown_28h_Pointer, // offset this.ChildrenCount ); this.GroupNames = reader.ReadBlockAt <ResourcePointerArray64 <fragNameStruct> >( this.GroupNamesPointer, // offset this.GroupsCount ); this.Groups = reader.ReadBlockAt <ResourcePointerArray64 <FragTypeGroup> >( this.GroupsPointer, // offset this.GroupsCount ); this.Children = reader.ReadBlockAt <ResourcePointerArray64 <FragTypeChild> >( this.ChildrenPointer, // offset this.ChildrenCount ); this.Archetype1 = reader.ReadBlockAt <Archetype>( this.Archetype1Pointer // offset ); this.Archetype2 = reader.ReadBlockAt <Archetype>( this.Archetype2Pointer // offset ); this.Bound = reader.ReadBlockAt <Bound>( this.BoundPointer // offset ); this.Unknown_F0h_Data = reader.ReadBlockAt <ResourceSimpleArray <RAGE_Vector4> >( this.Unknown_F0h_Pointer, // offset this.ChildrenCount ); this.Unknown_F8h_Data = reader.ReadBlockAt <ResourceSimpleArray <RAGE_Vector4> >( this.Unknown_F8h_Pointer, // offset this.ChildrenCount ); this.Unknown_100h_Data = reader.ReadBlockAt <Unknown_F_001>( this.Unknown_100h_Pointer // offset ); this.Unknown_108h_Data = reader.ReadBlockAt <ResourceSimpleArray <byte_r> >( this.Unknown_108h_Pointer, // offset this.Count1 ); this.Unknown_110h_Data = reader.ReadBlockAt <ResourceSimpleArray <byte_r> >( this.Unknown_110h_Pointer, // offset this.Count2 ); }
/// <summary> /// Reads the data-block from a stream. /// </summary> public override void Read(ResourceDataReader reader, params object[] parameters) { base.Read(reader, parameters); // read structure data this.Unknown_10h = reader.ReadUInt32(); this.Unknown_14h = reader.ReadUInt32(); this.Unknown_18h = reader.ReadUInt32(); this.Unknown_1Ch = reader.ReadUInt32(); this.ArticulatedBodyTypePointer = reader.ReadUInt64(); this.Unknown_28h_Pointer = reader.ReadUInt64(); this.Unknown_30h = reader.ReadVector4(); this.Unknown_40h = reader.ReadVector4(); this.Unknown_50h = reader.ReadVector4(); this.DampingLinearC = reader.ReadVector4(); this.DampingLinearV = reader.ReadVector4(); this.DampingLinearV2 = reader.ReadVector4(); this.DampingAngularC = reader.ReadVector4(); this.DampingAngularV = reader.ReadVector4(); this.DampingAngularV2 = reader.ReadVector4(); this.GroupNamesPointer = reader.ReadUInt64(); this.GroupsPointer = reader.ReadUInt64(); this.ChildrenPointer = reader.ReadUInt64(); this.Archetype1Pointer = reader.ReadUInt64(); this.Archetype2Pointer = reader.ReadUInt64(); this.BoundPointer = reader.ReadUInt64(); this.Unknown_F0h_Pointer = reader.ReadUInt64(); this.Unknown_F8h_Pointer = reader.ReadUInt64(); this.Unknown_100h_Pointer = reader.ReadUInt64(); this.Unknown_108h_Pointer = reader.ReadUInt64(); this.Unknown_110h_Pointer = reader.ReadUInt64(); this.Count1 = reader.ReadByte(); this.Count2 = reader.ReadByte(); this.GroupsCount = reader.ReadByte(); this.Unknown_11Bh = reader.ReadByte(); this.Unknown_11Ch = reader.ReadByte(); this.ChildrenCount = reader.ReadByte(); this.Count3 = reader.ReadByte(); this.Unknown_11Fh = reader.ReadByte(); this.Unknown_120h = reader.ReadUInt64(); this.Unknown_128h = reader.ReadUInt64(); // read reference data this.ArticulatedBodyType = reader.ReadBlockAt <ArticulatedBodyType>( this.ArticulatedBodyTypePointer // offset ); this.Unknown_28h_Data = reader.ReadBlockAt <SimpleArray <uint> >( this.Unknown_28h_Pointer, // offset this.ChildrenCount ); this.GroupNames = reader.ReadBlockAt <FragTypeGroupNames>( this.GroupNamesPointer, // offset this.GroupsCount ); this.Groups = reader.ReadBlockAt <ResourcePointerArray64 <FragTypeGroup> >( this.GroupsPointer, // offset this.GroupsCount ); this.Children = reader.ReadBlockAt <ResourcePointerArray64 <FragTypeChild> >( this.ChildrenPointer, // offset this.ChildrenCount ); this.Archetype1 = reader.ReadBlockAt <Archetype>( this.Archetype1Pointer // offset ); this.Archetype2 = reader.ReadBlockAt <Archetype>( this.Archetype2Pointer // offset ); this.Bound = reader.ReadBlockAt <Bound>( this.BoundPointer // offset ); this.Unknown_F0h_Data = reader.ReadBlockAt <SimpleArray <Vector4> >( this.Unknown_F0h_Pointer, // offset this.ChildrenCount ); this.Unknown_F8h_Data = reader.ReadBlockAt <SimpleArray <Vector4> >( this.Unknown_F8h_Pointer, // offset this.ChildrenCount ); this.Unknown_100h_Data = reader.ReadBlockAt <Unknown_F_001>( this.Unknown_100h_Pointer // offset ); this.Unknown_108h_Data = reader.ReadBlockAt <SimpleArray <byte> >( this.Unknown_108h_Pointer, // offset this.Count1 ); this.Unknown_110h_Data = reader.ReadBlockAt <SimpleArray <byte> >( this.Unknown_110h_Pointer, // offset this.Count2 ); }