Imports System.IO Module Module1 Dim Word, CoveredWord As String, MoveCount As Integer = 8 Dim RndWord() As String, Score(2) As Integer, Guessed() As String Sub Main() Dim NoPlayers As Integer, Quit As String Do Console.Write("How Many Players Are There (1/2) : ") : NoPlayers = Console.ReadLine Console.WriteLine() Call WordChoose(NoPlayers) Call GuessLetter() Console.Write("Do You Wish To Continue (Y/N) : ") : Quit = Console.ReadLine Loop Until LCase$(Quit) = "n" End Sub Sub WordChoose(ByVal NoPlayers As Integer) Randomize() Dim RandomNumber As Single = (Rnd() * 10) Dim Input As String, Choose As Boolean = True If NoPlayers = 1 Then Call AssignArray(Choose) Word = LCase$(RndWord(RandomNumber)) Else Console.Write("Do You Wish To Enter Your Own Word (Y/N) : ") : Input = Console.ReadLine Console.WriteLine() Select Case LCase$(Input) Case Is = "y" Console.Write("Enter Your Word (Cannot Use Help As Choosen Word) : ") : Word = LCase$(Console.ReadLine) Choose = False Call AssignArray(Choose) Console.Clear() If LCase$(Word) = "help" Then Console.WriteLine("Cannot Use Help As Choosen Word") Console.WriteLine() WordChoose(NoPlayers) Exit Sub End If Case Is = "n" Call AssignArray(Choose) Word = LCase$(RndWord(RandomNumber)) End Select End If CoveredWord = New String("#", Len(Word)) End Sub Sub AssignArray(ByVal Choose As Boolean) If Choose = True Then Dim CurrentReader As StreamReader Dim ImportData As String, Count As Integer = 1 Dim Filename As String = "\\powley\wakefieldd$\RndWordDict.txt" CurrentReader = New StreamReader(Filename) Do While Not CurrentReader.EndOfStream ImportData = CurrentReader.ReadLine RndWord(Count) = ImportData Count += 1 Loop CurrentReader.Close() End If For i As Integer = 0 To 2 Score(i) = 0 Next End Sub Sub GuessLetter() Dim GameOver As Boolean = False Dim Guess As String Do Console.Write("Enter Your Guess (Help For Help) : ") : Guess = LCase$(Console.ReadLine) If Guess = "help" Then Console.WriteLine("Enter A Letter Or Word To Guess.") Console.WriteLine("Enter $ To Reveal Word And Lose The Round.") Console.WriteLine("Enter # To Exit Game.") ElseIf Guess = "#" Then Exit Sub ElseIf Guess = "$" Then CoveredWord = Word GameOver = True End If Call WinCheck(Guess, GameOver) Call DisplayProgress() Loop While GameOver = False End Sub Sub WinCheck(ByVal Guess As String, ByRef GameOver As Boolean) Dim StrPos, StrPosCheck As Integer, InWord As Boolean = False If Guess <> "help" And Guess <> "#" And Guess <> "$" And MoveCount <> 0 Then If Guess = Word Then GameOver = True CoveredWord = Word Exit Sub End If StrPos = InStr(Word, Guess) Do While GameOver = False And StrPos <> 0 StrPos = InStr(Word, Guess) Mid$(CoveredWord, StrPos, 1) = Guess Loop If StrPos = 0 Then MoveCount -= 1 End If StrPosCheck = InStr(CoveredWord, "#") If StrPosCheck <> 0 Then GameOver = True End If End If End Sub Sub DisplayProgress() Console.Clear() Console.WriteLine("The Word You Have Guessed So Far Is " + CoveredWord) Console.WriteLine("You Have " + MoveCount + " Guess's Left") Console.Write("You Have Guessed ") For i As Integer = LBound(Guessed) To UBound(Guessed) Console.Write("," + Guessed(i).ToString()) Next End Sub End Module