namespace XGame.Editor.Build
{
    /// <summary>
    /// Build命令优先级, 越小越早
    /// </summary>
    internal enum BuildCommandPriority : uint
    {
        #region 平台及项目等基础设置
        SwitchPlatform = 0,
        SetPlayerSettings,
        SetScriptingDefine,
        #endregion

        #region Addressable及Assetbundle
        /// <summary>
        /// AB打包前的准备工作
        /// 预留给项目自定义Command
        /// </summary>
        PreAssetbundle = 100,
        PackSpriteAtlas,
        BuildAssetBundle,
        SerializeConfigs,
        /// <summary>
        /// AB打包完回调
        /// 预留给项目自定义Command
        /// </summary>
        PostAssetbundle,
        #endregion

        BuildHybridclr = 200,
        #region 分包、文件替换、拷贝等
        /// <summary>
        /// ExtAssets处理前的准备工作
        /// 预留给项目自定义Command
        /// </summary>
        PreExtAssets = 300,
        I18NPlotHashKey = 400,
        //AlphaChannelSeparate,
        ExportAssets = 500,
        /// <summary>
        /// ExtAssets处理完回调
        /// 预留给项目自定义Command
        /// </summary>
        PostExtAssets,
        #endregion

        #region BuildPlayer
        BuildPlayer = 1000,
        BuildPostProcessor,
        EncryptGlobalMetadata,
        #endregion
    }
}
