private void JudgeThem() { if (CurrentEmployee.fresh) { CurrentEmployee.fresh = false; if (_Sentence.Verb.MoodChange == MoodChange.Positive) { CurrentEmployee.BoostMood(); } else if (CurrentEmployee.job != _Sentence.Verb.Job) { CurrentEmployee.ChangeJob(_Sentence.Verb.Job); } else { CurrentEmployee.DropMood(); } MakeThemWork(); } if (CurrentEmployee.Done) { ResetButtons(); Employees.RemoveAt(0); Employees.Add(CurrentEmployee); CurrentEmployee.transform.parent = Que.transform; CurrentEmployee.transform.localPosition = Vector3.zero; CurrentEmployee = null; _Sentence = new Sentance(); } }
public void ProcessSentance(string inputSentance) { inputSentance = inputSentance.ToLower(); inputSentance = inputSentance.Replace(",", " , "); inputSentance = inputSentance.Replace("?", " ? "); inputSentance = inputSentance.Replace(".", " . "); inputSentance = inputSentance.Replace("!", " ! "); Console.WriteLine("input" + inputSentance); var words = inputSentance.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); var wordCollection = new List <Word>(); foreach (var textWord in words) { Console.WriteLine(textWord); var word = book.GetWord(textWord); wordCollection.Add(word); } var sentance = new Sentance(wordCollection); Console.WriteLine(sentance.ToString()); }
private TriviaQuestion ParseDefenition(string htmlContent) { const string separator = "—"; var paragraph = ExctractFirstParagraph(htmlContent); paragraph = Regex.Replace(paragraph, SquareBracetsPattern, string.Empty); var paragraphEntity = new Text(paragraph); var fullDefinition = paragraphEntity.Sentances[0].Text; var separatorIndex = fullDefinition.IndexOf(separator); var definition = fullDefinition.Substring(0, separatorIndex - 1); definition = Regex.Replace(definition, @"(\(.*?\))", string.Empty); var definitionText = fullDefinition.Substring(separatorIndex + 2); definitionText = definitionText[0].ToString().ToUpper() + definitionText.Substring(1); // Wrong angsers: var text = string.Join(". ", ExtractParagraps(htmlContent)); var cleanText = new Text(Regex.Replace(text, SquareBracetsPattern, string.Empty)); var cleanSentances = CleanFromGarbish(cleanText.Sentances.Select(s => s.Text)).ToList(); var valueableWords = cleanSentances .SelectMany(s => new Sentance(s).Words .Where(w => !s.StartsWith(w) && char.IsUpper(w[0])).ToList()) .Distinct().ToList(); var wrong1 = string.Empty; var wrong2 = string.Empty; var wrong3 = string.Empty; if (valueableWords.Count > 1) { wrong1 = valueableWords.RandomElement(); valueableWords.Remove(wrong1); } else { wrong1 = new Sentance(cleanSentances.RandomElement()).Words.RandomElement(); } if (valueableWords.Count > 1) { wrong2 = valueableWords.RandomElement(); valueableWords.Remove(wrong2); } else { wrong2 = new Sentance(cleanSentances.RandomElement()).Words.RandomElement(); } if (valueableWords.Count > 1) { wrong3 = valueableWords.RandomElement(); valueableWords.Remove(wrong3); } else { wrong3 = new Sentance(cleanSentances.RandomElement()).Words.RandomElement(); } var shuffledAnswers = new List <string> { wrong1, "*", wrong2, wrong3 }; shuffledAnswers.Shuffle(); var correctIndex = shuffledAnswers.IndexOf("*"); shuffledAnswers[correctIndex] = definition; var triviaQuestion = new TriviaQuestion { Question = definitionText, Correct = correctIndex + 1, Answers = shuffledAnswers }; GC.Collect(); return(triviaQuestion); }