home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
RUN Flagazine: Run 14
/
unpacked-run14.zip
/
ZESHOEK.BAS
< prev
Wrap
BASIC Source File
|
1995-01-01
|
2KB
|
38 lines
100 REM ZESHOEK-PUZZEL GW-QBASIC DOOR WIM VERSLOOT (C) RUN FLAGAZINE
110 CLS:KEY OFF:SCREEN 9:DIM H(12,2),X(7,2),P(12,2),G(6),A(7,6),L(6,2),Z(7),T(7)
120 PRINT "[1..7] Kies-[Tab] Wissel-[Spatie] Terug-[Enter] Roteer-[Esc] Einde";
130 FOR I=1 TO 12:READ P(I,1),P(I,2),H(I,1),H(I,2):NEXT I:FOR I=1 TO 7
140 T(I)=1:READ X(I,1),X(I,2):NEXT I:FOR I=1 TO 7:FOR J=1 TO 6
150 READ A(I,J):NEXT J:NEXT I:FOR I=1 TO 6:READ L(I,1),L(I,2)
160 NEXT I:X=68:Y=278:P=1:U$=CHR$(9):FOR J=1 TO 7:FOR I=1 TO 11
170 LINE (X(J,1)+H(I,1),X(J,2)+H(I,2))-(X(J,1)+H(I+1,1),X(J,2)+H(I+1,2))
180 NEXT I:FOR I=0 TO 11:CIRCLE (X(J,1),X(J,2)),I,0:NEXT I
190 CIRCLE (X(J,1),X(J,2)),11,15:NEXT J:CIRCLE (X(1,1),X(1,2)),7,15
200 PAINT (X(1,1)+1,X(1,2)+1),7,15:LOCATE 25,32:PRINT "Door Wim Versloot";
210 FOR J=0 TO 6:LOCATE 23,8+10 * J:PRINT J+1:FOR I=1 TO 11
220 LINE (X+J * 80+P(I,1),Y+P(I,2))-(X+J * 80+P(I+1,1),Y+P(I+1,2))
230 NEXT I:NEXT J:FOR J=0 TO 6:FOR I=1 TO 6
240 PAINT (X+J * 80+L(I,1),Y+L(I,2)),A(J+1,I)+8,15:NEXT I:NEXT J
250 K$=INKEY$:IF K$="" THEN GOTO 250 ELSE N=ASC(K$)
260 IF K$=U$ THEN GOSUB 300 ELSE IF N>48 AND N<56 THEN GOSUB 330
270 IF K$=" " AND Z(P)>0 THEN GOSUB 360
280 IF K$=CHR$(13) AND Z(P)>0 THEN GOSUB 380
290 IF K$=CHR$(27) THEN END ELSE 250
300 PAINT (X(P,1),X(P,2)),0,15:CIRCLE (X(P,1),X(P,2)),7,0
310 IF P=7 THEN P=1 ELSE P=P+1
320 CIRCLE (X(P,1),X(P,2)),7,15:PAINT (X(P,1),X(P,2)),7,15:RETURN
330 IF Z(P)=0 AND T(N-48)=1 THEN GOSUB 340:RETURN ELSE RETURN
340 Z(P)=N-48:T(N-48)=0:FOR J=1 TO 6:W=0:GOSUB 410:NEXT J
350 FOR J=1 TO 6:W=A(N-48,J)+8:GOSUB 400:NEXT J:RETURN
360 T(Z(P))=1:FOR J=1 TO 6:W=0:GOSUB 400:NEXT J
370 FOR J=1 TO 6:W=A(Z(P),J)+8:GOSUB 410:NEXT J:Z(P)=0:RETURN
380 B=A(Z(P),1):FOR J=1 TO 5:A(Z(P),J)=A(Z(P),J+1):NEXT J
390 A(Z(P),6)=B:FOR J=1 TO 6:W=A(Z(P),J)+8:GOSUB 400:NEXT J:RETURN
400 PAINT (X(P,1)+2 * L(J,1),X(P,2)+2 * L(J,2)),W,15:RETURN
410 PAINT (X+(Z(P)-1) * 80+L(J,1),Y+L(J,2)),W,15:RETURN
420 DATA -25,-10,-40,-15,0,-20,0,-30,25,-10,40,-15,25,10,40,15,0,20,0,30,-25,10
430 DATA -40,15,25,-10,40,-15,25,10,40,15,-25,-10,-40,-15,-25,10,-40,15,0,20
440 DATA 0,30,0,-20,0,-30,300,140,255,88,345,88,390,140,345,192,255,192,210,140
450 DATA 3,4,2,5,1,6,4,3,6,2,1,5,1,2,5,3,4,6,3,1,5,6,4,2,1,4,6,5,2,3,3,1,5,6,4
460 DATA 2,4,6,3,5,1,2,-10,-10,10,-10,10,0,10,10,-10,10,-10,0