include "PlacementShared.fbs";
namespace pkNX.Structures.FlatBuffers.SWSH;

table PlacementZoneNestHoleHolder
{
    Field_00:PlacementZone_F21_A (required);
    Field_01:bool;
    Field_02:int; // 0,2,6,270,64,12
    Common:ulong;
    Rare:ulong;
    Field_05:bool;

    /// If a flag hash is specified, the savefile value must be true in order for the nest to be enabled.
    EnableSpawns:ulong;
}

table PlacementZone_F21_A {
    Field_00:PlacementZone_F21_B (required);
}

table PlacementZone_F21_B {
    Field_00:PlacementZoneMetaTripleXYZ (required);
    Field_01:string (required); // none have this
    Field_02:string (required); // none have this
    Field_03:float;
    Field_04:float;
    Field_05:string (required); // none have this
    Field_06:string (required); // none have this
    Field_07:float; // unused
    Field_08:float; // unused
    Field_09:float; // unused
    Field_10:float;
    Field_11:PlacementZone_F21_IntFloat (required);
    Field_12:uint; // unused
    Field_13:PlacementZone_F21_IntFloat (required);
    Field_14:PlacementZone_F21_BoolObject14 (required);
}

table PlacementZone_F21_IntFloat {
    Field_00:int;
    Field_01:float; // unused in all
    Field_02:float; // unused in all
    Field_03:float; // unused in all
    Field_04:float;
}

table PlacementZone_F21_BoolObject14 {
    Type:ubyte;
    Object:PlacementZone_F21_Inner (required);
}

table PlacementZone_F21_Inner {
    Field_00:float; // unused
    Field_01:float;
}
