示例#1
0
        public static string GetRandomEmoji(EmojiFlags flags)
        {
            Random rand = new Random();
            IEnumerable <EmojiEntry> matches = emojiIndex.Where(e => e.mFlags.HasFlag(flags));
            EmojiEntry selection             = matches.ElementAt(rand.Next(matches.Count()));

            Emoji.UnicodeSequence outSequence = new Emoji.UnicodeSequence(1);
            outSequence.Add(selection.mEmoji);
            if (selection.mFlags.HasFlag(EmojiFlags.HasSkinTone))
            {
                outSequence.Add(GetRandomSkinTone(rand));
            }

            if (selection.mFlags.HasFlag(EmojiFlags.HasGender))
            {
                Emoji.UnicodeString?gender = GetRandomGender(rand);
                if (gender != null)
                {
                    outSequence.Add(ZWJ);
                    outSequence.Add(gender.Value);
                    outSequence.Add(Emoji.VariationSelectors.VS16);
                }
            }

            return(outSequence.ToString());
        }
示例#2
0
 public EmojiEntry(Emoji.UnicodeString emoji, EmojiFlags flags)
 {
     mEmoji = emoji;
     mFlags = flags;
 }