home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gold Fish 2
/
goldfish_vol2_cd1.bin
/
files
/
comm
/
fido
/
spot
/
rexx
/
tictacspot.spot
< prev
next >
Wrap
Text File
|
1993-10-09
|
6KB
|
267 lines
/* TicTacSpot v1.0 © 1993 PSR Software
$VER: TicTacSpot v1.0 (09.10.93)
*/
TEMPDIR = 'T:'
Address Spot
Options Results
'IsMessages'
If RC>0 Then Do
'RequestNotify PROMPT "Use only from message window"'
Exit
End
'SaveAscii TO "'TEMPDIR'TicTacSpot.temp" OVERWRITE NOHEADER NOORIGIN NOKLUDGES'
If ~Open('Inp',TEMPDIR'TicTacSpot.temp','r') Then Do
'RequestNotify PROMPT "Cannot open temporary file:'TEMPDIR'TicTacSpot.temp"'
Exit
End
Do y=1 To 4
Do x=1 To 3
POS.x.y=' '
End
End
Do Until Pos('* TicTacSpot',LINE)>0
If Eof('Inp') Then Do
'RequestNotify PROMPT "Message contains no TicTacSpot data!"'
'RequestResponse PROMPT "Start new game?" GADGETS "_Yes|_No"'
If RC=1 Then Do
Call Close('Inp')
Signal PlayMove
End
Exit
End
If Exists('Ram:Plop') then Exit
LINE=ReadLn('Inp')
End
Call Readln('Inp')
LINE.1=Readln('Inp')
Call Readln('Inp')
Call Readln('Inp')
LINE.2=Readln('Inp')
Call Readln('Inp')
Call Readln('Inp')
LINE.3=Readln('Inp')
Call Close('Inp')
Do y=1 To 3
Parse var LINE.y POS1' | 'POS2' | 'POS3
POS1=Right(POS1,2)
POS2=Left(POS2,2)
POS3=Left(POS3,2)
If POS1='/\' Then POS.1.y='o'
If POS1='\/' Then POS.1.y='x'
If POS2='/\' Then POS.2.y='o'
If POS2='\/' Then POS.2.y='x'
If POS3='/\' Then POS.3.y='o'
If POS3='\/' Then POS.3.y='x'
End
PlayMove:
'RequestResponse TITLE "Piece" PROMPT "Are you O or X?" GADGETS " _O | _X "'
If RC=0 Then PIECE='x'
If RC=1 Then PIECE='o'
DONE=0
Do Until DONE=1
BOARD=POS.1.1 || '|' || POS.2.1 || '|' || POS.3.1 || '0d'x || POS.1.2 || '[' || POS.2.2 || ']' || POS.3.2 || '0d'x || POS.1.3 || '|' || POS.2.3 || '|' || POS.3.3
'RequestResponse TITLE "Top Row" PROMPT "'board'" GADGETS "t_L|t_M|t_R|_Next|_Cancel"'
If RC=0 Then Exit
If RC=1 Then If POS.1.1=' ' Then Do
DONE=1
POS.1.1=PIECE
End
IF RC=2 Then If POS.2.1=' ' Then Do
DONE=1
POS.2.1=PIECE
End
If RC=3 Then If POS.3.1=' ' Then Do
DONE=1
POS.3.1=PIECE
End
If RC=4 Then Do Until DONE=1|RC=4
'RequestResponse TITLE "Middle Row" PROMPT "'board'" GADGETS "m_L|m_M|m_R|_Next|_Cancel"'
If RC=0 Then Exit
If RC=1 Then If POS.1.2=' ' Then Do
DONE=1
POS.1.2=PIECE
End
If RC=2 Then If POS.2.2=' ' Then Do
DONE=1
POS.2.2=PIECE
End
If RC=3 Then If POS.3.2=' ' Then Do
DONE=1
POS.3.2=PIECE
End
If RC=4 Then Do Until DONE=1|RC=4
'RequestResponse TITLE "Bottom Row" PROMPT "'board'" GADGETS "b_L|b_M|b_R|_Next|_Cancel"'
If RC=0 Then Exit
If RC=1 Then If POS.1.3=' ' Then Do
DONE=1
POS.1.3=PIECE
End
If RC=2 Then If POS.2.3=' ' Then Do
DONE=1
POS.2.3=PIECE
End
If RC=3 Then If POS.3.3=' ' Then Do
DONE=1
POS.3.3=PIECE
End
End
End
End
Call Open('Oup',TEMPDIR'TicTacSpot.temp','w')
LINE1=' > '
LINE2=' > '
LINE3=' > '
LINE4=' > '
LINE5=' > '
LINE6=' > '
If POS.1.1='x' Then Do
LINE1=LINE1||'\/ |'
LINE2=LINE2||'/\ |'
End
If POS.1.1='o' Then Do
LINE1=LINE1||'/\ |'
LINE2=LINE2||'\/ |'
End
If POS.1.1=' ' Then Do
LINE1=LINE1||' |'
LINE2=LINE2||' |'
End
If POS.2.1='x' Then Do
LINE1=LINE1||' \/ |'
LINE2=LINE2||' /\ |'
End
If POS.2.1='o' Then Do
LINE1=LINE1||' /\ |'
LINE2=LINE2||' \/ |'
End
If POS.2.1=' ' Then Do
LINE1=LINE1||' |'
LINE2=LINE2||' |'
End
If POS.3.1='x' Then Do
LINE1=LINE1||' \/'
LINE2=LINE2||' /\'
End
If POS.3.1='o' Then Do
LINE1=LINE1||' /\'
LINE2=LINE2||' \/'
End
If POS.1.2='x' Then Do
LINE3=LINE3||'\/ |'
LINE4=LINE4||'/\ |'
End
If POS.1.2='o' Then Do
LINE3=LINE3||'/\ |'
LINE4=LINE4||'\/ |'
End
If POS.1.2=' ' Then Do
LINE3=LINE3||' |'
LINE4=LINE4||' |'
End
If POS.2.2='x' Then Do
LINE3=LINE3||' \/ |'
LINE4=LINE4||' /\ |'
End
If POS.2.2='o' Then Do
LINE3=LINE3||' /\ |'
LINE4=LINE4||' \/ |'
End
If POS.2.2=' ' Then Do
LINE3=LINE3||' |'
LINE4=LINE4||' |'
End
If POS.3.2='x' Then Do
LINE3=LINE3||' \/'
LINE4=LINE4||' /\'
End
If POS.3.2='o' Then Do
LINE3=LINE3||' /\'
LINE4=LINE4||' \/'
End
If POS.1.3='x' Then Do
LINE5=LINE5||'\/ |'
LINE6=LINE6||'/\ |'
End
If POS.1.3='o' Then Do
LINE5=LINE5||'/\ |'
LINE6=LINE6||'\/ |'
End
If POS.1.3=' ' Then Do
LINE5=LINE5||' |'
LINE6=LINE6||' |'
End
If POS.2.3='x' Then Do
LINE5=LINE5||' \/ |'
LINE6=LINE6||' /\ |'
End
If POS.2.3='o' Then Do
LINE5=LINE5||' /\ |'
LINE6=LINE6||' \/ |'
End
If POS.2.3=' ' Then Do
LINE5=LINE5||' |'
LINE6=LINE6||' |'
End
If POS.3.3='x' Then Do
LINE5=LINE5||' \/'
LINE6=LINE6||' /\'
End
If POS.3.3='o' Then Do
LINE5=LINE5||' /\'
LINE6=LINE6||' \/'
End
Call Writeln('Oup',' ')
Call Writeln('Oup',' > * TicTacSpot')
Call Writeln('Oup',' >')
Call Writeln('Oup',LINE1)
Call Writeln('Oup',LINE2)
Call Writeln('Oup',' > ----+----+----')
Call Writeln('Oup',LINE3)
Call Writeln('Oup',LINE4)
Call Writeln('Oup',' > ----+----+----')
Call Writeln('Oup',LINE5)
Call Writeln('Oup',LINE6)
Call Writeln('Oup',' ')
Call Close('Oup')
'GetFrom'
FROM=Result
'RequestResponse PROMPT "Edit message?" GADGETS "_Yes|_No"'
If RC=1 Then 'Write TO "'FROM'" SUBJECT "TicTacSpot" FILE "'TEMPDIR'TicTacSpot.temp" NOGUI'
If RC=0 Then 'Write TO "'FROM'" SUBJECT "TicTacSpot" FILE "'TEMPDIR'TicTacSpot.temp" NOEDIT NOGUI'
/*
> * TicTacSpot
>
> \/ | /\ | \/
> /\ | \/ | /\
> ----+----+----
> \/ | /\ | \/
> /\ | \/ | /\
> ----+----+----
> \/ | /\ | \/
> /\ | \/ | /\
*/