public static string Lexiconify(string msg) { char[] array = new char[0]; string[] array2 = msg.Split(new char[] { ' ' }); string result; if (LexiconClass.rand.Next(0, 100) <= LexiconPlugin.config.HurrDurrChancePercentage && LexiconPlugin.config.ReplaceWithHurrDurr) { result = LexiconClass.ReplaceWithHurrDurr(msg); } else if (LexiconClass.rand.Next(0, 100) <= LexiconPlugin.config.RandomPhrasesChancePercentage && LexiconPlugin.config.SayRandomPhrases) { result = LexiconClass.SayRandomBullshit(); } else { for (int i = 0; i < array2.Length; i++) { string key = array2[i].ToLower(); if (LexiconPlugin.config.LexiconWords.ContainsKey(key)) { array = LexiconPlugin.config.LexiconWords[key].ToArray <char>(); for (int j = 0; j < array.Length; j++) { if (j < array2[i].Length) { if (char.IsUpper(array2[i][j])) { array[j] = char.ToUpper(array[j]); } } } array2[i] = new string(array); } } string text = string.Join(" ", array2); if (LexiconClass.rand.Next(0, 100) <= LexiconPlugin.config.TypoChancePercentage && LexiconPlugin.config.InsertRandomTypos) { text = LexiconClass.InsertRandomTypo(string.Join(" ", array2)); } result = text; } return(result); }