public static partial void FillBinaryFlagsCustom(MutagenFrame frame, IFurnitureInternal item) { var subFrame = frame.ReadSubrecordFrame(); // Read flags like normal item.Flags = (Furniture.Flag)BinaryPrimitives.ReadUInt16LittleEndian(subFrame.Content); }
public static partial void FillBinaryFlags2Custom(MutagenFrame frame, IFurnitureInternal item) { // Clear out old stuff // This assumes flags will be parsed first. Might need to be upgraded to not need that assumption item.Markers = null; item.Flags = FillBinaryFlags2(frame, (i) => GetNthMarker(item, i), item.Flags); }
public static FurnitureMarker GetNthMarker(IFurnitureInternal item, int index) { if (item.Markers == null) { item.Markers = new ExtendedList <FurnitureMarker>(); } if (!item.Markers.TryGet(index, out var marker)) { while (item.Markers.Count <= index) { item.Markers.Add(new FurnitureMarker()); } marker = item.Markers[^ 1];