static void GenerateEnums()
        {
            var data = GameFrameworkSettings.Database.GameData;

            for (int i = 0; i < data.Length; i++)
            {
                if (data[i] is IArchetypeNames)
                {
                    var archetypeInterface = data[i] as IArchetypeNames;
                    var names = archetypeInterface.ArchetypeNames;

                    ConstantsGeneratorKit.RebuildEnumClass(EnumFiles[i], names);
                }
            }
        }
    static void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths)
    {
        var resourcesDidChange = importedAssets.Any(s => Regex.IsMatch(s, @"/Resources/.*", System.Text.RegularExpressions.RegexOptions.IgnoreCase));

        if (!resourcesDidChange)
        {
            resourcesDidChange = movedAssets.Any(s => Regex.IsMatch(s, @"/Resources/.*", System.Text.RegularExpressions.RegexOptions.IgnoreCase));
        }

        if (!resourcesDidChange)
        {
            resourcesDidChange = deletedAssets.Any(s => Regex.IsMatch(s, @"/Resources/.*", System.Text.RegularExpressions.RegexOptions.IgnoreCase));
        }

        if (resourcesDidChange)
        {
            ConstantsGeneratorKit.rebuildConstantsClasses(true, false, false);
        }


        // layers and tags changes
        if (importedAssets.Contains("ProjectSettings/TagManager.asset"))
        {
            if (!_lastTagsAndLayersBuildTime.HasValue || _lastTagsAndLayersBuildTime.Value.AddSeconds(5) < DateTime.Now)
            {
                _lastTagsAndLayersBuildTime = DateTime.Now;
                ConstantsGeneratorKit.rebuildConstantsClasses(false, false);
            }
        }


        // scene changes
        if (importedAssets.Contains("ProjectSettings/EditorBuildSettings.asset"))
        {
            if (!_lastScenesBuildTime.HasValue || _lastScenesBuildTime.Value.AddSeconds(5) < DateTime.Now)
            {
                _lastScenesBuildTime = DateTime.Now;
                ConstantsGeneratorKit.rebuildConstantsClasses(false, true);
            }
        }
    }