1
0
mirror of synced 2025-02-20 20:51:35 +01:00

Fix part panes with pane info section (smash main menu)

This commit is contained in:
KillzXGaming 2019-12-07 21:24:45 -05:00
parent cbdce592ab
commit 851cbf380f

View File

@ -1848,6 +1848,12 @@ namespace LayoutBXLYT.Cafe
writer.WriteString(LayoutFileName);
writer.Align(4);
for (int i = 0; i < Properties.Count; i++)
Properties[i].WritePaneInfo(writer, header, startPos);
for (int i = 0; i < Properties.Count; i++)
Properties[i].WriteUserData(writer, header, startPos);
for (int i = 0; i < Properties.Count; i++)
Properties[i].WriteProperties(writer, header, startPos);
}
@ -1863,6 +1869,8 @@ namespace LayoutBXLYT.Cafe
public BasePane Property { get; set; }
public byte[] PaneInfo { get; set; }
public PartProperty(FileReader reader, Header header, long StartPosition)
{
Name = reader.ReadString(0x18, true);
@ -1916,7 +1924,7 @@ namespace LayoutBXLYT.Cafe
if (panelInfoOffset != 0)
{
reader.SeekBegin(StartPosition + panelInfoOffset);
PaneInfo = reader.ReadBytes(52);
}
reader.SeekBegin(pos);
@ -1945,6 +1953,20 @@ namespace LayoutBXLYT.Cafe
Header.WriteSection(writer, Property.Signature, Property, () => Property.Write(writer, header));
}
}
public void WriteUserData(FileWriter writer, LayoutHeader header, long startPos)
{
}
public void WritePaneInfo(FileWriter writer, LayoutHeader header, long startPos)
{
if (PaneInfo != null)
{
writer.WriteUint32Offset(_ofsPos + 8, startPos);
writer.Write(PaneInfo);
}
}
}
public class USD1 : UserData