locked
Hangman game RRS feed

  • Question

  • Does anyone have a good hangman game?  I can't seem to find any by searching.  There is one from 2009 but it doesn't compile.
    Monday, March 12, 2012 6:18 PM

Answers

  • Hmmm, when this code is published, the line: word = Text.ConvertToUpperCase(File.ReadLine(Program.Directory+"\Words.txt",Math.GetRandomNumber( File.ReadLine(Program.Directory+"\Words.txt",0)))) is censored w/ ' The following line could be harmful and has been automatically commented.

    So I'm gonna publish it in whole here:

    ' Hang a man for Small Basic
    ' Omaga Sohe
    
    'You'll need to have a "word.txt" in the same folder as the script.
    'First line is the number of words, i.e. 10, each conscutive line is a word.
    'I recomend the "100 words" series from houghton mifflin books
    'The words are out of the norm, but should be fimilar.
    
    ''should only need these once
    GraphicsWindow.Show()
    GraphicsWindow.CanResize = "False"
    GraphicsWindow.Title = "Hanger"
    InitialSetup()
    
    'This is all the stuff that we need in the begining of the game
    Sub InitialSetup
      
      'We can play forever, so clear the screen each time we run.
      GraphicsWindow.Clear()
      
      
      'Get the word.  read a random line   from a file. 
      word = Text.ConvertToUpperCase(File.ReadLine(Program.Directory+"\Words.txt",Math.GetRandomNumber( File.ReadLine(Program.Directory+"\Words.txt",0))))
      
      'We have not failed, yet, this tracks wrong letters.
      Fail = 0
      
      'Set the event handlers. we change them when game is over, reset them here.
      GraphicsWindow.KeyDown = OnPress
      GraphicsWindow.MouseDown = OnClick
      
      'Populate the first of many arrays.
      'pword tells us the which letters to display. I tend to use psudo-random variable names
      'you don't like it, change it. Oh and ignore spaces.
      'all TextWindow stuff is debuging stuff. useful to see some of the background stuff
      For i = 1 To Text.GetLength(word)
        If (Text.GetSubText(word,i,1) = " ")Then
          pword[i] = 1
        Else
          pword[i] = 0
        EndIf
      EndFor
      
      'Brush and pen Colors
      GraphicsWindow.PenColor = "black"
      GraphicsWindow.BrushColor = "blue"
      
      'Window size
      GraphicsWindow.Width = 330
      GraphicsWindow.Height= 300
      
      'It's Gallows time
      GraphicsWindow.DrawLine(50,25,125,25)
      GraphicsWindow.DrawLine(50,25,50,150)
      GraphicsWindow.DrawLine(25,150,175,150)
      GraphicsWindow.DrawLine(125,25,125,40) 
      
      'XR is our left offset for the letter boxes
      'Y1,Y2 are the top offset, and they are back wards, agian suck it up =P
      XR = 5
      Y1 = GraphicsWindow.Height -25
      Y2 = GraphicsWindow.Height -50
      
      'draw the boxes with letters on the screen.
      'it's 1-13 because i like to multitask, and it makes sense
      For i = 1 to 13
        'just a rectangle
        GraphicsWindow.DrawRectangle(xr,Y1,20,20)
        GraphicsWindow.DrawRectangle(xr,Y2,20,20)
        
        'For those of you who don't know 65 is the code for "A" and 66 is "B" etc 
        'we only use upper case, since thats what the keyboard keys are read as
        GraphicsWindow.DrawText(XR+5, y2+3, Text.GetCharacter(64+i))
        GraphicsWindow.DrawText(XR+5, y1+3, Text.GetCharacter(77+i))
        
        'these should be self explanitory, sets the x,y for each letter
        lx[Text.GetCharacter(64+i)] =  XR
        lx[Text.GetCharacter(77+i)] =  XR
        ly[Text.GetCharacter(64+i)] =  Y2
        ly[Text.GetCharacter(77+i)] =  Y1
        
        ' lb[] is for deciding if a key has been
        'pressed before seemed good place for init the array. 
        lb[Text.GetCharacter(64+i)] = 0
        lb[Text.GetCharacter(77+i)] = 0
        
        'get the left offset ready for the next loop.
        XR = XR + 25
      EndFor 
      
      'Display the word for the first time.  
      DisplayWord()
    EndSub
    
    
    'display a the word or phrase.
    Sub DisplayWord
      'this function gets called alot. so clean up.
      disp = ""
      'crawl the word. Show what has been entered.
      For i = 1 To Text.GetLength(word)
        If(pword[i] = 1)Then
          disp = disp + Text.GetSubText(word,i,1)
        else
          disp = disp + "#"
        EndIf
      EndFor 
      'Erase what we have then write it agian.
      GraphicsWindow.BrushColor = "white"
      GraphicsWindow.PenColor = "white"
      GraphicsWindow.FillRectangle(0,GraphicsWindow.height-100,GraphicsWindow.Width,40)
      GraphicsWindow.BrushColor = "green"
      GraphicsWindow.DrawText(30, GraphicsWindow.Height-100, disp) 
    EndSub
    
    'this is was a pain in the ass. just throwing it out there.
    
    sub OnPress
      'var to shorted the lines.
      lk = GraphicsWindow.LastKey
      DoLetter()
    EndSub
    
    Sub OnClick
      lk = 0
      x = GraphicsWindow.MouseX
      y = GraphicsWindow.MouseY
      For i = 1 to 26
        If( x > lx[Text.GetCharacter(64+i)] And x < (lx[Text.GetCharacter(64+i)] +20)) Then
          If( y > ly[Text.GetCharacter(64+i)] And y < (ly[Text.GetCharacter(64+i)] +20)) Then
            lk = Text.GetCharacter(64+i)
          EndIf
        EndIf
      EndFor 
      DoLetter()
    EndSub
    
    
    Sub DoLetter
      If (lb[lk] = 0) Then 'oh my, it's a letter that hasn't been pressed
        lb[lk] = 1 'so we don't care later.
        
        'fill in the box. do it now.
        GraphicsWindow.BrushColor = "blue"
        GraphicsWindow.FillRectangle ( lx[lk],ly[lk],20,20)
        
        'Is the letter in the word?
        If(Text.IsSubText(word, lk)) Then
          'crawl the word letter by letter.
          For i = 1 to Text.GetLength(word)
            'is this letter the key that was pressed?
            If(Text.GetSubText(word,i,1) = lk) Then
              pword[i] = 1 'let it be seen from now on.
            EndIf
          EndFor
          'we are done with the key now. Display it. and throw a few debug stuff.
          DisplayWord()
          Sound.PlayChimes()
          '    TextWindow.WriteLine("WIN!")
          
          '    TextWindow.WriteLine(pword)
        Else
          'You failed in your task, your penalty is.
          Sound.PlayClick()
          DoFail()
        EndIf
      EndIf
      'Win Condition!!!
      If(Array.ContainsValue(pword,0) <> "True") then
        GraphicsWindow.BrushColor = "GREEN"
        GraphicsWindow.FontSize = 64
        GraphicsWindow.DrawText(20,20, "YOU WIN")
        GraphicsWindow.FontSize = 12
        GraphicsWindow.DrawText(175,20,"press anykey to continue")
        GraphicsWindow.KeyDown = Nothing
        GraphicsWindow.MouseDown = Nothing
        
      EndIf
      lk = 0 
    EndSub 
    Sub DoFail
      Fail = Fail + 1
      
      GraphicsWindow.PenColor = "Tan"
      If(Fail = 1)Then
        GraphicsWindow.DrawEllipse(115,40,20,20)
      ElseIf (Fail = 2) Then
        GraphicsWindow.DrawLine(125,60, 125, 100)
      ElseIf(Fail  = 3) Then
        GraphicsWindow.DrawLine(125,70, 110, 85)
      ElseIf(Fail  = 4) Then
        GraphicsWindow.DrawLine(125,70, 140, 85)
      ElseIf(Fail  = 5) Then
        GraphicsWindow.DrawLine(125,100, 110, 115)
      ElseIf(Fail  = 6) Then
        GraphicsWindow.KeyDown = Nothing
        GraphicsWindow.MouseDown = Nothing
        GraphicsWindow.DrawLine(125,100, 140, 115)
        GraphicsWindow.BrushColor = "RED"
        GraphicsWindow.FontSize = 64
        GraphicsWindow.DrawText(20,20, "YOU FAIL")
        GraphicsWindow.FontSize = 12
        GraphicsWindow.DrawText(175,20,"press anykey to continue")
        GraphicsWindow.BrushColor = "white"
        GraphicsWindow.PenColor = "white"
        GraphicsWindow.FillRectangle(0,GraphicsWindow.height-100,GraphicsWindow.Width,40)
        GraphicsWindow.BrushColor = "red"
        GraphicsWindow.DrawText(30, GraphicsWindow.Height-100, word) 
        
        
      EndIf
      
      
    EndSub
    
    Sub Nothing
      
      InitialSetup()
    EndSub


    Monday, March 12, 2012 9:33 PM
    Answerer

All replies

  • I too have searched and collected some codes, and realized many old ones didn't compile.

    Most probable reason is that, in early MS Small Basic versions, the object class 'Shapes' was not separated from 'GraphicsWindow'. But in this case, I don't remember what I did, but I have a functional Hanger game which I copied from Omaga Sohe's post not long ago. Here it is: DJR074

     



    Monday, March 12, 2012 9:22 PM
    Answerer
  • Hmmm, when this code is published, the line: word = Text.ConvertToUpperCase(File.ReadLine(Program.Directory+"\Words.txt",Math.GetRandomNumber( File.ReadLine(Program.Directory+"\Words.txt",0)))) is censored w/ ' The following line could be harmful and has been automatically commented.

    So I'm gonna publish it in whole here:

    ' Hang a man for Small Basic
    ' Omaga Sohe
    
    'You'll need to have a "word.txt" in the same folder as the script.
    'First line is the number of words, i.e. 10, each conscutive line is a word.
    'I recomend the "100 words" series from houghton mifflin books
    'The words are out of the norm, but should be fimilar.
    
    ''should only need these once
    GraphicsWindow.Show()
    GraphicsWindow.CanResize = "False"
    GraphicsWindow.Title = "Hanger"
    InitialSetup()
    
    'This is all the stuff that we need in the begining of the game
    Sub InitialSetup
      
      'We can play forever, so clear the screen each time we run.
      GraphicsWindow.Clear()
      
      
      'Get the word.  read a random line   from a file. 
      word = Text.ConvertToUpperCase(File.ReadLine(Program.Directory+"\Words.txt",Math.GetRandomNumber( File.ReadLine(Program.Directory+"\Words.txt",0))))
      
      'We have not failed, yet, this tracks wrong letters.
      Fail = 0
      
      'Set the event handlers. we change them when game is over, reset them here.
      GraphicsWindow.KeyDown = OnPress
      GraphicsWindow.MouseDown = OnClick
      
      'Populate the first of many arrays.
      'pword tells us the which letters to display. I tend to use psudo-random variable names
      'you don't like it, change it. Oh and ignore spaces.
      'all TextWindow stuff is debuging stuff. useful to see some of the background stuff
      For i = 1 To Text.GetLength(word)
        If (Text.GetSubText(word,i,1) = " ")Then
          pword[i] = 1
        Else
          pword[i] = 0
        EndIf
      EndFor
      
      'Brush and pen Colors
      GraphicsWindow.PenColor = "black"
      GraphicsWindow.BrushColor = "blue"
      
      'Window size
      GraphicsWindow.Width = 330
      GraphicsWindow.Height= 300
      
      'It's Gallows time
      GraphicsWindow.DrawLine(50,25,125,25)
      GraphicsWindow.DrawLine(50,25,50,150)
      GraphicsWindow.DrawLine(25,150,175,150)
      GraphicsWindow.DrawLine(125,25,125,40) 
      
      'XR is our left offset for the letter boxes
      'Y1,Y2 are the top offset, and they are back wards, agian suck it up =P
      XR = 5
      Y1 = GraphicsWindow.Height -25
      Y2 = GraphicsWindow.Height -50
      
      'draw the boxes with letters on the screen.
      'it's 1-13 because i like to multitask, and it makes sense
      For i = 1 to 13
        'just a rectangle
        GraphicsWindow.DrawRectangle(xr,Y1,20,20)
        GraphicsWindow.DrawRectangle(xr,Y2,20,20)
        
        'For those of you who don't know 65 is the code for "A" and 66 is "B" etc 
        'we only use upper case, since thats what the keyboard keys are read as
        GraphicsWindow.DrawText(XR+5, y2+3, Text.GetCharacter(64+i))
        GraphicsWindow.DrawText(XR+5, y1+3, Text.GetCharacter(77+i))
        
        'these should be self explanitory, sets the x,y for each letter
        lx[Text.GetCharacter(64+i)] =  XR
        lx[Text.GetCharacter(77+i)] =  XR
        ly[Text.GetCharacter(64+i)] =  Y2
        ly[Text.GetCharacter(77+i)] =  Y1
        
        ' lb[] is for deciding if a key has been
        'pressed before seemed good place for init the array. 
        lb[Text.GetCharacter(64+i)] = 0
        lb[Text.GetCharacter(77+i)] = 0
        
        'get the left offset ready for the next loop.
        XR = XR + 25
      EndFor 
      
      'Display the word for the first time.  
      DisplayWord()
    EndSub
    
    
    'display a the word or phrase.
    Sub DisplayWord
      'this function gets called alot. so clean up.
      disp = ""
      'crawl the word. Show what has been entered.
      For i = 1 To Text.GetLength(word)
        If(pword[i] = 1)Then
          disp = disp + Text.GetSubText(word,i,1)
        else
          disp = disp + "#"
        EndIf
      EndFor 
      'Erase what we have then write it agian.
      GraphicsWindow.BrushColor = "white"
      GraphicsWindow.PenColor = "white"
      GraphicsWindow.FillRectangle(0,GraphicsWindow.height-100,GraphicsWindow.Width,40)
      GraphicsWindow.BrushColor = "green"
      GraphicsWindow.DrawText(30, GraphicsWindow.Height-100, disp) 
    EndSub
    
    'this is was a pain in the ass. just throwing it out there.
    
    sub OnPress
      'var to shorted the lines.
      lk = GraphicsWindow.LastKey
      DoLetter()
    EndSub
    
    Sub OnClick
      lk = 0
      x = GraphicsWindow.MouseX
      y = GraphicsWindow.MouseY
      For i = 1 to 26
        If( x > lx[Text.GetCharacter(64+i)] And x < (lx[Text.GetCharacter(64+i)] +20)) Then
          If( y > ly[Text.GetCharacter(64+i)] And y < (ly[Text.GetCharacter(64+i)] +20)) Then
            lk = Text.GetCharacter(64+i)
          EndIf
        EndIf
      EndFor 
      DoLetter()
    EndSub
    
    
    Sub DoLetter
      If (lb[lk] = 0) Then 'oh my, it's a letter that hasn't been pressed
        lb[lk] = 1 'so we don't care later.
        
        'fill in the box. do it now.
        GraphicsWindow.BrushColor = "blue"
        GraphicsWindow.FillRectangle ( lx[lk],ly[lk],20,20)
        
        'Is the letter in the word?
        If(Text.IsSubText(word, lk)) Then
          'crawl the word letter by letter.
          For i = 1 to Text.GetLength(word)
            'is this letter the key that was pressed?
            If(Text.GetSubText(word,i,1) = lk) Then
              pword[i] = 1 'let it be seen from now on.
            EndIf
          EndFor
          'we are done with the key now. Display it. and throw a few debug stuff.
          DisplayWord()
          Sound.PlayChimes()
          '    TextWindow.WriteLine("WIN!")
          
          '    TextWindow.WriteLine(pword)
        Else
          'You failed in your task, your penalty is.
          Sound.PlayClick()
          DoFail()
        EndIf
      EndIf
      'Win Condition!!!
      If(Array.ContainsValue(pword,0) <> "True") then
        GraphicsWindow.BrushColor = "GREEN"
        GraphicsWindow.FontSize = 64
        GraphicsWindow.DrawText(20,20, "YOU WIN")
        GraphicsWindow.FontSize = 12
        GraphicsWindow.DrawText(175,20,"press anykey to continue")
        GraphicsWindow.KeyDown = Nothing
        GraphicsWindow.MouseDown = Nothing
        
      EndIf
      lk = 0 
    EndSub 
    Sub DoFail
      Fail = Fail + 1
      
      GraphicsWindow.PenColor = "Tan"
      If(Fail = 1)Then
        GraphicsWindow.DrawEllipse(115,40,20,20)
      ElseIf (Fail = 2) Then
        GraphicsWindow.DrawLine(125,60, 125, 100)
      ElseIf(Fail  = 3) Then
        GraphicsWindow.DrawLine(125,70, 110, 85)
      ElseIf(Fail  = 4) Then
        GraphicsWindow.DrawLine(125,70, 140, 85)
      ElseIf(Fail  = 5) Then
        GraphicsWindow.DrawLine(125,100, 110, 115)
      ElseIf(Fail  = 6) Then
        GraphicsWindow.KeyDown = Nothing
        GraphicsWindow.MouseDown = Nothing
        GraphicsWindow.DrawLine(125,100, 140, 115)
        GraphicsWindow.BrushColor = "RED"
        GraphicsWindow.FontSize = 64
        GraphicsWindow.DrawText(20,20, "YOU FAIL")
        GraphicsWindow.FontSize = 12
        GraphicsWindow.DrawText(175,20,"press anykey to continue")
        GraphicsWindow.BrushColor = "white"
        GraphicsWindow.PenColor = "white"
        GraphicsWindow.FillRectangle(0,GraphicsWindow.height-100,GraphicsWindow.Width,40)
        GraphicsWindow.BrushColor = "red"
        GraphicsWindow.DrawText(30, GraphicsWindow.Height-100, word) 
        
        
      EndIf
      
      
    EndSub
    
    Sub Nothing
      
      InitialSetup()
    EndSub


    Monday, March 12, 2012 9:33 PM
    Answerer
  • GoToLoop,

    All File operations are automatically commented out when the code is published since these commands could be potentially dangerous - like delete all your pictures!  So only un-comment these File commands once you have checked what they are doing.

    Also, File operations wouldn't work with the web SilverLight since it doesn't have a file system to work with like the installed application.

    Monday, March 12, 2012 9:46 PM
  • Thanks GoToLoop and LitDev, that's what I needed.  And thanks LitDev for the explanation of why that line was commented out, I was wondering about that and what you said makes sense.
    Monday, March 12, 2012 9:53 PM
  • One more thing, line 4 needs to say words.txt.
    Monday, March 12, 2012 9:58 PM
  • Line 23 (word = ...) can return your word count in record 1 as a word for hangman, since getrandomnumber starts at 1.
    Tuesday, March 13, 2012 1:37 AM
  • Regarding line 23 and the creation of variable "word", I questioned whether record number 0 is valid for ReadLine (because it seemed to me that the first line of a file should be line 1), so I did a test, and specifying either 0 or 1, both get you the same record, the first one.  I'd say specifying 0 should raise an error, but that's another story.

    It seems to me that, in order to prevent the first line (containing the number of records in the file) from being selected as a hangman word, you really want to select as your word record GetRandomNumber(valueinfirstline -1) + 1. 

    GoToLoop, do you agree?

    Tuesday, March 13, 2012 3:08 AM
  • It seems to me this works:

    word = Text.ConvertToUpperCase(File.ReadLine(Program.Directory+"\Words.txt",Math.GetRandomNumber(File.ReadLine(Program.Directory+"\Words.txt",1)-1)+1))

    Tuesday, March 13, 2012 3:28 AM
  • It seems to me that, in order to prevent the first line (containing the number of records in the file) from being selected as a hangman word, you really want to select as your word record GetRandomNumber(valueinfirstline -1) + 1. 

    GoToLoop, do you agree?

    Oh, I haven't studied the source code yet. I just published what I had here to ya *_*

    For what I know, those File.ReadLine() start from number 1. If line #0 is the same as #1, you have to avoid that situation if you intend to read more than 1 line.

    Nice you're debugging that :D

    Tuesday, March 13, 2012 3:36 AM
    Answerer
  • The program runs fine from my home computer, but at school I get the following error message when I try to run it:

    MaxValue must be greater than zero.

    I don't think this program contains that reference, but with the limited editing capability (no search) it's hard to know.  I think the reference is from a higher-level program somewhere.

    Anyone know how to solve this problem?

    Tuesday, March 13, 2012 1:19 PM
  • Thats pretty cool...

    Daniel Mcgrady | Create Your Badge

    Tuesday, March 13, 2012 10:33 PM
  • '2 text files for input: words and corresponding hints
    'a set of images for the "stages" of hangman
    ' I used hang0.gif - hang6.gif  (found images online)

    GraphicsWindow.width=700
    GraphicsWindow.height=700
    GraphicsWindow.BackgroundColor="yellow"
    alphabet="ABCDEFGHIJKLMNOPQRSTUVWXYZ"
    x=50
    y=10
    'two rows of letters
    For i=1 To 26
      let=text.GetSubText(alphabet,i,1)
      button[i]=Controls.AddButton(let,x,y)
      x=x+30
      If i=13 Then
        x=50
        y=50
        endif
      endfor
      Controls.ButtonClicked=getLetter
    pic=ImageList.LoadImage("h:\hang0.gif")
    GraphicsWindow.DrawImage(pic,50,150)
    chooseword()
     len=text.GetLength(word)
    choosehint()
    ' GraphicsWindow.ShowMessage("The Word is "+word,"")
    len=text.GetLength(word)
    For i=1 to len
      char=Text.GetSubText(word,i,1)
     
     If Text.GetIndexOf(alphabet,char) <>0 then
       symbols=symbols+"?"
      else
        symbols=symbols+char
        endif
      endfor
      GraphicsWindow.brushColor="magenta"
    GraphicsWindow.fontsize=20
    GraphicsWindow.DrawText(100,300,symbols)
    wrong=0

    timeLeft=60
    Timer.interval=1000
    Timer.tick=checkTime

      Sub getLetter
        b=controls.LastClickedButton
        letter=controls.GetButtonCaption(b)
        Controls.HideControl(b)
       
     
     found=0
      For i=1 To len
      let=text.GetSubText(word,i,1) 
      If let=letter Then
        found=1
        'replace
        symbols=text.GetSubText(symbols,1,i-1)+letter+text.GetSubTextToEnd(symbols,i+1)
       
        endif
      endfor
      'erase
      GraphicsWindow.brushcolor="yellow" 
      GraphicsWindow.FillRectangle(100,300,400,60)
      GraphicsWindow.brushcolor="magenta" 
      GraphicsWindow.DrawText(100,300,symbols)
     

    If found=0 then
      wrong=wrong+1
     
      drawhang()
      endif

      If wrong=6 then
        GraphicsWindow.ShowMessage("Game Over, You Lose.  The word was "+word,"LOSE")  
        Timer.Pause()
        hideButtons()
    'Program.End()  
    endif
     If word=symbols then
       GraphicsWindow.showmessage("YOU WIN!!","WIN")
       Timer.Pause()
       hideButtons()
    'Program.End() 
     endif
     
      endsub
      Sub chooseword
      r=math.GetRandomNumber(10)
      For i=1 To r
        word=file.ReadLine("h:\words.txt",i)
        endfor
        'convert to all caps
        word=text.ConvertToUpperCase(word)
    EndSub
    Sub drawhang
     

      pic=ImageList.LoadImage("h:\hang"+wrong+".gif")
    GraphicsWindow.DrawImage(pic,50,150)
     
    endsub
    Sub choosehint
      For i=1 To r
        hint=file.ReadLine("h:\hints.txt",i)
      endfor
    endsub
    Sub checkTime
      timeLeft=timeLeft-1
      If timeleft=10 then
      GraphicsWindow.brushcolor="red"
      GraphicsWindow.DrawText(100,400,"Hint: "+hint)
      endif
      GraphicsWindow.brushcolor="yellow" 
      GraphicsWindow.FillRectangle(400,500,100,60)
      GraphicsWindow.brushcolor="red" 
      GraphicsWindow.DrawText(400,500,":"+timeLeft)
      If timeLeft=0 Then
        Timer.Pause()
       GraphicsWindow.ShowMessage("Game Over, You Lose.  The word was "+word,"LOSE")  
      hideButtons()
       'Program.End()  
     endif
    endsub
    Sub hideButtons
      For i=1 To 26
        Controls.HideControl(button[i])
    endfor
       
      EndSub

    Thursday, March 15, 2012 11:13 AM
  • Thanks Evelyn.  Can you include a link to the "hangx.gif" files?  I google'd them and couldn't find any on a site that I considered "safe."
    Friday, March 16, 2012 2:29 AM
  • Hi,

    I found my images several years ago; here are some sites for you to look at:

    http://javascript.about.com/library/blhangman.htm
    http://www.manythings.org/hmjs/animals.html
    http://www.gamehangman.com/

    Friday, March 16, 2012 11:20 AM
  • Thanks Evelyn.  That first site (The Images link) did the trick.
    Friday, March 16, 2012 12:11 PM
  • Evelyn, what is the purpose of the hints file?  I don't see how it is used in the program.
    Friday, March 16, 2012 7:13 PM
  • Oh, I see, if it's less than 10 seconds left you give a hint.

    Friday, March 16, 2012 7:23 PM