1 REM *** BBC VERSION *** 2 REM *** TUG OF WAR *** 10 MODE1:VDU23,1,0;0;0;0;:CLS 20 DIMA$(2):DIMB$(2) 30 GOSUB510 40 GOSUB480 50 GOSUB430 60 COLOUR3:VDU31,T+4,19,32:T=RND(28)+2:VDU 31,T+4,19,155 70 COLOUR1:F%=-1 80 F%=F%+1:VDU31,F%+4,5,32,149:IF INKEY$(T A%)="A" THENGOTO100 90 SOUND2,-12,F%*2+15,1:IFF%<30 THENGOTO80 ELSEGOTO210 100 COLOUR2:FORG=0TO14:VDU31,F%+5,G+5,150:S OUND3,-14,G*2+150,1:FORI=1TO100:NEXT:VDU31,F% +5,G+5,32:NEXT 110 IFF%+1<>T THEN GOTO210 120 XA=XA-1:XB=XB-1:FORF=1TO10:SOUND2,-14, F*5+59,1:NEXT:VDU31,T+4,19,32 130 COLOUR3:PRINTTAB(XA+4,21)A$(1);" ",TAB( XA+4,22)A$(2);" ":COLOUR2:PRINTTAB(XB+4,21)B$ (1);" ",TAB(XB+4,22)B$(2);" " 140 MOVE136+XA*32,324:DRAW120+(XB+LENB$(1)) *32,324 150 IF POINT(144+XB*32,272)=1 THEN GOTO210 160 U=16:VDU31,22,21,32,31,22,22,32:GOSUB39 0 170 IF TB%=6 THEN B$(1)=STRING$(2,CHR$145+ CHR$146):B$(2)=STRING$(2,CHR$147+CHR$148) 180 IF TB%=4 THEN B$(1)=CHR$145+CHR$146:B$ (2)=CHR$147+CHR$148 190 IF TB%=2 THEN W=1:GOTO400 200 TB%=TB%-2:XB=XB+2:COLOUR3:PRINTTAB(XA+ 4,21)A$(1);" ",TAB(XA+4,22)A$(2);" ":COLOUR 2:PRINTTAB(XB+4,21)B$(1);" ",TAB(XB+4,22)B$( 2);" ":MOVE136+XA*32,324:DRAW120+(XB+LENB$(1 ))*32,324:GOTO210 210 COLOUR2:VDU31,T+4,19,32:T=RND(28)+2:VDU 31,T+4,19,155 220 COLOUR1:F%=31 230 F%=F%-1:VDU31,F%+4,5,149,32:IF INKEY$(T B%)="L" THEN GOTO250 240 SOUND3,-12,F%*2+15,1:IFF%<>0 THENGOTO23 0 ELSEGOTO60 250 COLOUR2:FORG=0TO14:VDU31,F%+4,G+5,150:S OUND2,-14,G*2+150,1:FORI=1TO100:NEXT:VDU31,F% +4,G+5,32:NEXT 260 IFF%<>T THENGOTO60 270 XA=XA+1:XB=XB+1:FORF=1TO10:SOUND2,-14, F*5+59,1:NEXT 280 COLOUR3:PRINTTAB(XA+3,21)" ";A$(1),TAB( XA+3,22)" ";A$(2):COLOUR2:PRINTTAB(XB+3,21)" ";B$(1),TAB(XB+3,22)" ";B$(2) 290 MOVE136+XA*32,324:DRAW120+(XB+LENB$(1)) *32,324 300 IF POINT(144+(XA+LENA$(1)-1)*32,272)=1 THENGOTO60 310 U=14:VDU31,17,21,32,31,17,22,32:GOSUB3 90 320 IF TA%=6 THEN A$(1)=STRING$(2,CHR$141+ CHR$142):A$(2)=STRING$(2,CHR$143+CHR$144) 330 IF TA%=4 THEN A$(1)=CHR$141+CHR$142:A$ (2)=CHR$143+CHR$144 340 IF TA%=2 THEN W=2:GOTO400 350 TA%=TA%-2 360 COLOUR3:PRINTTAB(XA+4,21)A$(1),TAB(XA+ 4,22)A$(2):COLOUR2:PRINTTAB(XB+4,21)B$(1),TAB (XB+4,22)B$(2):MOVE136+XA*32,324:DRAW120+(XB+ LENB$(1))*32,324 370 GOTO60 380 END 390 FORF=16TO20:COLOUR3:VDU31,U+4,F+5,151,1 52:COLOUR2:VDU31,U+4,F+6,153,154:SOUND2,-14,( F+6)*5,1:FORI=1TO300:NEXT:VDU31,U+4,F+5,32,32 ,31,U+4,F+6,32,32:NEXT:RETURN 400 COLOUR1:PRINTTAB(6,7)"WELL DONE PLAYER ";W;" YOU WON" 410 FORI%=180TO70STEP-10:SOUND1,-15,I%,3:SO UND2,-15,I%,3:NEXT:FORI%=60TO150STEP20:SOUND1 ,-15,I%,6:SOUND2,-15,I%,6:NEXT 420 COLOUR2:PRINTTAB(6,11)"PRESS ANY KEY TO PLAY AGAIN.":G=GET:GOTO50 430 CLS:GCOL0,1:FORF=160TO264STEP4:MOVE128, F:DRAW544+RND(1)*32,F:NEXT:FORF=160TO264STEP4 :MOVE1150,F:DRAW736-RND(1)*32,F:NEXT 440 FORF=268TO284:MOVE128,F:DRAW576,F:NEXT :FORF=268TO284:MOVE1150,F:DRAW704,F:NEXT 450 A$(1)=STRING$(3,CHR$141+CHR$142):A$(2) =STRING$(3,CHR$143+CHR$144):B$(1)=STRING$(3,C HR$145+CHR$146):B$(2)=STRING$(3,CHR$147+CHR$1 48):XA=7:XB=19 460 COLOUR3:VDU19,3,4,0,0,0:PRINTTAB(XA+4,2 1)A$(1),TAB(XA+4,22)A$(2):COLOUR2:PRINTTAB(XB +4,21)B$(1),TAB(XB+4,22)B$(2):MOVE128+XA*32,3 24:DRAW124+(XB+LENB$(1))*32,324 470 TA%=6:TB%=6:T=0:RETURN 480 VDU23,141,24,52,62,60,24,31,255,15,23,1 42,0,0,0,0,0,248,255,240,23,143,15,7,7,3,0,0, 0,0,23,144,0,128,192,224,112,24,12,7,23,145,0 ,0,0,0,0,31,255,15,23,146,24,44,124,60,24,248 ,255,240,23,147,0,1,3,7,14,24,48,224 490 VDU23,148,240,224,224,192,0,0,0,0,23,14 9,0,129,66,36,102,255,126,60,23,150,16,124,25 4,0,16,56,16,40,23,151,1,195,101,55,27,15,7,3 ,23,152,128,195,66,236,152,240,224,192,23,153 ,3,3,3,7,14,28,184,112,23,154,192,192,192,224 ,112,56,29,14 500 VDU23,155,24,60,126,255,126,60,24,0,0:R ETURN 510 PRINTTAB(4,6)" TUG OF WAR":COLOUR1:PRINTTAB(4,8)" B Y P A U L S T A N L E Y" 520 GCOL0,3:MOVE352,800:DRAW608,800:MOVE672 ,800:DRAW928,800:GCOL0,2:MOVE128,700:DRAW1130 ,700:DRAW1130,850:DRAW128,850:DRAW128,700 530 COLOUR2:PRINTTAB(4,12)"A simple game fo r 2 players who",TAB(4,13)"have to win at tug _of_war,not",TAB(4,13)"by strength, but by re actions." 540 COLOUR1:PRINTTAB(4,15)"A UFO will fly a cross the top of",TAB(4,16)"the screen and a target will",TAB(4,17)"appear at the bottom. Player 1",TAB(4,18)"can parachute out onto th e" 550 PRINTTAB(4,19)"target by pressing A and ",TAB(4,20)"player 2 by pressing L" 560 COLOUR2:PRINTTAB(4,22)"If the parachuti st lands on the",TAB(4,23)"target you will pu ll the other",TAB(4,24)"team. If any men fall down the",TAB(4,25)"canyon that team will fi nd it",TAB(4,26)"harder to win" 570 COLOUR3:PRINTTAB(7,28)"PRESS ANY KEY TO START":G=GET:RETURN