public void RemoveAllReactionMessages(int type) { if (ReactionMessages.ContainsValue(type)) { foreach (var item in ReactionMessages.Where(kvp => kvp.Value == type).ToList()) { ReactionMessages.Remove(item.Key); } } }
private static void AddCustomMessages(AITalker talker) { talker.AttackMessages.AddRange( AttackMessages.Select((message) => new TyperMessage { Text = message }) ); talker.AngryMessages.AddRange( AngryMessages.Select((message) => new TyperMessage { Text = message }) ); talker.DeathMessages.AddRange( DeathMessages.Select((message) => new TyperMessage { Text = message }) ); talker.EquipmentMessages.AddRange( EquipmentMessages.Select((message) => new TyperMessage { Text = message }) ); talker.JokeMessages.AddRange( JokeMessages.Select((message) => new TyperMessage { Text = message }) ); talker.ReactionMessages.AddRange( ReactionMessages.Select((message) => new TyperMessage { Text = message }) ); talker.ReloadMessages.AddRange( ReloadMessages.Select((message) => new TyperMessage { Text = message }) ); }
private async Task ReactionAddedOrRemoved(Cacheable <IUserMessage, ulong> cache, ISocketMessageChannel channel, SocketReaction reaction) { if (reaction.User.Value.IsBot) { return; } if (ReactionMessages.Contains(cache.Id)) { AnimaCharacter character = CharacterRepository.FindCurrentByMention <AnimaCharacter>(reaction.User.Value.Mention); if (character == null) { await channel.SendMessageAsync("Error 404: Character not found or not loaded!"); return; } await channel.SendMessageAsync(string.Format("{0} {1}", reaction.User.Value.Mention, character.Roll(EmotesAction[reaction.Emote].ToLower(), 0))); } if (HelpMessages.ContainsKey(cache.Id)) { if (reaction.Emote.Name == "\U000025c0")//Previous page { var msg = await cache.GetOrDownloadAsync(); await msg.ModifyAsync(x => { x.Content = ""; x.Embed = HelpMessages[cache.Id].GetPreviousPage().Build(); }); } else if (reaction.Emote.Name == "\U000025b6")//Next page { var msg = await cache.GetOrDownloadAsync(); await msg.ModifyAsync(x => { x.Content = ""; x.Embed = HelpMessages[cache.Id].GetNextPage().Build(); }); } } }