include "Shared/DevID.fbs";
include "Shared/SexType.fbs";
include "Shared/RibbonType.fbs";
include "Area/EnableTable.fbs";
include "Area/BringItem.fbs";
include "VersionTable.fbs";

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

table DeliveryOutbreakPokeData {
    ID:ulong;
    DevId:DevID;
    Sex:SexType;
    FormId:byte;
    MinLevel:short;
    MaxLevel:short;
    Area:AreaNo;
    LocationName:ulong;
    Enable:EnableTable;
    Version:VersionTable;
    Item:BringItem;
    EnableRarePercentage:bool;
    RarePercentage:float;
    AddRibbonType:RibbonType;
    AddRibbonPercentage:float;
    EnableScaleRange:bool;
    MinScale:short;
    MaxScale:short;
}

table AreaNo {
    Area01:bool;
    Area02:bool;
    Area03:bool;
    Area04:bool;
    Area05:bool;
    Area06:bool;
    Area07:bool;
    Area08:bool;
    Area09:bool;
    Area10:bool;
    Area11:bool;
    Area12:bool;
    Area13:bool;
    Area14:bool;
    Area15:bool;
    Area16:bool;
    Area17:bool;
    Area18:bool;
    Area19:bool;
    Area20:bool;
    Area21:bool;
    Area22:bool;
    Area23:bool;
}

table DeliveryOutbreakPokeDataArray (fs_serializer) {
    Table:[DeliveryOutbreakPokeData] (required);
}

root_type DeliveryOutbreakPokeDataArray;
