Cannonade

Publication

Pub Details

Date

Pages

See all articles from SYNC v1 n5

In Cannonade you are the commander (choose your own rank) of a squad of six men. You have been given as your next objective the capture of an enemy gun emplacement. Your men must outmaneuver the gun’s handlers. If they are spotted as they are advancing, they may be fired upon. When a man is hit, he cannot return to his base until the gunner is distracted and fires on another target. Should one of your men breach the fortification protecting the emplacement, the gun is silenced and the position is taken.

Source Code

  10 REM *CANNONADE  SYNC 1-5   PAGE 32
  20 LET T=4
  30 LET D=0
  40 LET X=0
  50 DIM L(20)
  60 DIM M(6)
  70 DIM P(6)
  80 LET L(20)=2
  90 FOR I=1 TO 6
 100 LET P(I)=1
 110 LET M(I)=1
 120 IF I>3 THEN LET M(I)=M(I)+1
 130 NEXT I
 140 RANDOMIZE 
 150 CLS 
 160 FOR I=1 TO 7
 170 FOR K=1 TO 19
 180 LET L(K)=0
 190 NEXT K
 200 PRINT I;" ";
 210 FOR J=1 TO 6
 220 IF NOT M(J)=I THEN GO TO 280
 230 IF L(P(J))=0 OR L(P(J))=2 THEN GO TO 260
 240 LET P(J)=P(J)+1
 250 GO TO 230
 260 LET L(P(J))=J+37
 270 IF D=J THEN LET L(P(J))=J+165
 280 NEXT J
 290 FOR K=1 TO 20
 300 PRINT CHR$ (L(K));
 310 NEXT K
 320 LET L(20)=2
 330 IF NOT T=I THEN GO TO 350
 340 PRINT "\''#\.. ";I;
 350 PRINT 
 360 NEXT I
 370 PRINT 
 380 FOR I=1 TO 6
 390 IF P(1)=20 THEN GO TO 660
 400 NEXT I
 410 PRINT "MAN:"
 420 INPUT A$
 430 IF A$="" THEN GO TO 670
 440 LET X=X+1
 450 LET Q= CODE (A$)-37
 460 LET P(Q)=P(Q)+ RND*5+3
 470 IF P(Q)>20 THEN LET P(Q)=20
 480 LET J= RND*3
 490 IF J=1 THEN GO TO 550
 500 IF J=2  THEN LET K=-1
 510 IF J=3 THEN LET K=1
 520 LET I=M(Q)
 530 IF I+K=0 OR I+K=8 THEN GO TO 480
 540 LET M(Q)=I+K
 550 IF RND*3=2 THEN GO TO 140
 560 LET P(D)=1
 570 LET D=0
 580 LET J= RND*3
 590 FOR I=1 TO 6
 600 IF P(1)<K OR D=I THEN GO TO 640
 610 LET K=P(I)
 620 LET D=I
 630 LET T=M(I)
 640 NEXT I
 650 GO TO 140
 660 PRINT "GUN CAPTURED IN ";
 670 PRINT X;" MOVES."
 680 STOP