Example #1
0
        protected override void OnModuleBuilding(CommandService commandService, ModuleBuilder builder)
        {
            base.OnModuleBuilding(commandService, builder);

            TwitchBot.BotEntry.RegisterItem <Showel>();
            TwitchBot.BotEntry.RegisterItem <Snowball>();
            TwitchBot.BotEntry.RegisterItem <DirtBall>();
            TwitchBot.BotEntry.RegisterItem <Shoe>();
            BotEntry.RegisterItem <Gag>();
        }
Example #2
0
        public async Task PerformReturn(params string[] s)
        {
            if (ByeMentioned.ContainsKey(Context.User.Username))
            {
                var date = ByeMentioned[Context.User.Username];
                ByeMentioned.Remove(Context.User.Username);

                Reply($"@{Context.User.Nick} вернулся спустя {BotEntry.FormateDate(DateTimeOffset.Now.LocalDateTime - date.LocalDateTime)}");
                return;
            }
        }
Example #3
0
        protected override void OnModuleBuilding(CommandService commandService, ModuleBuilder builder)
        {
            base.OnModuleBuilding(commandService, builder);

            Config = new DustConfig(Storage = (DesktopStorage)BotEntry.Storage.GetStorageForDirectory("Dust"));
            Config.Load();

            Colldown    = Config.GetBindable <int>(DustConfigEnum.GainTime);
            SubMultiply = Config.GetBindable <int>(DustConfigEnum.SubMul);

            DustRecalculateTime = DateTimeOffset.Now.AddSeconds(Colldown);

            BotEntry.RegisterItem <RedstoneTorch>();
            BotEntry.RegisterItem <Piston>();

            BotEntry.OnTickActions += OnTick;
            BotEntry.OnExiting     += () =>
            {
                Config.Save();
            };
        }
Example #4
0
 /// <summary>
 /// Создаёт конфигурацию с одним ботом
 /// </summary>
 /// <param name="entry">Информация о боте</param>
 public BotXConfig(BotEntry entry) => AddEntry(entry);
        public async Task Uptime(params string[] sttt)
        {
            using (WebRequest req = new WebRequest($@"https://beta.decapi.me/twitch/uptime/{BotEntry.Channel.Value.Substring(1, BotEntry.Channel.Value.Length - 1)}"))
            {
                try
                {
                    req.Failed += (e) =>
                    {
                        Reply($"При выполнении запроса произошла ошибка: {e.Message}");
                    };
                    req.Perform();
                    if (req.Completed)
                    {
                        var  vars    = req.ResponseString.Split(' ');
                        bool offline = false;
                        if (vars.Length == 3)
                        {
                            if (vars[2] == "offline")
                            {
                                Reply($"@{Context.User.Nick}, Стрим оффлайн");
                                return;

                                offline = true;
                            }
                            else
                            {
                                offline = false;
                            }
                        }
                        if (!offline)
                        {
                            int d = 0, h = 0, m = 0, sec = 0;
                            var param = req.ResponseString.Split(',');
                            foreach (var it in param)
                            {
                                string s = it;
                                if (it[0] == ' ')
                                {
                                    s = s.Substring(1, s.Length - 1);
                                }
                                var pair = s.Split(' ');
                                if (pair[1] == "day" || pair[1] == "days")
                                {
                                    int.TryParse(pair[0], out d);
                                }
                                else if (pair[1] == "hour" || pair[1] == "hours")
                                {
                                    int.TryParse(pair[0], out h);
                                }
                                else if (pair[1] == "minute" || pair[1] == "minutes")
                                {
                                    int.TryParse(pair[0], out m);
                                }
                                else if (pair[1] == "second" || pair[1] == "seconds")
                                {
                                    int.TryParse(pair[0], out sec);
                                }
                            }

                            Reply($"@{Context.User.Nick}, Стрим работает уже {BotEntry.FormateDate(d, h, m, sec)}");
                            return;
                        }
                    }
                }
                catch (Exception e)
                {
                    return;
                }
            }
        }