public SetGameChatCommand() : base(MixItUp.Base.Resources.SetGame, "setgame", 5, UserRoleEnum.Mod) { this.Actions.Add(new CustomAction(async(UserViewModel user, IEnumerable <string> arguments) => { if (ChannelSession.Services.Chat != null) { if (arguments.Count() > 0) { string name = string.Join(" ", arguments).ToLower(); IEnumerable <Twitch.Base.Models.NewAPI.Games.GameModel> games = await ChannelSession.TwitchUserConnection.GetNewAPIGamesByName(name); if (games != null && games.Count() > 0) { Twitch.Base.Models.NewAPI.Games.GameModel game = games.FirstOrDefault(g => g.name.ToLower().Equals(name)); if (game == null) { game = games.First(); } await ChannelSession.TwitchUserConnection.UpdateV5Channel(ChannelSession.TwitchChannelV5, game: game); await ChannelSession.RefreshChannel(); await ChannelSession.Services.Chat.SendMessage("Game Updated: " + game.name); return; } await ChannelSession.Services.Chat.SendMessage("We could not find a game with that name"); } else { await ChannelSession.Services.Chat.SendMessage("Usage: !setgame <GAME NAME>"); } } })); }
public override async Task CustomRun(CommandParametersModel parameters) { if (parameters.Arguments.Count() > 0) { string name = string.Join(" ", parameters.Arguments).ToLower(); IEnumerable <Twitch.Base.Models.NewAPI.Games.GameModel> games = await ChannelSession.TwitchUserConnection.GetNewAPIGamesByName(name); if (games != null && games.Count() > 0) { Twitch.Base.Models.NewAPI.Games.GameModel game = games.FirstOrDefault(g => g.name.ToLower().Equals(name)); if (game == null) { game = games.First(); } await ChannelSession.TwitchUserConnection.UpdateV5Channel(ChannelSession.TwitchChannelV5, game : game); await ChannelSession.RefreshChannel(); await ChannelSession.Services.Chat.SendMessage("Game Updated: " + game.name); return; } await ChannelSession.Services.Chat.SendMessage("We could not find a game with that name"); } else { await ChannelSession.Services.Chat.SendMessage("Usage: !setgame <GAME NAME>"); } }