Closed SamVanheer closed 1 year ago
Wad file lumps currently do not allow default construction: https://github.com/LogicAndTrick/sledge-formats/blob/b9b5f956a694a5faa9a307afb364c090573c2d05/Sledge.Formats.Texture/Wad/Lumps/MipTextureLump.cs
When creating new wad files this requires the lumps to be re-implemented to support this:
internal sealed class JobMipTextureLump : MipTexture, ILump { public LumpType Type => LumpType.MipTexture; public int Write(BinaryWriter bw) { var pos = bw.BaseStream.Position; Write(bw, true, this); return (int)(bw.BaseStream.Position - pos); } }
WadFile wadFile = new(WadVersion.Wad3); foreach (var texture in bspFile.Textures.Where(t => t.NumMips > 0)) { JobMipTextureLump lump = new() { Name = texture.Name, Width = texture.Width, Height = texture.Height, NumMips = texture.NumMips, MipData = texture.MipData, Palette = texture.Palette }; wadFile.AddLump(texture.Name, lump); } using var stream = File.Open(wadFileName, FileMode.Create); wadFile.Write(stream);
Adding a public default constructor to the lumps should suffice.
Wad file lumps currently do not allow default construction: https://github.com/LogicAndTrick/sledge-formats/blob/b9b5f956a694a5faa9a307afb364c090573c2d05/Sledge.Formats.Texture/Wad/Lumps/MipTextureLump.cs
When creating new wad files this requires the lumps to be re-implemented to support this:
Adding a public default constructor to the lumps should suffice.