//when new word is picked public void ResetGame() { TheWordText.Text = "The Word Being Guessed:"; PossibleText.Text = "# of Possible Words Left:"; LettersLeftText.Text = "Letters Left:"; BadGuessesText.Text = "Bad Guesses:"; GoodGuessesText.Text = "Good Guesses:"; GuessesLeftText.Text = "Guesses Left:"; GoodGuessesText.Hide(); GuessCount = 9; GameStarted = true; GuessCountLabel.Text = GuessCount.ToString(); GuessCountLabel.Show(); WinningGif.Hide(); RightButton.Show(); WrongButton.Show(); GuessText.Show(); GoodGuesses = ""; BadGuesses = ""; PossibleLetters = "etainoshrdlucmfwygpbvkqjxz"; //most popular letters based on https://en.oxforddictionaries.com/explore/which-letters-are-used-most GuessesSoFar = ""; label1.Text = ""; label2.Text = ""; test.Text = ""; TheWord = ""; Guess = PossibleLetters[0].ToString(); label2.Text = Guess; IndexButton.Hide(); IndexInfo.Hide(); TipText.Hide(); }
private void MakeGuess(bool correct) { //if game has started if (GameStarted && GuessCount > 0) { try { //letter is a good guess if (correct) { IndexButton.Show(); IndexInfo.Show(); TipText.Show(); WrongButton.Hide(); RightButton.Hide(); }//letter is a bad guess else { BadGuesses += Guess; PossibleLetters = PossibleLetters.Replace(Guess, ""); Guess = PossibleLetters[0].ToString(); label2.Text = TheWord; GuessText.Text = Guess; label1.Text = BadGuesses; GuessCount--; GuessCountLabel.Text = GuessCount.ToString(); //remove words from list containing bad guessed letter PossibleWordSet = new SortedSet <string>(from p in PossibleWordSet where !p.Contains(Guess) select p); possible.Text = PossibleLetters; possiblewordcount.Text = PossibleWordSet.Count.ToString(); } if (GuessCount == 0) { WinningGif.Show(); RightButton.Hide(); WrongButton.Hide(); GuessText.Hide(); } //if (label2.Text == TheWord) //{ // RightButton.Hide(); // WrongButton.Hide(); //} } catch (Exception ex) { Debug.WriteLine(ex); } } }
public Form1() { InitializeComponent(); PlayButton.Hide(); numericUpDown1.Hide(); GuessCountLabel.Hide(); WinningGif.Hide(); GuessButton.Hide(); }
//on form start private void Form1_Load(object sender, EventArgs e) { ObtainWordList(); GoodGuesses = ""; BadGuesses = ""; GuessText.Hide(); WinningGif.Hide(); TipText.Hide(); }
public Form1() { InitializeComponent(); PlayButton.Hide(); numericUpDown1.Hide(); GuessCountLabel.Hide(); WinningGif.Hide(); WrongButton.Hide(); RightButton.Hide(); IndexInfo.Hide(); IndexButton.Hide(); guessRightLabel.Hide(); }
//when new word is picked public void ResetGame() { GuessCount = 9; GameStarted = true; GuessCountLabel.Text = GuessCount.ToString(); GuessCountLabel.Show(); WinningGif.Hide(); GuessButton.Show(); GoodGuesses = ""; BadGuesses = ""; PossibleLetters = "etainoshrdlucmfwygpbvkqjxz"; //most popular letters based on https://en.oxforddictionaries.com/explore/which-letters-are-used-most GuessesSoFar = ""; label1.Text = ""; label2.Text = ""; test.Text = ""; TheWord = ""; }
private void GuessButton_Click(object sender, EventArgs e) { //if game has started if (GameStarted && GuessCount > 0) { try { //pick beginning letter based on popularity, words left Random r = new Random(); int index = 0; string guess = ""; //guess first letters of remaining words after first hit if (GoodGuesses.Length == 1) { index = r.Next(0, PossibleWords.Length); guess = PossibleWords[index][PossibleWords[index].Length - 1].ToString(); }//if we are one guess away else if (TheWord.Length - GoodGuesses.Length == 1) { index = label2.Text.IndexOf("_"); guess = PossibleWords[0][index].ToString(); } else { //guess based on letters found in possible words index = label2.Text.IndexOf("_"); guess = PossibleWords[r.Next(0, PossibleWords.Length)][index].ToString(); //if letter has been guessed - guess based on popular if (GuessesSoFar.Contains(guess)) { //just guess on the popular side of random letters { index = r.Next(0, PossibleLetters.Length / 3); guess = PossibleLetters[index].ToString(); } } } PossibleLetters = PossibleLetters.Replace(guess, ""); //letter is a good guess if (TheWord.Contains(guess)) { //change word string string temp = ""; int i = 0; foreach (char c in TheWord) { string letter = c.ToString(); if (letter.Equals(guess)) //add it and sort words based on position of guess { temp += guess; GoodGuesses += guess; PossibleWords = (from p in PossibleWords where p[i] == TheWord[i] select p).ToArray(); } else { temp += GuessesSoFar[i]; } i++; } label2.Text = temp; GuessesSoFar = temp; }//letter is a bad guess else { BadGuesses += guess; label1.Text = BadGuesses; GuessCount--; GuessCountLabel.Text = GuessCount.ToString(); //remove words from list containing bad guessed letter PossibleWords = (from p in PossibleWords where !p.Contains(guess) select p).ToArray(); } possible.Text = PossibleLetters; possiblewordcount.Text = PossibleWords.Length.ToString(); if (GuessCount == 0) { WinningGif.Show(); } if (label2.Text == TheWord) { GuessButton.Hide(); } } catch (Exception ex) { Debug.WriteLine(ex); } } }