home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Overload
/
ShartewareOverload.cdr
/
games
/
jots.zip
/
GUESS.BAS
< prev
next >
Wrap
BASIC Source File
|
1989-03-14
|
2KB
|
92 lines
' GUESS.BAS -- This module handles the user's guesses and the guess box
' $INCLUDE: 'J.INC'
DIM SHARED MyBox AS BoxType, TopRow, BotRow, LftCol, RtCol
FUNCTION GuessAWord$
ShowMessage ("Enter a 5-letter word. <TAB> to change box. <ESC> to end")
HighlightBox (GuessBox)
Guess$ = ""
Row = TopRow + 3
Col = LftCol + 4
LOCATE Row, Col, 0
COLOR Dark, Background, Background
PRINT "-----";
DO
COLOR Dark, Background, Background
LOCATE Row, Col + LEN(Guess$), 1, 0, 7
DO
Char$ = UCASE$(INKEY$)
LOOP UNTIL LEN(Char$)
IF Char$ = CHR$(9) THEN 'TAB
PushMsg
NormalBox (GuessBox)
ChangeKnownList
HighlightBox (GuessBox)
PopMsg
ELSEIF Char$ = CHR$(27) THEN 'ESC
NormalBox (GuessBox)
HighlightBox (MessageBox)
PushMsg
ShowMessage ("Do you really want to stop?")
DO
Ch$ = UCASE$(INPUT$(1))
LOOP UNTIL INSTR("YN", Ch$)
IF Ch$ = "N" THEN
NormalBox (MessageBox)
HighlightBox (GuessBox)
PopMsg
ELSE
GuessAWord$ = ""
EXIT FUNCTION
END IF
ELSEIF Char$ = CHR$(8) AND LEN(Guess$) > 0 THEN 'Backspace
Guess$ = MID$(Guess$, 1, LEN(Guess$) - 1)
LOCATE Row, Col + LEN(Guess$), 1, 0, 7
PRINT "-";
ELSEIF Char$ = CHR$(13) AND LEN(Guess$) = 5 THEN 'Enter
IF WordExists(Guess$) THEN
LOCATE Row, Col, 0
GuessAWord$ = Guess$
EXIT FUNCTION
ELSE
PushMsg
ShowMessage (CHR$(7) + "Unknown word. Add it to the dictionary?")
IF YesNo = "Y" THEN
PopMsg
AddWord (Guess$)
LOCATE Row, Col, 0
GuessAWord$ = Guess$
EXIT FUNCTION
ELSE
PopMsg
LOCATE Row, Col, 0
COLOR Dark, Background, Background
PRINT "-----";
Guess$ = ""
END IF
END IF
ELSEIF Char$ >= "A" AND Char$ <= "Z" AND LEN(Guess$) < 5 THEN
Guess$ = Guess$ + Char$
COLOR Normal, Background, Background
PRINT Char$;
END IF
LOOP
END FUNCTION
SUB InitGuess
CALL BoxCoords(GuessBox, MyBox)
TopRow = MyBox.TopRow
BotRow = MyBox.BotRow
LftCol = MyBox.LftCol
RtCol = MyBox.RtCol
NormalBox (GuessBox)
COLOR Normal, Background, Background
LOCATE TopRow + 1, LftCol + 2, 0
PRINT "Your Guess";
COLOR Dark, Background, Background
LOCATE TopRow + 3, LftCol + 4, 0
PRINT "-----";
END SUB