示例#1
0
        public static Addon Parse(string folder, string keyPrefix = "builtin")
        {
            Addon newAddon = new Addon();

            newAddon._keyPrefix = keyPrefix;
            newAddon.BasePath   = folder;
            newAddon.ProcessManifest();

            if (keyPrefix != "builtin")
            {
                newAddon.SudoAccess = false;
            }

            Logger.Info("[ADDON] Found Addon: " + newAddon.Key + " - " + newAddon.Name);

            newAddon.Interops.Add("permissions", new Permissions.PermissionInterop(newAddon));
            newAddon.SetupConfig();


            if (keyPrefix == "builtin")
            {
                newAddon._pluginsEnabled = true;
            }

            if (newAddon.Enabled)
            {
                newAddon.OnEnabled(false);
            }

            ConfigUtility.RegisterAddonConfig(newAddon);

            return(newAddon);
        }