using System; namespace Discord.Commands { public static class MessageExtensions { public static bool HasCharPrefix(this IUserMessage msg, char c, ref int argPos) { var text = msg.Content; if (text.Length > 0 && text[0] == c) { argPos = 1; return true; } return false; } public static bool HasStringPrefix(this IUserMessage msg, string str, ref int argPos, StringComparison comparisonType = StringComparison.Ordinal) { var text = msg.Content; if (text.StartsWith(str, comparisonType)) { argPos = str.Length; return true; } return false; } public static bool HasMentionPrefix(this IUserMessage msg, IUser user, ref int argPos) { var text = msg.Content; if (text.Length <= 3 || text[0] != '<' || text[1] != '@') return false; int endPos = text.IndexOf('>'); if (endPos == -1) return false; if (text.Length < endPos + 2 || text[endPos + 1] != ' ') return false; //Must end in "> " ulong userId; if (!MentionUtils.TryParseUser(text.Substring(0, endPos + 1), out userId)) return false; if (userId == user.Id) { argPos = endPos + 2; return true; } return false; } } }