include "Enum/MissionDifficulty.fbs";
include "Enum/MissionType.fbs";

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

enum MissionCategory : byte
{
    None = 0,
    Battle = 1,
    Field = 2,
    Camera = 3,
    Max = 4,
}

enum MissionGrade : byte
{
    Normal = 0,
    Bonus = 1,
    Team = 2,
}

enum MissionReleaseType : int
{
    NONE = 0,
}

struct MissionInfo {
    MissionCategory:MissionCategory;
    MissionType:MissionType;
    MissionId:int;
    Goal:short;
    RewardBp:int;
    ReloadBp:int;
    MissionReleaseType:MissionReleaseType;
    MissionGrade:MissionGrade;
    Difficulty:MissionDifficulty;
    Weight:float;
}

table MissionInfos {
    Mission_Info:MissionInfo (required);
}

table MissionInfosArray (fs_serializer) {
    Table:[MissionInfos] (required);
}

root_type MissionInfosArray;
