コード例 #1
0
ファイル: Program.cs プロジェクト: pahavisal/Sally.NET
        private async Task Client_Ready()
        {
            AddonLoader.Load(Client);
            Assembly[]  assemblies     = AppDomain.CurrentDomain.GetAssemblies();
            List <Type> commandClasses = new List <Type>();

            foreach (Assembly assembly in assemblies)
            {
                commandClasses.AddRange(assembly.GetTypes().Where(t => t.IsSubclassOf(typeof(ModuleBase)) && !t.IsAbstract).ToList());
            }

            checkNewUserEntries();
            StatusNotifierService.InitializeService(Me);
            MusicCommands.Initialize(Client);
            RoleManagerService.InitializeHandler(Client, BotConfiguration);
            ApiRequestService.Initialize(BotConfiguration);
            UserManagerService.InitializeHandler(Client);
            await CommandHandlerService.InitializeHandler(Client, BotConfiguration, commandClasses, prefixDictionary, !CredentialManager.OptionalSettings.Contains("CleverApi"));

            CacheService.InitializeHandler();
            VoiceRewardService.InitializeHandler(Client, BotConfiguration, !CredentialManager.OptionalSettings.Contains("CleverApi"));
            switch (startValue)
            {
            case 0:
                //shutdown
                break;

            case 1:
                //restarting
                await Me.SendMessageAsync("I have restored and restarted successfully.");

                break;

            case 2:
                //updating
                //check if an update is nessasarry
                await Me.SendMessageAsync("I at all the new features and restarted successfully.");

                break;

            default:
                break;
            }
            if (!CredentialManager.OptionalSettings.Contains("WeatherApiKey"))
            {
                if (!CredentialManager.OptionalSettings.Contains("WeatherPlace"))
                {
                    MoodDictionary.InitializeMoodDictionary(Client, BotConfiguration);
                    await MoodHandlerService.InitializeHandler(Client, BotConfiguration);
                }
                WeatherSubscriptionService.InitializeWeatherSub(Client, BotConfiguration);
            }
        }