For F=0 To 7 : HIGHSCORE(F)=150 : HIGHSCORE$(F)="CDG" : Next F
RESTART:
XCAL=0 : YCAL=0
MX=0 : MY=0 : MSHOT=0
MXPTR=Varptr(MX)
MYPTR=Varptr(MY)
MSHOTPTR=Varptr(MSHOT)
OLDSHOT=0
' Initialise Gun and screen
Dreg(0)=0
Call 6
Gosub AMSTRINGS
'
'
CALIBRATEGUN
L$="lev1"
NEXLEV:
Goto L$
Screen 2
'
'
MAIN:
'
'
'-------------- MAIN LOOP ------------------------
'........... SET UP...........
'
Screen Display 0,,242,,
Get Sprite Palette
Palette $0,$999
Screen 0 : Screen Hide 0
Cls : Screen Swap : Cls
For B=83 To 185 Step 34
For A=0 To 300 Step 75
Paste Icon A,B,2
Next A
Next B
Ink 0
Bar 0,0 To 320,83
Screen Show 0
Screen Display 2,,294,,
Screen 0
Screen Show 2
Screen To Front 2
Screen Hide 1
Channel 10 To Screen Display 0
X$="M 0,-200,50"
Amal 10,X$
Amal On 10
Channel 9 To Screen Display 2
Z$="M 0,-50,25"
Amal 9,Z$
Amal On 9
Wait 50
Screen 0
Ink 10
POUR
Bar 0,0 To 320,83
Paste Icon 0,-6,3
For A=1 To SIZEWAVE
Bob A,STRTX(A),STRTY(A),1
Channel A To Bob A
Amal A,A$
Amal On A
Next A
Screen 2 : Gosub CLOCK : Screen 0
HIT=0
Amreg(4)=X Bob(12)
Channel 12 To Bob 12
GAUGE$="L: L X=RE;I X>10 J L;"
Amal 12,GAUGE$
Amal On 12
'
'
MLOP:
While I Bob(13)+I Bob(14)+I Bob(15)>60
If METHOD=1
TRIGGER
Else MOOSE
End If
If MSHOT=-1 : Bob 20,MX,MY,1 : Sam Play %1001,1,11000 : If Bob Col(20) : HITWHO : Amal Off HIT : DIE
End If : End If
If Amreg(2)=1 : For DED=1 To SIZEWAVE : If Chanmv(DED)=0 : Channel DED To Bob DED : Amal DED,A$ : Amal On DED : End If : Next DED : Amreg(2)=0 : End If
If X Bob(12)=10
Bob 12,10,,
DEFEATPIC
Bank Swap 1,9
Screen 1
Screen To Front 1
Screen Show 1
Unpack 8 To 1
If SCORE>HIGHSCORE(7)
NUHIGH
End If
PRTHIGH
Bank Swap 1,9
Screen To Back 1
Goto RESTART
End If
Wend
For DI=1 To SIZEWAVE : Bob DI,,266, : Bob Off DI : Next DI