By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
432,070 Members | 1,718 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 432,070 IT Pros & Developers. It's quick & easy.

Need Help with Code for a Word Game

P: 4
Hi everyone. I need a little help with some parts of a word guessing game I'm working on. I have some parts done but unsure about others and could use a little advice. Any help is very much appreciated.Here is the code to give more detail:

Expand|Select|Wrap|Line Numbers
  1. Dim GameOver As Boolean
  2.     Dim NumWords As Integer, ThreeWordList(1000) As String, ThreeWordMeaning(1000) As String
  3.     Dim R As Integer, WordsLeft(1000) As Integer
  4.     Dim SecretWord As String, ComputerLetters(3) As String
  5.     Dim myRandom As New Random
  6.  
  7.     Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  8.         Dim sreStreamReader As IO.StreamReader
  9.  
  10.         'THIS SHOULD BE OK
  11.         ' Declare your strings
  12.         Dim A As String
  13.  
  14.         sreStreamReader = IO.File.OpenText("dictionary.txt")
  15.         NumWords = 0
  16.  
  17.         'This section of the code should read each line from the file dictionary.txt and
  18.         'store the word in the array ThreeWordList and store the meaning of each word 
  19.  
  20.         'NOT SURE ABOUT THIS PART
  21.         Do Until NumWords = 1000
  22.             NumWords = NumWords + 1
  23.  
  24.             ThreeWordList(NumWords) = A
  25.             ThreeWordMeaning(NumWords) = A
  26.         Loop
  27.  
  28.         'THIS PART SHOULD BE GOOD
  29.         'Close the File and Display messages in the label as below
  30.  
  31.         sreStreamReader.Close()
  32.         lbldisplay.Visible = True
  33.         lbldisplay.Text = "Guess my secret 3 letter word"
  34.         lbldisplay.Text = lbldisplay.Text + ControlChars.NewLine + ControlChars.NewLine + "Press New Game To Start"
  35.         btnNew.Focus()
  36.     End Sub
  37.  
  38.  
  39.  
  40.     Private Sub btnNew_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNew.Click
  41.         Dim I As Integer
  42.  
  43.         'THIS SHOULD BE OK
  44.         'Start new game clear listbox, clear labels and enable buttons - basic preliminaries
  45.         ListBox1.Items.Clear()
  46.         ListBox1.Items.Add("Guess" + ControlChars.Tab + ControlChars.Tab + "Number of Letters")
  47.  
  48.         'THIS SHOULD BE RIGHT
  49.         'Generate a Random Number which can be from 1 to NumWords in the dictionary which you have computed before
  50.  
  51.         R = myRandom.Next(0, 1001)
  52.  
  53.         'I THINK THIS IS OK
  54.         'Generate a secret word using the random number        
  55.  
  56.         SecretWord = ThreeWordList(Int(Rnd() * NumWords) + 1)
  57.  
  58.         'NEED HELP WITH THIS PART
  59.         'Extract each letter of the secret word and store each letter in an array called ComputerLetters
  60.         ' myRandom.Next(1, 7)
  61.  
  62.  
  63.  
  64.         For I = 1 To NumWords
  65.             WordsLeft(I) = 1
  66.         Next I
  67.  
  68.  
  69.         'THIS PART LOOKS GOOD
  70.         'Ask the user if they want to play and make the panel visible
  71.         lbldisplay.Text = vbCrLf + "Type in Your Guess." + ControlChars.NewLine & "Then click the Guess Button."
  72.         pnlGuess.Visible = True
  73.  
  74.  
  75.     End Sub
  76.  
  77.     Private Sub btnExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnExit.Click
  78.         ' exit  current game
  79.         Me.Close()
  80.     End Sub
  81.  
  82.  
  83.  
  84.     Private Sub btnGuess_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGuess.Click
  85.  
  86.         Dim L As String, userLetters(3) As String
  87.         Dim X As Integer, Y As Integer, Z As Integer
  88.         L = txtGuess.Text
  89.  
  90.         'THIS SHOULD BE OK
  91.         'Take the guess of the user and make sure it is 3 characters long
  92.         If Len(L) <> 3 Then
  93.             lbldisplay.Text = "Your Guess Must Have 3 Letters."
  94.         End If
  95.  
  96.         'THIS SHOULD BE OK
  97.         'Get letters and make sure they are distinct
  98.         For X = 1 To 3
  99.             userLetters(X) = Mid(L, X, 1)
  100.         Next X
  101.  
  102.         If userLetters(1) = userLetters(2) Or userLetters(1) = userLetters(3) Or userLetters(2) = userLetters(3) Then
  103.             lbldisplay.Text = "Your Letters Must Be Different."
  104.         End If
  105.  
  106.  
  107.         'NOT SURE ABOUT THIS PART
  108.         'check if the guess is same as secret word then congratulate the user
  109.         ' if not find how many characters are same and display to user
  110.         ' use a for loop
  111.         If L = SecretWord Then
  112.             lbldisplay.Text = "Correct - You Have Won the Game."
  113.         Else
  114.             Z = 0
  115.             For X = 1 To 3
  116.                 For Y = 1 To 3
  117.                     If userLetters(Y) = ComputerLetters(X) Then Z = Z + 1
  118.  
  119.                 Next Y
  120.             Next X
  121.         End If
  122.  
  123.     End Sub
  124.  
  125.     Private Sub btnGiveUp_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGiveUp.Click
  126.  
  127.         'THIS SHOULD BE OK
  128.         'if the user wants to give up tell them the secretword
  129.         lbldisplay.Text = "That is My Word -" + ControlChars.NewLine + SecretWord
  130.  
  131.     End Sub
  132. End Class
Dec 3 '06 #1
Share this question for a faster answer!
Share on Google+

Post your reply

Sign in to post your reply or Sign up for a free account.