void AdminCommands(OnMessageReceivedArgs e) { if (e.ChatMessage.IsBroadcaster || e.ChatMessage.Username.ToLower().Equals("azatkzn")) { switch (e.ChatMessage.Message.ToLower()) { case "!shopchange": if (isOn) { ShopAction.ChangeCars(e, this); } break; case "!on": isOn = true; this.SendMessage(e.ChatMessage.Channel, "Бот включен!!!"); break; case "!off": isOn = false; groupRaceIsOn = false; this.SendMessage(e.ChatMessage.Channel, "Бот выключен!!!"); break; case "!racestart": if (groupRaceIsOn) { return; } groupRaceIsOn = true; this.GroupRaceControl(e.ChatMessage.Channel); break; case "!kill": Logger.LogInfo("!kill - System.Environment.FailFast()"); System.Environment.FailFast("!kill"); this.CloseNotFinishedGroupRace(); break; } } }
public static void Main(string[] args) { try { Config.LoadConfig(); if (Config.IsNeedUpdateDatabase) { using (var context = new AppDbContext()) { context.Database.Migrate(); } } Module.Initialize(); var bot = new Bot(); var pubSubBot = new PubSubBot(); Minutes = Config.ShopShowMinutes; while (true) { if (Minutes >= Config.ShopShowMinutes && bot.IsOn) { ShopAction.ChangeCars(Config.Channel, bot); } Minutes += 5; Thread.Sleep(TimeSpan.FromMinutes(5)); } } catch (Exception ex) { Logger.Log(ex); if (count < 5) { count++; Main(null); } } }
public async void CheckMessage(OnMessageReceivedArgs e) { await Task.Run(() => { try { var message = e.ChatMessage.Message.ToLower().Trim(); switch (message) { case "!testdrive": // тестовый зазд SoloRaces.Race(e, this); break; case "!info": // характеристики пользователя UserActions.ShowInfo(e, this); break; case "!join": // присоединение к групповому заеду GroupRaceHandler.JoinToRace(e, this); break; case "!shop": // доступные для покупки машины ShopAction.ShowCarsForSale(e, this); break; case "!car": // инфа об авто UserActions.ShowUserCar(e, this); break; case "!start": // команда для начала игры UserActions.CreateUser(e, this); break; case "!game": // описание игры, с командами ShowGameInfo(e.ChatMessage.Channel); break; default: { if (message.StartsWith("!lvlup")) // улучшение характеристик пользователя { UserActions.Upgrade(e, this); } else if (message.StartsWith("!iirace")) // гонка с компьютером { RaceWithAI.Race(e, this); } else if (message.StartsWith("!buy")) // покупка авто { ShopAction.BuyAuto(e, this); } AdminCommands(e); break; } } } catch (Exception ex) { Logger.Log(ex); } }); }