namespace pkNX.Structures.FlatBuffers.Arceus;
attribute "fs_serializer";

table DressUpEntry {
    EntryName:string (required);
    Field_1:uint;
    Field_2:uint;
    PartHash:ulong;
    Field_4:uint;
    ColorHash:ulong;
    Field_6:uint;
    Field_7:uint;
    Field_8:uint;
    UnlockFlag:ulong;
    Field_10:uint;
    Field_11:uint;
    Field_12:uint;
    Field_13:uint;
    Field_14:uint; // Never used
    Field_15:string (required); //Might be a string?
    Field_16:uint;
    Field_17:uint;
    Field_18:uint;
    Field_19:uint;
    Field_20:string (required); //Might be a string?
    Field_21:uint;
    Field_22:uint;
    Field_23:uint;
    Field_24:uint;
    HideHash_0:ulong;
    HideHash_1:ulong;
    HairStyleName:string (required);
    FaceName:string (required);
    EyeBName:string (required);
    EyeWName:string (required);
    HeadwearName:string (required);
    TopName:string (required);
    BottomName:string (required);
    DressName:string (required);
    FootwearName:string (required);
    BagName:string (required);
    UnusedName:string (required);
    Field_38:byte;
    SlotName:string (required);
    PartIndex0:string (required);
    PartIndex1:string (required);
    PartIndex2:string (required);
    PartIndex3:string (required);
    PartIndex4:string (required);
    ConfigMotionPath:string (required);
    DefaultMotionPath:string (required);
    DataPath:string (required);
    DefaultPartName:string (required);
    MotionPath:string (required);
    Field_50:ubyte;
    Field_51:uint; // Unused
    CategoryName:string (required);
    SubCategoryName:string (required);
}

table DressUpTable (fs_serializer) {
    Table:[DressUpEntry] (required);
}

root_type DressUpTable;
