-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
49 changed files
with
3,304 additions
and
37 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,71 @@ | ||
using System.Collections.Generic; | ||
using System.IO; | ||
using Warcraft.NET.Attribute; | ||
using Warcraft.NET.Files.Interfaces; | ||
using Warcraft.NET.Files.M2.Entries; | ||
|
||
namespace Warcraft.NET.Files.M2.Chunks.Legion | ||
{ | ||
[AutoDocChunk(AutoDocChunkVersionHelper.VersionAfterWoD, AutoDocChunkVersionHelper.VersionBeforeLegion)] | ||
public class EXPT : IIFFChunk, IBinarySerializable | ||
{ | ||
/// <summary> | ||
/// Holds the binary chunk signature. | ||
/// </summary> | ||
public const string Signature = "EXP2"; | ||
|
||
/// <summary> | ||
/// Gets or sets the Skin FileDataId | ||
/// </summary> | ||
public List<EXPTEntry> EXP2Entries = new(); | ||
|
||
/// <summary> | ||
/// Initializes a new instance of <see cref="EXPT"/> | ||
/// </summary> | ||
public EXPT() { } | ||
|
||
/// <summary> | ||
/// Initializes a new instance of <see cref="EXPT"/> | ||
/// </summary> | ||
/// <param name="inData">ExtendedData.</param> | ||
public EXPT(byte[] inData) => LoadBinaryData(inData); | ||
|
||
/// <inheritdoc /> | ||
public string GetSignature() { return Signature; } | ||
|
||
/// <inheritdoc /> | ||
public uint GetSize() { return (uint)Serialize().Length; } | ||
|
||
/// <inheritdoc /> | ||
public void LoadBinaryData(byte[] inData) | ||
{ | ||
{ | ||
using (var ms = new MemoryStream(inData)) | ||
using (var br = new BinaryReader(ms)) | ||
{ | ||
var exp2count = br.BaseStream.Length / EXPTEntry.GetSize(); | ||
for (var i = 0; i < exp2count; ++i) | ||
{ | ||
EXP2Entries.Add(new EXPTEntry(br.ReadBytes(EXPTEntry.GetSize()))); | ||
} | ||
} | ||
} | ||
} | ||
|
||
/// <inheritdoc /> | ||
public byte[] Serialize(long offset = 0) | ||
{ | ||
using (var ms = new MemoryStream()) | ||
using (var bw = new BinaryWriter(ms)) | ||
{ | ||
foreach (EXPTEntry obj in EXP2Entries) | ||
{ | ||
bw.Write(obj.Serialize()); | ||
} | ||
|
||
return ms.ToArray(); | ||
} | ||
} | ||
|
||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,71 @@ | ||
using System.Collections.Generic; | ||
using System.IO; | ||
using Warcraft.NET.Attribute; | ||
using Warcraft.NET.Files.Interfaces; | ||
using Warcraft.NET.Files.M2.Entries; | ||
|
||
namespace Warcraft.NET.Files.M2.Chunks.Legion | ||
{ | ||
[AutoDocChunk(AutoDocChunkVersionHelper.VersionAfterWoD, AutoDocChunkVersionHelper.VersionBeforeLegion)] | ||
public class LDV1 : IIFFChunk, IBinarySerializable | ||
{ | ||
/// <summary> | ||
/// Holds the binary chunk signature. | ||
/// </summary> | ||
public const string Signature = "LDV1"; | ||
|
||
/// <summary> | ||
/// Gets or sets the Skin FileDataId | ||
/// </summary> | ||
public List<LDV1Entry> LDV1Entries = new(); | ||
|
||
/// <summary> | ||
/// Initializes a new instance of <see cref="LDV1"/> | ||
/// </summary> | ||
public LDV1() { } | ||
|
||
/// <summary> | ||
/// Initializes a new instance of <see cref="LDV1"/> | ||
/// </summary> | ||
/// <param name="inData">ExtendedData.</param> | ||
public LDV1(byte[] inData) => LoadBinaryData(inData); | ||
|
||
/// <inheritdoc /> | ||
public string GetSignature() { return Signature; } | ||
|
||
/// <inheritdoc /> | ||
public uint GetSize() { return (uint)Serialize().Length; } | ||
|
||
/// <inheritdoc /> | ||
public void LoadBinaryData(byte[] inData) | ||
{ | ||
{ | ||
using (var ms = new MemoryStream(inData)) | ||
using (var br = new BinaryReader(ms)) | ||
{ | ||
var LDV1count = br.BaseStream.Length / LDV1Entry.GetSize(); | ||
for (var i = 0; i < LDV1count; ++i) | ||
{ | ||
LDV1Entries.Add(new LDV1Entry(br.ReadBytes(LDV1Entry.GetSize()))); | ||
} | ||
} | ||
} | ||
} | ||
|
||
/// <inheritdoc /> | ||
public byte[] Serialize(long offset = 0) | ||
{ | ||
using (var ms = new MemoryStream()) | ||
using (var bw = new BinaryWriter(ms)) | ||
{ | ||
foreach (LDV1Entry obj in LDV1Entries) | ||
{ | ||
bw.Write(obj.Serialize()); | ||
} | ||
|
||
return ms.ToArray(); | ||
} | ||
} | ||
|
||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
using System; | ||
using System.Collections.Generic; | ||
using System.IO; | ||
using Warcraft.NET.Attribute; | ||
using Warcraft.NET.Files.Interfaces; | ||
using Warcraft.NET.Files.M2.Entries; | ||
|
||
namespace Warcraft.NET.Files.M2.Chunks.Legion | ||
{ | ||
[AutoDocChunk(AutoDocChunkVersionHelper.VersionAfterWoD, AutoDocChunkVersionHelper.VersionBeforeLegion)] | ||
public class PGD1 : IIFFChunk, IBinarySerializable | ||
{ | ||
/// <summary> | ||
/// Holds the binary chunk signature. | ||
/// </summary> | ||
public const string Signature = "PGD1"; | ||
|
||
/// <summary> | ||
/// Gets or sets the Skin FileDataId | ||
/// </summary> | ||
public List<UInt16> PGD1Entries = new(); | ||
|
||
/// <summary> | ||
/// Initializes a new instance of <see cref="PGD1"/> | ||
/// </summary> | ||
public PGD1() { } | ||
|
||
/// <summary> | ||
/// Initializes a new instance of <see cref="PGD1"/> | ||
/// </summary> | ||
/// <param name="inData">ExtendedData.</param> | ||
public PGD1(byte[] inData) => LoadBinaryData(inData); | ||
|
||
/// <inheritdoc /> | ||
public string GetSignature() { return Signature; } | ||
|
||
/// <inheritdoc /> | ||
public uint GetSize() { return (uint)Serialize().Length; } | ||
|
||
/// <inheritdoc /> | ||
public void LoadBinaryData(byte[] inData) | ||
{ | ||
{ | ||
using (var ms = new MemoryStream(inData)) | ||
using (var br = new BinaryReader(ms)) | ||
{ | ||
var PGD1count = br.BaseStream.Length / 2; | ||
for (var i = 0; i < PGD1count; ++i) | ||
{ | ||
PGD1Entries.Add(br.ReadUInt16()); | ||
} | ||
} | ||
} | ||
} | ||
|
||
/// <inheritdoc /> | ||
public byte[] Serialize(long offset = 0) | ||
{ | ||
using (var ms = new MemoryStream()) | ||
using (var bw = new BinaryWriter(ms)) | ||
{ | ||
foreach (UInt16 obj in PGD1Entries) | ||
{ | ||
bw.Write(obj); | ||
} | ||
|
||
return ms.ToArray(); | ||
} | ||
} | ||
|
||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
using System.IO; | ||
using Warcraft.NET.Attribute; | ||
using Warcraft.NET.Files.Interfaces; | ||
|
||
namespace Warcraft.NET.Files.M2.Chunks.Legion | ||
{ | ||
[AutoDocChunk(AutoDocChunkVersionHelper.VersionAfterWoD, AutoDocChunkVersionHelper.VersionBeforeLegion)] | ||
public class TXAC : IIFFChunk, IBinarySerializable | ||
{ | ||
/// <summary> | ||
/// Holds the binary chunk signature. | ||
/// </summary> | ||
public const string Signature = "TXAC"; | ||
|
||
/// <summary> | ||
/// Gets or sets the Skin FileDataId | ||
/// </summary> | ||
public byte[] unk; | ||
|
||
/// <summary> | ||
/// Initializes a new instance of <see cref="TXAC"/> | ||
/// </summary> | ||
public TXAC() { } | ||
|
||
/// <summary> | ||
/// Initializes a new instance of <see cref="TXAC"/> | ||
/// </summary> | ||
/// <param name="inData">ExtendedData.</param> | ||
public TXAC(byte[] inData) => LoadBinaryData(inData); | ||
|
||
/// <inheritdoc /> | ||
public string GetSignature() { return Signature; } | ||
|
||
/// <inheritdoc /> | ||
public uint GetSize() { return (uint)Serialize().Length; } | ||
|
||
/// <inheritdoc /> | ||
public void LoadBinaryData(byte[] inData) | ||
{ | ||
using (var ms = new MemoryStream(inData)) | ||
using (var br = new BinaryReader(ms)) | ||
{ | ||
unk = br.ReadBytes((int)br.BaseStream.Length); | ||
} | ||
} | ||
|
||
/// <inheritdoc /> | ||
public byte[] Serialize(long offset = 0) | ||
{ | ||
using (var ms = new MemoryStream()) | ||
using (var bw = new BinaryWriter(ms)) | ||
{ | ||
bw.Write(unk); | ||
|
||
return ms.ToArray(); | ||
} | ||
} | ||
} | ||
} |
Oops, something went wrong.