
1 !*************************************************************** !* WIZARD WAR 2-9-79 * !* * !* WRITTEN BY: RICHARD G. LOWE, JR. * !* * !* BASED ON: WIZARD, COPYRIGHT 1977, BY METAGAMING * !*************************************************************** 5 S$=Sys(Chr$(6%)+Chr$(-7%)) 9 On Error Goto 30000 10 & Chr$(26%);\ & Tab(20); "* WIZARD WAR *"\ Sleep 5\ & Chr$(26%)\ & "A GAME OF MAGICAL CONFLICT BETWEEN TWO MIGHTY WIZARDS WHO CAN"\ & "CREATE REAL AND IMAGINARY BEINGS TO FIGHT FOR THEM, OR ATTACK"\ & "DIRECTLY WITH AA BOLT OF LIGHTNING! SUCESSFUL WIZARDS GAIN"\ & "PRESTIGE AND SKILL...LOSERS DIE!!!!!"\ Sleep 5\ & Chr$(26%); 18 Input "WOULD YOU LIKE INSTRUCTIONS (Y OR N)"; B$\ & Chr$(26%);\ If B$="N" Then 21 19 OPEN "LP:" AS FILE #1%\ OPEN "WIZWRI.TXT(2,1)" AS FILE #2% 20 INPUT LINE #2%, B$\ & #1%, B$;\ GOTO 20 21 Input "WIZARD #1, WHAT IS YOUR NAME"; F$\ If F$="" Then 21 23 Input "WIZARD #2, WHAT IS YOUR NAME"; G$\ If G$="" Then 23 25 Randomize 26 Def FNA(E,F)=Int(E+F*Rnd) 27 & Chr$(26%);\ & "AND NOW..."\ Sleep 4\ & Chr$(26%); 30 Dim A(11,11),A$(10,10),H(100),K(100),T3(100),X(100),Y(100),D$(100) 110 Dim D(10,10),G(10,10) 200 Mat A=Zer(11,11)\ Mat D=Zer(10,10)\ Mat G=Zer(10,10) 300 For I=1 to 10\ For J=1 to 10\ Read A$(I,J)\ Restore\ Next J\ Next I 325 O1,O2,O3,O4,O5,O6=0 350 A8=1\ N=2\ X9=0\ T3(1)=0\ T3(2)=0\ A(3,3)=1\ A(8,8)=-1\ K(1)=1\ K(2)=5\ X(1)=3\ Y(1)=3\ X(2)=8\ Y(2)=8\ D(3,3)=FNA(100,200)\ D(8,8)=FNA(100,200)\ G(3,3)=FNA(5,13)\ G(8,8)=FNA(5,13) 650 & Chr$(26%); "LET THE BATTLE BEGIN!!!!!!"\ Sleep 4 670 A$(X(1),Y(1))=" "+Left(F$,1%)+Right(F$,Len(F$))\ A$(X(2),Y(2))=" "+Left(G$,1%)+Right(G$,Len(G$))\ D$(1)=A$(X(1),Y(1))\ D$(2)=A$(X(2),Y(2)) 675 If A$(X(1),Y(1))=A$(X(2),Y(2)) Then A$(X(1),Y(1))=" 1"\ A$(X(2),Y(2))=" 2"\ F$=F$+" (#1)"\ G$=G$+" (#2)" 700 & Chr$(26%); Tab(20); "TURN #"; Num1$(A8)\ A8=A8+1\ Sleep 4\ Gosub 25300 710 For M=1 to N\ If D(X(M),Y(M))<1 Then A$(X(M),Y(M))=" ."\ D(X(M),Y(M))=0\ G(X(M),Y(M))=0\ A(X(M),Y(M))=0 711 Next M 720 N=N-O6 725 O6=0 730 For M=1 to N 750 If A(X(M),Y(M))=1 Then Gosub 25503 760 If A(X(M),Y(M))=-1 Then Gosub 25552 770 If D(X(M),Y(M))<1 Then Let A$(X(M),Y(M))=" ."\ Goto 800 780 If Abs(A(X(M),Y(M)))<>1 Then Gosub 25700 800 Next M 5000 Goto 700 20000 !CHANGE FACING SUBROUTINE 20005 Input "WHICH DIRECTION DO YOU WANT TO FACE <CR>"; K(M) 20006 If K(M)=0 Then Gosub 28132 20007 If K(M)<>Int(K(M)) or K(M)<1 or K(M)>8 Then 20005 20010 Return 20015 !MOVE SUBROUTINE 20020 X=X(M)\ Y=Y(M)\ Gosub 25085 20042 If Z=11 or Z=0 or W=11 or W=0 Then Print "YOU CAN'T MOVE OUT OF THE ";\ Print "ARENA, STUPID."\ Sleep 2\ Return 20043 If A(W,Z)<>0 Then Print "SOMEBODY IS ALREADY IN THAT SPACE."\ Sleep 2\ Return 20044 If A$(W,Z)=" WL" Then Print "SORRY, THERE'S A WALL IN FRONT OF YOU."\ Sleep 2\ Return 20090 A(W,Z)=A(X,Y)\ A$(W,Z)=A$(X,Y)\ D(W,Z)=D(X,Y)\ G(W,Z)=G(X,Y)\ A(X,Y)=0\ A$(X,Y)=" ."\ D(X,Y)=0\ G(X,Y)=0\ X(M)=W\ Y(M)=Z\ Return 20150 !CAST A SPELL SUBROUTINE 20155 Wait 25 20165 Input "WHAT SPELL DO YOU WANT TO CAST <CR>"; S 20166 If S=0 Then Gosub 28000 20167 If S=0 Then 20165 20168 If S<>Int(S) or S<1 or S>8 Then Print "H'MM. SO YOU DIDN'T WANT TO ";\ Print "CAST A SPELL AFTER ALL."\ Let D(X(M),Y(M))=D(X(M),Y(M))-5\ Sleep 2\ Return 20169 A9=FNA(1,18)\ If A9>G(X(M),Y(M)) Then Print "SORRY, YOUR SPELL DIDN'T WORK."\ D(X(M),Y(M))=D(X(M),Y(M))-5\ Sleep 2\ Return 20170 On S Goto 20175,20250,20325,20400,20475,20550,20625,20700 20174 !LIGHTNING SUBROUTINE 20175 Input "WHAT IS YOUR TARGET SPACE (ROW#, COLUMN#)"; S1,S2 20176 If S1<1 or S1>10 or S2<1 or S2>10 Then Return 20177 Input "HOW MUCH POWER WILL BE IN THE SPELL"; S3 20178 If S3>50 Then Print "THAT'S TOO MUCH POWER, TURKEY! NOW YOU LOSE ";\ Print S3; " POINTS FROM YOUR OWN 'ST'."\ Let D(X(M),Y(M))=D(X(M),Y(M))-S3\ Sleep 2\ Return 20180 If A(S1,S2)=0 Then Print "IDIOT, THERE'S NOBODY IN THAT SPACE!!!"\ Let D(X(M),Y(M))=D(X(M),Y(M))-5\ Sleep 2\ Return 20185 Q=S1-X(M)\ R=S2-X(M)\ M1=Int(Sqr(Q*Q+R*R))\ If M1>5 Then Print "YOU'RE MORE THAN 5 SPACES AWAY, STUPID."\ D(X(M),Y(M))=D(X(M),Y(M))-5\ Sleep 2\ Return 20205 D(S1,S2)=D(S1,S2)-Int(S3-M1)\ D(X(M),Y(M))=D(X(M),Y(M))-(M1+S3)\ Return 20249 !CLUMSINESS SUBROUTINE 20250 Input "TARGET SPACE (ROW#, COLUMN#)"; S1,S2 20251 If S1<1 or S1>10 or S2<1 or S2>10 Then Return 20255 If A(S1,S2)=0 Then Print "THERE'S NOBODY THERE, STUPID!"\ Let D(X(M),Y(M))=D(X(M),Y(M))-5\ Sleep 2\ Return 20260 G(S1,S2)=G(S1,S2)-1\ D(X(M),Y(M))=D(X(M),Y(M))-5\ Return 20324 !AID SUBROUTINE 20325 Input "TARGET SPACE (ROW#, COLUMN#)"; S1,S2 20326 If S1<1 or S1>10 or S2<1 or S2>10 Then Return 20330 If A(S1,S2)=0 Then Print "THERE'S NOBODY THERE, YOU IMBECILE!"\ Let D(X(M),Y(M))=D(X(M),Y(M))-5\ Sleep 2\ Return 20335 G(S1,S2)=G(S1,S2)+1\ D(X(M),Y(M))=D(X(M),Y(M))-5\ Return 20399 !CONTROL ANIMAL SUBROUTINE 20400 Input "TARGET SPACE (ROW#, COLUMN#)"; S1,S2 20401 If S1<1 or S1>10 or S2<1 or S2>10 Then Return 20405 If Abs(A(S1,S2))=1 Then Print "HEY, YOU CAN'T USE THIS SPELL AGAINST ";\ Print "A WIZARD!"\ Let D(X(M),Y(M))=D(X(M),Y(M))-5\ Sleep 2\ Return 20410 If A(S1,S2)=0 Then Print "ARE YOU TOTALLY STUPID. THERE'S NOBODY IN ";\ Print "THAT SPACE."\ Let D(X(M),Y(M))=D(X(M),Y(M))-5\ Sleep 2\ Return 20415 Let A(S1,S2)=A(S1,S2)*-1 20420 Let D(X(M),Y(M))=D(X(M),Y(M))-5 20430 Return 20475 !INVISIBILITY SUBROUTINE 20478 A9=FNA(1,18)\ If A9>G(X(M),Y(M)) Then Print "SORRY, YOU FAILED TO BECOME INVISIBLE."\ D(X(M),Y(M))=D(X(M),Y(M))-7\ Sleep 2\ Return 20481 If T3(M)=1 Then Let T3(M)=0\ Goto 20483 20482 If T3(M)=0 Then Let T3(M)=1 20483 Let D(X(M),Y(M))=D(X(M),Y(M))-7 20484 If T3(M)=0 Then 20490 20485 Let A$(X(M),Y(M))=" ." 20487 If T3(M)=1 Then Return 20490 Let A$(X(M),Y(M))=D$(M) 20545 Return 20550 !CAST ILLUSION SUBROUTINE 20552 A9=FNA(1,18)\ If A9>G(X(M),Y(M)) Then Print "SORRY, YOU FAILED IN YOUR ATTEMPT ";\ Print "CAST AN ILLUSION."\ D(X(M),Y(M))=D(X(M),Y(M))-2\ Sleep 2\ Return 20555 Gosub 23650 20590 Let D(X(M),Y(M))=D(X(M),Y(M))-(S4+5) 20600 Return 20625 !CAST IMAGE SUBROUTINE 20638 A9=FNA(1,18)\ If A9>G(X(M),Y(M)) Then Print "SORRY, YOU FAILED IN YOUR ATTEMPT ";\ Print "TO CAST AN IMAGE."\ D(X(M),Y(M))=D(X(M),Y(M))-2\ Sleep 2\ Return 20645 Gosub 23650 20652 D(S1,S2)=1\ D(X(M),Y(M))=D(X(M),Y(M))-S4\ Return 20699 !CREATE WALL SUBROUTINE 20700 Gosub 25085 20702 If W=11 or W=0 or Z=11 or Z=0 Then Print "YOU DUMMY, YOU CAN'T PUT A ";\ Print "WALL OUTSIDE THE ARENA!!!"\ Let D(X(M),Y(M))=D(X(M),Y(M))-10\ Sleep 2\ Return 20704 If A(W,Z)<>0 Then Print "YOU SLY DEVIL. YOU KNOW DARN WELL THERE'S ";\ Print "ALREADY SOMEONE IN THAT SPACE."\ Let D(X(M),Y(M))=D(X(M),Y(M))-10\ Sleep 2\ Return 20708 A9=FNA(1,18)\ If A9>G(X(M),Y(M)) Then Print "SORRY, YOU FAILED TO CREATE A WALL."\ D(X(M),Y(M))=D(X(M),Y(M))-10\ Sleep 2\ Return 20710 D(X(M),Y(M))=D(X(M),Y(M))-10\ A$(W,Z)=" WL"\ Return 21000 !SUMMON A CREATURE SUBROUTINE 21015 A9=FNA(1,18)\ If A9>G(X(M),Y(M)) Then Print "SORRY, YOUR SUMMONING DIDN'T WORK."\ D(X(M),Y(M))=D(X(M),Y(M))-5\ Sleep 2\ Return 21040 Gosub 23650 21050 If A(X(M),Y(M))=1 Then A(S1,S2)=A(S1,S2)-10 Else A(S1,S2)=A(S1,S2)+10 21070 If O6=0 Then D(X(M),Y(M))=D(X(M),Y(M))-(S4+10) 21100 Return 21500 !DISBELIEVE SUBROUTINE 21505 Input "WHICH SPACE DO YOU WANT TO DISBELIEVE (ROW#, COLUMN#)"; S1,S2 21506 If S1>10 or S1<1 or S2>10 or S2<1 Then Return 21510 If Abs(A(S1,S2))<10 Then Print "SORRY, THIS CREATURE IS FLESH AND ";\ Print "BLOOD: NOT AN ILLUSION OR IMAGE."\ Let D(X(M),Y(M))=D(X(M),Y(M))-5\ Sleep 2\ Return 21511 If A(S1,S2)=0 Then Print "THERE'S NOBODY IN THAT SPACE!"\ Let D(X(M),Y(M))=D(X(M),Y(M))-5\ Sleep 2\ Return 21512 If A$(S1,S2)=" WL" Then Print "SORRY CHUMP, YOU CAN'T DO THAT TO A ";\ Print "WALL."\ Sleep 2\ Return 21515 A(S1,S2)=0\ D(S1,S2)=0\ G(S1,S2)=0\ A$(S1,S2)=" ."\ O6=O6+1 22000 !EMERGANCY TELEPORT SUBROUTINE 22005 Let S1=FNA(1,9) 22010 Let S2=FNA(1,9) 22012 If A(S1,S2)=0 Then 22020 22013 Print "SORRY, "; 22014 If A(X(M),Y(M))=1 Then Print F$; Else Print G$; 22015 Print "YOU,VE TELEPORTED FOR THE LAST TIME."\ Goto 30020 22020 V$=A$(X(M),Y(M))\ V1=A(X(M),Y(M))\ V2=D(X(M),Y(M))\ V3=G(X(M),Y(M))\ A$(X(M),Y(M))=" ."\ A(X(M),Y(M))=0\ D(X(M),Y(M))=0\ G(X(M),Y(M))=0\ X(M)=S1\ Y(M)=S2\ A$(X(M),Y(M))=V$\ A(X(M),Y(M))=V1\ D(X(M),Y(M))=V2\ G(X(M),Y(M))=V3\ D(X(M),Y(M))=D(X(M),Y(M))-10\ Return 22500 !DESTROY CREATION SUBROUTINE 22504 A9=FNA(1,18)\ If A9>G(X(M),Y(M)) Then Print "SORRY, YOU FAILED TO DESTROY THAT ";\ Print "CREATURE."\ D(X(M),Y(M))=D(X(M),Y(M))-5\ Sleep 2\ Return 22505 Input "WHICH SPACE DO YOU WANT TO DESTROY (ROW#, COLUMN#)"; S1,S2 22508 If S1>10 or S1<1 or S2>10 or S2<1 Then Return 22509 If A$(S1,S2)=" WL" Then Print "THERE'S A WALL IN THAT SPACE."\ Sleep 2\ Return 22510 If Abs(A(S1,S2))=1 Then Print "YOU CAN'T DESTROY A WIZARD THAT WAY, ";\ Print "STUPID!!!"\ Let D(X(M),Y(M))=D(X(M),Y(M))-10\ Sleep 2\ Return 22511 If A(S1,S2)>10 Then Print "THAT'S NOT A CREATION, IT'S AN IMAGE OR ";\ Print "ILLUSION."\ Let D(X(M),Y(M))=D(X(M),Y(M))-10\ Sleep 2\ Return 22512 If A(S1,S2)=0 Then Print "THERE'S NOBODY IN THAT SPACE."\ Let D(X(M),Y(M))=D(X(M),Y(M))-10 22515 Let A(S1,S2)=0 22520 Let D(S1,S2)=0 22525 Let G(S1,S2)=0 22530 Let A$(S1,S2)=" ." 22540 Let D(X(M),Y(M))=D(X(M),Y(M))-3 22545 Let O6=O6+1 22550 Return 23000 !COMBAT SUBROUTINE 23003 Gosub 25085 23004 If W=0 or W=11 or Z=0 or Z=11 Then Print "FORGIVE ME, MASTER, ";\ Print "I'M NOT ENGAGED."\ Sleep 2\ Return 23005 If A(W,Z)=0 Then Print "I'M SORRY, MASTER, I'M NOT ENGAGED."\ Sleep 2\ Return 23025 Let T1=FNA(1,9) 23030 On T1 Gosub 23035,23040,23045,23050,23055,23060,23065,23070,23075 23032 Return 23035 & "SWISH! I MISSED COMPLETELY!"\ Sleep 2\ Return 23040 & "SPANG! HIS ARMOUR TOOK IT!"\ Sleep 2\ Return 23045 & "SKRANG! HE PARRIED IT!"\ Sleep 2\ Return 23050 & "SWISH! A CLEAN MISS!"\ Sleep 2\ Return 23055 & "WOW! I HURT HIM CLEAR THROUGH HIS ARMOUR!"\ Sleep 2\ Goto 23080 23060 & "SLIP! I FOUND THAT CHINK IN HIS ARMOUR!"\ Sleep 2\ Goto 23080 23065 & "I REALLY HURT HIM THAT TIME! HE'S BLEADING BAD!"\ Sleep 2\ Goto 23080 23070 & "WOW! THAT MUST'VE HURT! I TAGGED HIS SWORD ARM!"\ Sleep 2\ Goto 23080 23075 & "HE MUST REALLY BE IN PAIN! HIS BLOOD IS DRIPPING ON THE GROUND!"\ Sleep 2\ Goto 23080 23080 Let D(W,Z)=D(W,Z)-H(M) 23100 If D(W,Z)<1 Then & "HE'S DEAD, MASTER."\ A(W,Z)= 0\ A$(W,Z)=" ."\ D(W,Z)=0\ G(W,Z)=0\ O6=O6+1 23104 Sleep 2 23105 Return 23649 !CREATE A CREATURE SUBROUTINE 23650 Input "WHAT CREATURE DO YOU WANT <CR>"; S 23651 If S=0 Then Gosub 28104 23652 If S=0 Then 23650 23653 If S<0 or S>5 or S<>Int(S) Then Let S=FNA(1,5) 23665 S1=FNA(1,9)\ S2=FNA(1,9)\ If A(S1,S2)<>0 Then 23665 23670 N=N+1 23675 On S Gosub 24050,24100,24150,24200,24250 23680 X(N)=S1\ Y(N)=S2\ If A(X(M),Y(M))=1 Then K(N)=1 Else K(N)=5 23685 Return 23750 !DELIVER KILLING BLOW TO WIZARD 23755 Gosub 25085 23756 If W=0 or W=11 or Z=0 or Z=11 Then Return 23765 If Abs(A(W,Z))<>1 Then Print "YOU IDIOT, THERE'S NOT A WIZARD IN ";\ Print "SIGHT."\ Sleep 2\ Return 23770 Print "SORRY, "; 23775 If A(W,Z)=-1 Then Print G$; Else Print F$; 23776 Print ", YOU LOSE. WE'LL NOTIFY YOUR FAMILY." 23778 &\ &\ & 23780 Goto 30020 24050 A$(S1,S2)=" W"+Num1$(O1+1) 24055 If A(X(M),Y(M))=1 Then A(S1,S2)=12 Else A(S1,S2)=-12 24060 D(S1,S2)=FNA(5,7)\ G(S1,S2)=FNA(15,15)\ H(N)=12\ S4=3\ O1=O1+1\ D$(N)="WOLF #"+Num1$(O1)\ Return 24100 A$(S1,S2)=" M"+Num1$(O2+1) 24105 If A(X(M),Y(M))=1 Then A(S1,S2)=13 Else A(S1,S2)=-13 24110 D(S1,S2)=FNA(5,15)\ G(S1,S2)=FNA(5,15)\ H(N)=15\ S4=4\ O2=O2+1\ D$(N)="MYRMIDON #"+Num1$(O2)\ Return 24150 A$(S1,S2)=" B"+Num1$(O3+1) 24155 If A(X(M),Y(M))=1 Then A(S1,S2)=14 Else A(S1,S2)=-14 24160 D(S1,S2)=FNA(10,20)\ G(S1,S2)=FNA(10,20)\ H(N)=16\ S4=10\ O3=O3+1\ D$(N)="BEAR #"+Num1$(O3)\ Return 24200 A$(S1,S2)=" G"+Num1$(O4+1) 24205 If A(X(M),Y(M))=1 Then A(S1,S2)=15 Else A(S1,S2)=-15 24210 D(S1,S2)=FNA(30,30)\ G(S1,S2)=FNA(5,15)\ H(N)=20\ S4=35\ O4=O4+1\ D$(N)="GIANT #"+Num1$(O4)\ Return 24250 A$(S1,S2)=" S"+Num1$(O5+1) 24255 If A(X(M),Y(M))=1 Then A(S1,S2)=16 Else A(S1,S2)=-16 24260 D(S1,S2)=FNA(10,10)\ G(S1,S2)=FNA(20,25)\ H(N)=14\ S4=10\ O5=O5+1\ D$(N)="SNAKE #"+Num1$(O5)\ Return 25085 !MOVE SUBROUTINE 25090 Let X=X(M) 25095 Let Y=Y(M) 25100 On K(M) Goto 25110,25115,25120,25125,25130,25135,25140,25145 25110 Let W=X+1\ Z=Y+1\ Goto 25150 25115 Let W=X\ Z=Y+1\ Goto 25150 25120 Let W=X-1\ Z=Y+1\ Goto 25150 25125 Let W=X-1\ Z=Y\ Goto 25150 25130 Let W=X-1\ Z=Y-1\ Goto 25150 25135 Let W=X\ Z=Y-1\ Goto 25150 25140 Let W=X+1\ Z=Y-1\ Goto 25150 25145 Let W=X+1\ Z=Y 25150 Return 25200 !MAT PRINT SUBROUTINE 25205 Print " 1 2 3 4 5 6 7 8 9 10" 25210 For I=1 to 10 25215 If I<10 Then Print " "; I; Else Print I; 25220 For J=1 to 10 25225 Print A$(I,J); 25230 Next J 25235 Print\ Print 25240 Next I 25245 Return 25300 !SORTING SUBROUTINE 25305 Let R8=0 25310 For M=1 to N 25315 If G(X(M),Y(M))>=G(X(M+1),Y(M+1)) Then 25415 25320 U1=X(M+1)\ U2=Y(M+1)\ U3=H(M+1)\ U4=K(M+1)\ U5=T3(M+1)\ M$=D$(M+1)\ X(M+1)=X(M)\ Y(M+1)=Y(M)\ H(M+1)=H(M)\ K(M+1)=K(M)\ T3(M+1)=T3(M)\ D$(M+1)=D$(M)\ X(M)=U1\ Y(M)=U2\ H(M)=U3\ K(M)=U4\ T3(M)=U5\ D$(M)=M$\ R8=R8+1 25415 Next M 25420 If R8>0 Then 25305 25430 Return 25503 If D(X(M),Y(M))<1 Then & "SORRY, "; F$; " YOU LOSE."+ " WE'LL INFORM YOUR FAMILY."\ Goto 30020 25525 Goto 25603 25552 If D(X(M),Y(M))<1 Then Print "SORRY, "; G$; ", YOU LOSE.";\ Print " WE'LL INFORM YOUR FAMILY."\ Goto 30020 25603 Gosub 25670 25604 Wait 25 25605 Input "DO YOU WANT TO CHANGE YOUR FACING <CR>"; B$ 25606 If B$="" Then Gosub 28132 25607 If B$="" Then 25605 25610 If Left(B$,1%)="Y" Then Gosub 20000 25611 Gosub 25670 25614 Wait 25 25615 Input "DO YOU WANT TO MOVE"; B$ 25620 If Left(B$,1%)="Y" Then Gosub 20015 25621 Gosub 25670 25634 Wait 25 25635 Input "YOUR COMMAND <CR>"; T 25637 If T=0 Then Gosub 28040 25638 If T=0 Then 25634 25640 If T<>Int(T) or T<1 or T>6 Then Return 25650 On T Gosub 20150,21000,21500,22000,20015,22500 25651 If D$(M)=" "+Left(F$,1%)+Right(F$,Len(F$)) and D(X(M),Y(M))<1 Then & "SORRY "; F$; ", YOU LOSE. WE'LL INFORM YOUR FAMILY."\ & For X9=1 to 9\ Goto 30020 25652 If D$(M)=" "+Left(G$,1%)+Right(G$,Len(G$)) and D(X(M),Y(M))<1 Then & "SORRY "; G$; ", YOU LOSE. WE'LL INFORM YOUR FAMILY."\ & For X9=1 to 9\ Goto 30020 25655 Return 25670 !WIZARD'S TURN SUBROUTINE PART 2 25672 & Chr$(26%); 25673 Gosub 25200 25674 If Abs(A(X(M),Y(M)))<>1 Then Print "I AM "; D$(M); Space$(5%);\ Print "I BELONG TO "; 25675 If A(X(M),Y(M))>=1 Then Print F$; Else Print G$; 25676 If Abs(A(X(M),Y(M)))<>1 Then Print 25680 If Abs(A(X(M),Y(M)))=1 Then Print Space$(5%); 25681 Print "FACING:"; K(M); Space$(5%);\ Print "DX:"; G(X(M),Y(M)); Space$(5%);\ Print "ST:"; D(X(M),Y(M)) 25690 Return 25700 !CHARACTERS TURN SUBROUTINE 25715 Gosub 25670 25719 Wait 25 25720 Input "MASTER, AM I TO CHANGE MY FACING"; B$ 25722 If B$="" Then Gosub 28132 25723 If B$="" Then 25719 25725 If Left(B$,1%)="Y" Then Gosub 20000 25726 Gosub 25670 25729 Wait 25 25730 Input "MASTER, AM I TO MOVE"; B$ 25735 If Left(B$,1%)="Y" Then Gosub 20015 25740 Gosub 25670 25749 Wait 25 25750 Input "MASTER, YOUR COMMAND <CR>"; T 25752 If T=0 Then Gosub 28072 25753 If T=0 Then 25749 25755 If T<0 or T>6 or T<>Int(T) Then Return 25760 On T Gosub 20015,23000,23000,23000,21500,23750 25767 Print For X9=1 to 15 25770 Return 28000 & Chr$(26%); !LIST OF SPELLS SUBROUTINE 28001 & Tab(10); "0) PRINT THIS LIST"\ & Tab(10); "1) LIGHTNING"\ & Tab(10); "2) CLUMSINESS"\ & Tab(10); "3) AID"\ & Tab(10); "4) CONTROL ANIMAL"\ & Tab(10); "5) INVISIBILITY"\ & Tab(10); "6) CAST ILLUSION"\ & Tab(10); "7) CAST IMAGE"\ & Tab(10); "8) CREATE WALL"\ & For X9=1 to 15\ Sleep 5\ Goto 25670 28040 & Chr$(26%); !LIST OF WIZARDS COMMANDS SUBROUTINE 28041 & Tab(10); "0) PRINT THIS LIST"\ & Tab(10); "1) CAST A SPELL"\ & Tab(10); "2) SUMMON A CREATURE"\ & Tab(10); "3) DISBELIEVE"\ & Tab(10); "4) EMERGANCY TELEPORT"\ & Tab(10); "5) MOVE AGAIN"\ & Tab(10); "6) DESTROY CREATION"\ & For X9=1 to 15\ Sleep 5\ Goto 25670 28072 & Chr$(26%); !LIST OF CREATURE COMMANDS SUBROUTINE 28073 & Tab(10); "0) PRINT THIS LIST"\ & Tab(10); "1) MOVE AGAIN"\ & Tab(10); "2) STRIKE HIGH"\ & Tab(10); "3) STRIKE MID"\ & Tab(10); "4) STRIKE LOW"\ & Tab(10); "5) DISBELIEVE"\ & Tab(10); "6) DELIVER KILLING BLOW TO WIZARD"\ & For X9=1 to 15\ Sleep 5\ Goto 25670 28104 & Chr$(26%); !LIST OF CREATURES SUBROUTINE 28108 & Tab(10); "0) PRINT THIS LIST"\ & Tab(10); "1) WOLF (COST: +3)"\ & Tab(10); "2) MYRMIDON (COST: +4)"\ & Tab(10); "3) BEAR (COST: +10)"\ & Tab(10); "4) GIANT (COST: +35)"\ & Tab(10); "5) SNAKE (COST: +10)"\ & For X9=1 to 15\ Sleep 5\ Goto 25670 28132 & Chr$(26%); !FACING INSTRUCTIONS SUBROUTINE 28134 &\ & Tab(22); " 5 4 3"\ &\ & Tab(22); " 6"; A$(X(M),Y(M)); " 2"\ &\ & Tab(22); " 7 8 1"\ &\ & "MOVEMENT WILL BE ONE SPACE IN THE DIRECTION YOU FACE."\ & For X9=1 to 15\ Sleep 5\ Goto 25670 30000 If ERR=28 Then Input "DO YOU REALLY WANT OUT"; B$\ S$=Sys(Chr$(6%)+Chr$(-7))\ If Left(B$,1%)="N" Then Resume Else 30020 30001 IF ERR<>15 THEN 30004 30002 Print "SORRY TURKEY, YOU TOOK TOO LONG!!!!!!"\ Sleep 2 30003 If ERL=25605 Then Resume 25611 Else If ERL=25615 Then Resume 25621 Else If ERL=25635 Then Resume 25655 Else If ERL=25720 Then Resume 25726 Else If ERL=25730 Then Resume 25740 Else If ERL=25750 Then Resume 25767 Else If ERL=20165 Then Resume 25655 30004 IF ERR=11 AND ERL=20 THEN RESUME 21 ELSE IF ERR=11 THEN RESUME 30020 30005 IF ERR=50 THEN & CHR$(13%)+CHR$(11%)\ RESUME 30006 IF ERR=14 OR ERR=8 THEN & "DEVICE IS HUNG OR WRITE LOCKED."\ & "PLEASE PUT ON LINE AND HIT THE CARRIAGE RETURN TO CONTINUE"\ INPUT B$\ IF B$="" THEN RESUME ELSE 30030 30020 Input "DO YOU WANT A REMATCH"; B$\ If Left(B$,1%)="Y" Then 200 30030 & Chr$(26%); 30040 Print "WELL, IT WAS NICE PLAYING. COME AGAIN SOON." 30050 Sleep 4 30060 & Chr$(26%); 32000 Data " ." 32767 End
Unless otherwise noted, all photos and text is Copyright © Richard G Lowe, Jr.