home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
17 Bit Software 2: Collection B
/
17Bit_Collection_B.iso
/
files
/
2300.dms
/
2300.adf
/
autoexc.AMOS
/
autoexc.amosSourceCode
next >
Encoding:
Amiga
Atari
Commodore
DOS
FM Towns/JPY
Macintosh
Macintosh JP
Macintosh to JP
NeXTSTEP
RISC OS/Acorn
Shift JIS
UTF-8
Wrap
AMOS Source Code
|
1993-03-30
|
40.3 KB
|
1,881 lines
Screen Open 0,320,256,32,LORES
Close Workbench
Close Editor
On Error Goto ERRIN
Curs Off : Hide : Cls 0 : Flash Off
Paper 0 : Pen 3 : Locate 0,10 : Centre "Please Wait"
Global P
Global S
Global SCORE
Global LIVES
Global WHICH
Global HANDIES$
CODEY$="START"
LIVES=3
Screen Hide 0
Screen 0
Dir$="df0:"
Load "matchstickmansprite.abk"
Load "musicingame.abk",3
Load "samples.abk"
Get Sprite Palette
Make Mask
Screen Open 1,320,256,32,LORES
Hide : Curs Off : Cls 0
Paper 0
If JUSTGO=0 Then Goto STRT
STAGE1:
Bank Swap 9,3
Screen 1
LIVES=3
SCORE=0
WHICH=1
JUSTSTART=0 : Screen Show 1
Locate 0,13 : Pen 3 : Centre "Stage 1"
Wait 10
WAFIRE
Screen Open 0,320,256,32,LORES
Screen Hide 0
Screen 0 : Hide : Curs Off : Cls 0
Load Iff "background"
Get Sprite Palette
Screen 1
Cls 0
Pen 2
Locate 0,5 : Centre "Level 1"
Locate 0,13 : Centre "If you can't do this"
Locate 0,14 : Centre "go and buy a console"
Wait 10
WAFIRE
Sam Play 15,2,10000
Wait 100
Screen Hide 1
Screen Show 0
Wait 10
Screen 0
Bob 1,1,159,1
Sprite 2,430,184,14
SETUP:
If JUSTGO=0 Then Gosub CHANNES
Music 1
Ink 2,21,
Text 10,10,"Score: "+Str$(SCORE)
A=0
Text 200,10,"Lives: "+Str$(LIVES)
If WHICH=10 Then Wait 10 : Amal On 11
If WHICH=10 Then Wait 20 : Amal On 10
If WHICH=10 Then Wait 20 : Amal On 9
TEST:
A=0
COMPLETE=0
Do
PAUS$=Inkey$
If X Bob(1)<0 Then Bob 1,0,159,4
If Y Bob(1)>159 Then Bob 1,1,159,1
If Bobsprite Col(1,2 To 2)=True Then Gosub COMPLETE : COMPLETE=1 : If JUSTGO=0 Then Goto WHY
If Bob Col(1,2 To 5)=True Then Gosub LOSELIFE : If JUSTGO=0 Then Goto WHY
If Bobsprite Col(1,3 To 15)=True Then Gosub LOSELIFE : Bob 1,1,159,1 : If JUST=0 Then Goto WHY
If PAUS$="p" Then Gosub PAUSE
If PAUS$="P" Then Gosub PAUSE
If PAUS$="@" Then Bell : Load "end.abk",3 : Music 1 : LIVES=99
If PAUS$="c" Then _COPYRIGHT
If Fire(1) Then GOUP
If Jright(1) Then GORIT : If A=0 Then Goto TEST
If Jleft(1) Then GOLEF : If A=0 Then Goto TEST :
If P=2 Then Bob 1,X Bob(1),Y Bob(1),1 : Amal Off 2
If P=1 Then Bob 1,X Bob(1),Y Bob(1),4 : Amal Off 3
Wait 1
Loop
Procedure GORIT
Amal Off 3
Move X 1,"(1,2,2)"
If Chanan(2)=True Then Goto SKIP
Amal 2,"A 1,(2,5)(3,5)"
Amal On 2
SKIP:
Move On 1
Wait 1
P=2
End Proc
Procedure GOLEF
Amal Off 2
Move X 1,"(1,-2,2)"
If Chanan(3)=True Then Goto SKOP
Amal 3,"A 1,(5,5)(6,5)"
Amal On 3
SKOP:
Move On 1
Wait 1
P=1
End Proc
Procedure GOUP
If Movon(6)=True Then Goto DURR
If Movon(6)=True Then Goto DURR
Move Y 6,"(1,-2,10)(1,-2,7)(1,2,7)(1,2,10)"
Move On 6
DURR:
Wait 1
End Proc
COMPLETE:
Channel 12 To Sprite 2
Amal 12,"A 10,(14,10)(15,10)"
Amal On 12
Sam Play 8,1
Wait 100
If WHICH=40 Then Goto OLDBLOKE
Amal Off
For TATA=2 To 10
Bob Off TATA
Sprite Off TATA
Next
If WHICH=10 Then Goto YO
If WHICH=20 Then Goto YO
If WHICH=30 Then Goto YO
For T=1 To 160
If WHICH>30 Then GOLEF3 Else GOLEF
Next
SCORE=SCORE+100
Return
Procedure WAFIRE
Do
If Fire(1) Then Goto SKILL
Loop
SKILL:
End Proc
LOSELIFE:
Music Off
Wait 10
Amal Off
For TTRTT=1 To 3
For ERT=1 To 7
Shoot
Wait 1
Next ERT
Wait 10
Next TTRTT
COMPLETE=0
LIVES=LIVES-1
If LIVES=0 Then Goto GAMEOVERMAN
Return
GAMEOVERMAN:
Amal Off
For A=2 To 10
Bob Off A
Sprite Off A
Next
Wait 100
Channel 7 To Bob 1
Amal 7,"A 1,(1,10)(23,10)(24,10)(25,10)(26,10)(27,100)"
Amal On 7
Wait 100
LE=X Bob(1)
LO=Y Bob(1)
Screen 1
Cls 0
Screen 0
Zoom 0,LE-15,LO-15,LE+35,LO+35 To 1,110,100,210,200
Screen Hide 0
Screen Show 1
Screen 1
Get Sprite Palette
Locate 0,5 : Centre "Despite your galent efforts you have"
Locate 0,6 : Centre "failed. Without you to save them,"
Locate 0,7 : Centre "the matches are certainly doomed to"
Locate 0,8 : Centre "a terrible and striking death."
Locate 0,9 : Centre "Olag has won and so the match stick"
Locate 0,10 : Centre "men will become extinct."
Locate 0,11 : Centre "I'm sorry but for you and your fellow"
Locate 0,12 : Centre "matches it's...."
Locate 0,27 : Centre "Your Score:"+Str$(SCORE)
Locate 0,26 : Pen 3 : Centre "GAME OVER!"
Load "over.abk",3 : Music 1
Wait 280 : Music Off : Load "musicingame.abk",3
WAFIRE
WAFIRE
Wait 10
Cls 0
Bob Off
Sprite Off
JUSTSTART=1
If JUSTG0=0 Then Goto LETSGO
YO:
SCORE=SCORE+100
For BO=2 To 6
Bob Off BO
Next BO
Wait 10
Bob 2,150,165,18
For Y=1 To 160
GOLEF
If Bob Col(1)=True Then Goto ANI
Next
ANI:
Bob Off 2
Channel 7 To Bob 1
Bob 1,X Bob(1),150,1
Amal 7,"A 0,(16,10)(17,10)"
Amal On 7
Wait 200
Fade 5
For LESS=60 To 0 Step -1
Mvolume LESS
Wait 2
Next
Bob Off
Sprite Off
Cls 0
Music Off
If JUSTGO=0 Then Gosub BONUS
Mvolume 60
If WHICH=10 Then Goto STAGE2
If WHICH=20 Then Goto STAGE3
If WHICH=30 Then Goto STAGE4
WHY:
If COMPLETE=1 Then WHICH=WHICH+1
If WHICH=2 Then Gosub LEVEL2
If WHICH=3 Then Gosub LEVEL3
If WHICH=4 Then Gosub LEVEL4
If WHICH=5 Then Gosub LEVEL5
If WHICH=6 Then Gosub LEVEL6
If WHICH=7 Then Gosub LEVEL7
If WHICH=8 Then Gosub LEVEL8
If WHICH=9 Then Gosub LEVEL9
If WHICH=10 Then Gosub LEVEL10
LEVELSETUP:
Bob Off
Sprite Off
Screen Hide 0
Screen Show 1
Screen 1
Cls 0
Locate 0,5 : Centre LEV$
Locate 0,13 : Centre MES1$
Locate 0,14 : Centre MES2$
Wait 10
WAFIRE
Wait 10
Screen Hide 1
Screen Show 0
Screen 0
If WHICH=2 Then Gosub LEVEL2SET
If WHICH=3 Then Gosub LEVEL3SET
If WHICH=4 Then Gosub LEVEL4SET
If WHICH=5 Then Gosub LEVEL5SET
If WHICH=6 Then Gosub LEVEL6SET
If WHICH=7 Then Gosub LEVEL7SET
If WHICH=8 Then Gosub LEVEL8SET
If WHICH=9 Then Gosub LEVEL9SET
If WHICH=10 Then Gosub LEVEL10SET
If JUSTGO=0 Then Goto SETUP
LEVEL3:
LEV$="Level 3"
MES1$="Dont look cigerette lovers!"
MES2$=""
Return
LEVEL3SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 3,200,75,11
Channel 7 To Bob 3
CIG$="Loop:M 0,59,30:M 0,-59,30:Jump Loop"
Amal 7,CIG$
Amal On 7
Return
LEVEL4:
LEV$="Level 4"
MES1$="Dont look cigerette lovers!"
MES2$="PART 2!!!!!"
Return
LEVEL4SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 3,200,75,11
Bob 4,100,75,11
Channel 7 To Bob 3
Channel 8 To Bob 4
Amal 8,CIG$
Amal 7,CIG$
Amal On 8
Wait 10
Amal On 7
Return
LEVEL2:
LEV$="Level 2"
MES1$="You might just have to use that"
MES2$="fire button now (oh no!!)"
Return
LEVEL2SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 3,150,159,$8000+7
Channel 7 To Bob 3
Amal 7,"A 0,($8000+7,50)($8000+8,50)"
Amal On 7
Return
LEVEL5:
LEV$="Level 5"
MES1$="This is getting harder"
MES2$="don't you think?"
Return
LEVEL5SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 3,350,157,9
Channel 7 To Bob 3
MATC$="Loop:A 0,(9,5)(10,5):M -400,0,200:A 0,($8000+9,5)($8000+10,5):M 400,0,200:Jump Loop"
Amal 7,MATC$
Amal On 7
Return
LEVEL6:
LEV$="Level 6"
MES1$="You will never look at a match"
MES2$="the same way again..."
Return
LEVEL6SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 3,350,157,9
Bob 2,200,157,$8000+9
Channel 7 To Bob 3
Channel 8 To Bob 2
Amal 8,MATC$
Amal 7,MATC$
Amal On 8
Amal On 7
Return
LEVEL7:
LEV$="Level 7"
MES1$="Seeing its lucky level 7"
MES2$="we'll have an easy level"
Return
LEVEL7SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,100,59,13
Bob 3,200,59,13
Channel 7 To Bob 2
Channel 8 To Bob 3
FDRIBBLE$="A 0,(12,5)(13,5):Loop:M 0,105,40:M 0,-105,1:Jump Loop"
Amal 7,FDRIBBLE$
Amal 8,FDRIBBLE$
Amal On 7
Amal On 8
Return
LEVEL8:
LEV$="Level 8"
MES1$="Thats enough easy levels...."
MES2$=""
Return
LEVEL8SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Sprite 8,300,200,7
Bob 2,100,75,11
Bob 3,350,157,9
Channel 7 To Sprite 8
Channel 8 To Bob 2
Channel 9 To Bob 3
Amal 8,CIG$
Amal On 8
Amal 9,MATC$
Amal On 9
Amal 7,"A 0,(7,50)(8,50)"
Amal On 7
Return
LEVEL9:
LEV$="Level 9"
MES1$="BE AFRAID BE VERY AFFRAID!!!!"
MES2$=""
Return
LEVEL9SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Sprite 8,300,100,13
Bob 2,350,157,9
Bob 3,150,159,$8000+7
Channel 7 To Sprite 8
Channel 9 To Bob 2
Channel 10 To Bob 3
Amal 7,FDRIBBLE$
Amal On 7
Amal 9,MATC$
Amal On 9
Amal 10,"A 0,($8000+7,50)($8000+8,50)"
Amal On 10
Return
LEVEL10:
LEV$="Level 10"
MES1$="One level away!!!!!!!!"
MES2$="(The GRAVE YARD level!!!!!)"
Return
LEVEL10SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,100,163,19
Bob 3,200,163,19
Bob 4,150,163,19
Bob 5,50,163,19
Bob 6,250,163,19
Channel 7 To Bob 2
Channel 8 To Bob 3
Channel 9 To Bob 4
Channel 10 To Bob 5
Channel 11 To Bob 6
SKEL$="A 0,(19,10)(20,5)(21,10)(22,10)(21,10)(22,10)(21,10)(20,10)"
Amal 7,SKEL$
Amal On 7
Amal 8,SKEL$
Amal On 8
Amal 9,SKEL$
Amal 10,SKEL$
Amal 11,SKEL$
Return
STAGE2:
If JUSTGO=0 Then Gosub CHANNES
If JUSTSTART=1 Then Bank Swap 9,3
Screen Hide 0
Screen Open 0,320,256,32,LORES
Screen Hide 0 : Screen 0 : Curs Off : Cls 0 : Hide
WHICH=11
Wait 1
Screen Show 1
Screen 1
Cls 0
Locate 0,13 : Pen 3 : Centre "Stage 2"
Locate 0,20 : Pen 2 : Centre "Stage Code:Green Blobs"
CODEY$="GREEN BLOBS"
If JUSTSTART=1 Then LIVES=3
JUSTSTART=0
Pen 2
Screen 0
WAFIRE
Load Iff "background2"
Get Sprite Palette
Set Rainbow 0,12,255,"","","(16,1,1)"
Rainbow 0,1,1,255
If JUSTGO=0 Then Goto WHY2
LEVEL11:
LEV$="Level 11"
MES1$="You have saved 10 matches already"
MES2$="but that is just the tip of the iceburg!"
If JUSTGO=0 Then Goto LEVELSETUP2
LEVEL11SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,150,167,32
Return
SETUP2:
Music 1
Ink 2,21,
If WHICH>20 Then Ink 2,9
Text 10,10,"Score: "+Str$(SCORE)
Ink 2,12
If WHICH>20 Then Ink 2,9
Text 200,10,"Lives: "+Str$(LIVES)
If WHICH=25 Then Wait 10 : Amal On 9
TEST2:
COMPLETE=0
Do
PAUS$=Inkey$
If X Bob(1)<0 Then Bob 1,1,159,4
If Y Bob(1)>159 Then Bob 1,1,159,1
If Bobsprite Col(1,2 To 2)=True Then Gosub COMPLETE : COMPLETE=1 : If JUSTGO=0 Then Goto WHY2
If Bob Col(1,2 To 9)=True Then Gosub LOSELIFE : If JUSTGO=0 Then Goto WHY2
If Bobsprite Col(1,3 To 15)=True Then Gosub LOSELIFE : Bob 1,1,159,1 : If JUSTGO=0 Then Goto SETUP2
If PAUS$="p" Then Gosub PAUSE
If PAUS$="P" Then Gosub PAUSE
If Fire(1) Then GOUP
If Jright(1) Then GORIT2 : If JUSTGO=0 Then Goto TEST2
If Jleft(1) Then GOLEF2 : If JUSTGO=0 Then Goto TEST2
If P=2 Then Bob 1,X Bob(1),Y Bob(1),1 : Amal Off 2
If P=1 Then Bob 1,X Bob(1),Y Bob(1),4 : Amal Off 3
Wait 1
Loop
WHY2:
If COMPLETE=1 Then WHICH=WHICH+1
If WHICH=11 Then Gosub LEVEL11
If WHICH=12 Then Gosub LEVEL12
If WHICH=13 Then Gosub LEVEL13
If WHICH=14 Then Gosub LEVEL14
If WHICH=15 Then Gosub LEVEL15
If WHICH=16 Then Gosub LEVEL16
If WHICH=17 Then Gosub LEVEL17
If WHICH=18 Then Gosub LEVEL18
If WHICH=19 Then Gosub LEVEL19
If WHICH=20 Then Gosub LEVEL20
If WHICH=21 Then Gosub LEVEL21
If WHICH=22 Then Gosub LEVEL22
If WHICH=23 Then Gosub LEVEL23
If WHICH=24 Then Gosub LEVEL24
If WHICH=25 Then Gosub LEVEL25
If WHICH=26 Then Gosub LEVEL26
If WHICH=27 Then Gosub LEVEL27
If WHICH=28 Then Gosub LEVEL28
If WHICH=29 Then Gosub LEVEL29
If WHICH=30 Then Gosub LEVEL30
Procedure GOLEF2
Amal Off 2
Move X 1,"(1,-2,2)"
If Chanan(3)=True Then Goto SKOP
Amal 3,"A 1,(5,5)(6,5)"
Amal On 3
SKOP:
Move On 1
Wait 1
If X Bob(1)>X Bob(2) Then Bob 2,X Bob(2)+1,Y Bob(2),$8000+32
If X Bob(1)<X Bob(2) Then Bob 2,X Bob(2)-1,Y Bob(2),32
P=1
End Proc
Procedure GORIT2
Amal Off 3
Move X 1,"(1,2,2)"
If Chanan(2)=True Then Goto SKIP
Amal 2,"A 1,(2,5)(3,5)"
Amal On 2
SKIP:
Move On 1
Wait 1
P=2
If X Bob(1)>X Bob(2) Then Bob 2,X Bob(2)+1,Y Bob(2),$8000+32
If X Bob(1)<X Bob(2) Then Bob 2,X Bob(2)-1,Y Bob(2),32
End Proc
LEVELSETUP2:
Bob Off
Sprite Off
Screen Hide 0
Screen Show 1
Screen 1
Cls 0
Locate 0,5 : Centre LEV$
Locate 0,13 : Centre MES1$
Locate 0,14 : Centre MES2$
Wait 10
WAFIRE
Wait 10
Screen Hide 1
Screen Show 0
Screen 0
If WHICH=11 Then Gosub LEVEL11SET
If WHICH=12 Then Gosub LEVEL12SET
If WHICH=13 Then Gosub LEVEL13SET
If WHICH=14 Then Gosub LEVEL14SET
If WHICH=15 Then Gosub LEVEL15SET
If WHICH=16 Then Gosub LEVEL16SET
If WHICH=17 Then Gosub LEVEL17SET
If WHICH=18 Then Gosub LEVEL18SET
If WHICH=19 Then Gosub LEVEL19SET
If WHICH=20 Then Gosub LEVEL20SET
If WHICH=21 Then Gosub LEVEL21SET
If WHICH=22 Then Gosub LEVEL22SET
If WHICH=23 Then Gosub LEVEL23SET
If WHICH=24 Then Gosub LEVEL24SET
If WHICH=25 Then Gosub LEVEL25SET
If WHICH=26 Then Gosub LEVEL26SET
If WHICH=27 Then Gosub LEVEL27SET
If WHICH=28 Then Gosub LEVEL28SET
If WHICH=29 Then Gosub LEVEL29SET
If WHICH=30 Then Gosub LEVEL30SET
If JUSTGO=0 Then Goto SETUP2
LEVEL12:
LEV$="Level 12"
MES1$="You better get used to that green"
MES2$="slob!!!"
Return
LEVEL12SET:
Bob 1,1,159,4
Sprite 2,430,184,14
Bob 2,150,167,32
Bob 3,100,165,34
Bob 4,150,165,34
Bob 5,200,165,34
Return
LEVEL13:
LEV$="Level 13"
MES1$="I hope it's not Friday.....!"
MES2$=""
Return
LEVEL13SET:
Bob 1,1,159,4
Sprite 2,430,184,14
Bob 2,150,167,32
Bob 3,100,167,28
Bob 4,130,167,28
Bob 5,160,167,28
Bob 6,115,167,34
Channel 8 To Bob 3
Channel 9 To Bob 4
Channel 10 To Bob 5
SHARP$="A 0,(28,20)(29,10)(30,10)(31,10)(30,10)(29,10)(28,30)"
Amal 8,SHARP$
Amal 9,SHARP$
Amal 10,SHARP$
Amal On 9
Amal On 8
Amal On 10
Return
LEVEL14:
LEV$="Level 14"
MES1$="Its amazing the things you come"
MES2$="across, when saving a match."
Return
LEVEL14SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,150,167,32
Bob 3,100,167,35
Bob 4,250,167,35
Channel 8 To Bob 3
Channel 9 To Bob 4
FLAB$="Loop:A 0,(35,5)(36,5):M -25,0,25:A 0,($8000+35,5)($8000+36,5):M 25,0,25:Jump Loop"
Amal 8,FLAB$
Amal 9,FLAB$
Amal On 8
Amal On 9
Return
LEVEL15:
LEV$="Level 15"
MES1$="and I mean AMAZING!!"
MES2$=""
Return
LEVEL15SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,150,167,32
Bob 3,100,165,37
Bob 4,200,165,37
Bob 5,150,167,28
Channel 8 To Bob 3
Channel 9 To Bob 4
Channel 10 To Bob 5
JUMPING$="A 0,(37,10)(38,10)"
Amal 8,JUMPING$
Amal 9,JUMPING$
Amal 10,SHARP$
Amal On 8
Amal On 9
Amal On 10
Return
LEVEL16:
LEV$="Level 16"
MES1$="Being a match is quite striking"
MES2$=""
Return
LEVEL16SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,150,167,32
Bob 4,350,155,39
Channel 9 To Bob 4
BEE$="Loop:A 1,(39,1):M -400,0,150:A 1,($8000+39,1):M 400,0,150:Jump Loop"
Amal 9,BEE$
Amal On 9
Return
LEVEL17:
LEV$="Level 17"
MES1$="Shall we have a hard level??"
MES2$="Naaa!!!!!"
Return
LEVEL17SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,150,167,32
Bob 3,350,155,39
Bob 4,100,167,34
Bob 5,200,167,34
Channel 8 To Bob 3
Amal 8,BEE$
Amal On 8
Return
LEVEL18:
LEV$="Level 18"
MES2$="Yes lets........,"
Return
LEVEL18SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,150,167,32
Bob 3,350,155,39
Bob 4,50,155,39
Channel 8 To Bob 3
Channel 9 To Bob 4
BEE2$="Loop:A 1,($8000+39,1):M 200,0,100:A 1,(39,1):M -200,0,100:Jump Loop"
Amal 8,BEE$
Amal 9,BEE2$
Amal On 8
Amal On 9
Return
LEVEL19:
LEV$="Level 19"
MES1$="Try this on for size....."
MES2$=""
Return
LEVEL19SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,150,167,32
Bob 3,50,155,39
Bob 4,100,167,35
Bob 5,250,167,35
Channel 8 To Bob 3
Channel 9 To Bob 4
Channel 10 To Bob 5
Amal 8,BEE2$
Amal 9,FLAB$
Amal 10,FLAB$
Amal On 8
Amal On 9
Amal On 10
Return
LEVEL20:
LEV$="Level 20"
MES1$="Not a hard level to end stage 2"
MES2$="with....(Well not VERY hard)"
Return
LEVEL20SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,150,167,32
Bob 3,50,167,28
Bob 4,100,167,28
Bob 5,200,167,28
Bob 6,250,167,28
Channel 8 To Bob 3
Channel 9 To Bob 4
Channel 10 To Bob 5
Channel 11 To Bob 6
For ER=8 To 11
Amal ER,SHARP$
Amal On ER
Next ER
Return
STAGE3:
WHICH=21
If JUSTGO=0 Then Gosub CHANNES
If JUSTSTART=1 Then Bank Swap 3,9
If JUSTSTART=1 Then LIVES=3
JUSTSTART=0
Screen Hide 0
Screen Open 0,320,256,32,LORES
Screen Hide 0 : Screen 0 : Hide : Curs Off : Cls 0
Screen Show 1
Screen 1
Cls 0
Locate 0,13 : Pen 3 : Centre "Stage 3"
Locate 0,20 : Pen 2 : Centre "Stage Code: Whirly Whirly Wind"
CODEY$="WHIRLY WHIRLY WIND"
Pen 2
WAFIRE
Screen 0
Load Iff "background3"
Get Sprite Palette
Set Rainbow 0,10,255,"","","(16,1,1)"
Rainbow 0,1,1,255
If JUSTGO=0 Then Goto WHY2
LEVEL21:
LEV$="Level 21"
MES1$="20 certainly doomed matches have been"
MES2$="heroicly saved by you, well done."
Return
LEVEL21SET:
Bob 1,1,159,1
Bob 2,150,167,32
Sprite 2,430,184,14
Bob 3,100,160,40
Channel 8 To Bob 3
WHIRLY$="A 0,(40,5)(41,5):Loop:Let A=Z(100)+1:M A,0,50:Let A=Z(50)-100:M A,0,50:Jump Loop"
Amal 8,WHIRLY$
Amal On 8
Return
LEVEL22:
LEV$="Level 22"
MES1$="Blimey that whirlwind was hard. I've"
MES2$="got a feeling we'll see more of that."
Return
LEVEL22SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,150,167,32
Bob 3,200,163,42
Bob 4,100,160,40
Bob 5,230,163,42
Channel 8 To Bob 4
Channel 9 To Bob 3
Channel 10 To Bob 5
HAMMER$="A 0,(42,10)(43,10)(44,20)(43,5)(42,40)"
Amal 9,HAMMER$
Amal 8,WHIRLY$
Amal 10,HAMMER$
Amal On 10
Amal On 9
Amal On 8
Return
LEVEL23:
LEV$="Level 23"
MES1$="Bridges are not made like they"
MES2$="used to be......"
Return
LEVEL23SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,150,167,32
Bob 4,150,160,40
Bob 5,200,160,51
Bob 6,230,160,51
Channel 8 To Bob 4
Channel 9 To Bob 5
Channel 10 To Bob 6
SPURT$="A 0,(51,10)(45,10)(46,10)(47,10)(48,10)"
Amal 9,SPURT$
Amal 10,SPURT$
Amal 8,WHIRLY$
Amal On 8
Amal On 9
Wait 30
Amal On 10
Return
LEVEL24:
LEV$="Level 24"
MES1$="If you thought the spurts of water"
MES2$="were bad, wait until you see this.."
Return
LEVEL24SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,150,167,32
Bob 3,150,160,40
Bob 4,200,180,49
Bob 5,250,180,49
Channel 8 To Bob 3
Channel 9 To Bob 4
Channel 10 To Bob 5
Amal 8,WHIRLY$
FISHY$="Loop:A 1,(49,1):M 0,-50,25:A 1,(50,1):M 0,50,20:Jump Loop"
Amal 9,FISHY$
Amal 10,FISHY$
Amal On 8
Amal On 9
Amal On 10
Return
LEVEL25:
LEV$="Level 25"
MES1$="No whirlwind in this level! (Few)"
MES2$="Just plenty of balls?!?!"
Return
LEVEL25SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,150,167,32
Bob 3,100,168,52
Bob 4,200,168,52
Bob 5,250,160,31
Channel 8 To Bob 3
Channel 9 To Bob 4
Channel 10 To Bob 5
BALLS$="Loop:M 0,-35,10:M 0,-15,8:M 0,15,8:M 0,35,10:A 1,(53,5)(52,1):M 0,0,0:Jump Loop"
Amal 8,BALLS$
Amal 9,BALLS$
Amal 10,SPURT$
Amal On 10
Amal On 8
Return
LEVEL26:
LEV$="Level 26"
MES1$="Rubber ball, keep on bouncin' back"
MES2$="to you. bouncy bouncy (A song)"
Return
LEVEL26SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,150,167,32
Bob 3,350,168,52
Bob 4,150,160,40
Channel 8 To Bob 3
Channel 9 To Bob 4
BALL$="Loop:M -400,0,100:M 400,0,100:Jump Loop"
Amal 8,BALL$
Amal On 8
Amal 9,WHIRLY$
Amal On 9
Return
LEVEL27:
LEV$="Level 27"
MES1$="I know you have been finding these"
MES2$="last few levels hard...and so....."
Return
LEVEL27SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,150,167,32
Bob 3,100,160,40
Bob 4,200,160,40
Bob 5,200,160,40
Channel 8 To Bob 3
Channel 9 To Bob 4
Channel 10 To Bob 5
Amal 8,WHIRLY$
Amal 9,WHIRLY$
Amal 10,WHIRLY$
Amal On 8
Amal On 9
Amal On 10
Return
LEVEL28:
LEV$="Level 28"
MES1$="When the wind blows......"
MES2$="(and the balls bounce and the fish..."
Return
LEVEL28SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,150,167,32
Bob 3,150,160,48
Bob 4,100,168,52
Bob 5,200,168,52
Bob 6,250,180,49
Channel 8 To Bob 3
Channel 9 To Bob 4
Channel 10 To Bob 5
Channel 11 To Bob 6
Amal 8,WHIRLY$
Amal On 8
Amal 9,BALLS$
Amal On 9
Amal 10,BALLS$
Amal On 10
Amal 11,FISHY$
Amal On 11
Return
LEVEL29:
LEV$="Level 29"
MES1$="Wow!! If you have got here without"
MES2$="the cheat then you must be good."
Return
LEVEL29SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,150,167,32
Bob 3,100,163,42
Bob 4,130,163,42
Bob 5,170,163,42
Bob 6,200,163,42
Channel 8 To Bob 3
Channel 9 To Bob 4
Channel 10 To Bob 5
Channel 11 To Bob 6
For ER=8 To 11
Amal ER,HAMMER$
Amal On ER
Next
Return
LEVEL30:
LEV$="Level 30"
MES1$="As usual the last level is nice"
MES2$="and easy................"
Return
LEVEL30SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,150,167,32
Bob 3,350,168,52
Bob 4,400,168,52
Channel 8 To Bob 3
Channel 9 To Bob 4
Amal 8,BALL$
Amal 9,BALL$
Amal On 8
Amal On 9
Return
STAGE4:
Music Off
WHICH=31
If JUSTSTART=1 Then LIVES=3
JUSTSTART=0
Screen Hide 0
Screen Open 0,320,256,32,LORES
Screen Hide 0 : Curs Off : Hide : Cls 0
Screen Show 1
Screen 1
Cls 0
Pen 3 : Locate 0,13 : Centre "Stage 4"
Pen 2
Locate 0,20 : Centre "Stage Code: Under Water Frantics"
CODEY$="UNDER WATER FRANTICS"
WAFIRE
Screen 0
Load Iff "Background4"
Load "musicwater.abk",9
Bank Swap 3,9
Get Sprite Palette
Screen 1
Cls 0
If JUSTGO=0 Then Goto WHY3
SETUP3:
If JUSTGO=0 Then Gosub CHANNES
Music 1
Ink 2,9
Text 10,10,"Score: "+Str$(SCORE)
Ink 2,9
Text 200,10,"Lives: "+Str$(LIVES)
If WHICH=34 Then SUB
If WHICH=38 Then SUB
TEST3:
COMPLETE=0
Do
PAUS$=Inkey$
If WHICH=35 and Chanan(9)=False Then Bob Off 4
If WHICH=35 and Chanan(10)=False Then Bob Off 5
If X Bob(1)<0 Then Bob 1,1,159,58
If Y Bob(1)>159 Then Bob 1,1,159,58
If Bobsprite Col(1,2 To 2)=True Then Gosub COMPLETE : COMPLETE=1 : If JUSTGO=0 Then Goto WHY3
If Bob Col(1,2 To 9)=True Then Gosub LOSELIFE : If JUSTGO=0 Then Goto WHY3
If Bobsprite Col(1,3 To 15)=True Then Gosub LOSELIFE : Bob 1,1,159,58 : If JUSTGO=0 Then Goto WHY3
If PAUS$="p" Then Gosub PAUSE
If PAUS$="P" Then Gosub PAUSE
If Fire(1) Then GOUP
If Jright(1) Then GORIT3 : If JUSTGO=0 Then Goto TEST3
If Jleft(1) Then GOLEF3 : If JUSTGO=0 Then Goto TEST3
If P=2 Then Bob 1,X Bob(1),Y Bob(1),58 : Amal Off 2
If P=1 Then Bob 1,X Bob(1),Y Bob(1),61 : Amal Off 3
Wait 1
Procedure SUB
Amal On 7
For SE=1 To 270
If X Bob(2)=200 Then Bob 3,X Bob(2),Y Bob(2),73 : Amal On 8
If X Bob(2)=100 Then Bob 4,X Bob(2),Y Bob(2),73 : Amal On 9
Wait 1
Next SE
If WHICH=38 Then Amal On 10
End Proc
Loop
WHY3:
If COMPLETE=1 Then WHICH=WHICH+1
If CHEAT=1 Then WHICH=40
CHEAT=0
If WHICH=31 Then Gosub LEVEL31
If WHICH=32 Then Gosub LEVEL32
If WHICH=33 Then Gosub LEVEL33
If WHICH=34 Then Gosub LEVEL34
If WHICH=35 Then Gosub LEVEL35
If WHICH=36 Then Gosub LEVEL36
If WHICH=37 Then Gosub LEVEL37
If WHICH=38 Then Gosub LEVEL38
If WHICH=39 Then Gosub LEVEL39
If WHICH=40 Then Gosub LEVEL40
LEVELSETUP3:
Bob Off
Sprite Off
Screen Hide 0
Screen Show 1
Screen 1
Cls 0
Locate 0,5 : Centre LEV$
Locate 0,13 : Centre MES1$
Locate 0,14 : Centre MES2$
Wait 10
WAFIRE
Wait 10
Screen Hide 1
Screen Show 0
Screen 0
If WHICH=31 Then Gosub LEVEL31SET
If WHICH=32 Then Gosub LEVEL32SET
If WHICH=33 Then Gosub LEVEL33SET
If WHICH=34 Then Gosub LEVEL34SET
If WHICH=35 Then Gosub LEVEL35SET
If WHICH=36 Then Gosub LEVEL36SET
If WHICH=37 Then Gosub LEVEL37SET
If WHICH=38 Then Gosub LEVEL38SET
If WHICH=39 Then Gosub LEVEL39SET
If WHICH=40 Then Gosub LEVEL40SET
If JUSTGO=0 Then Goto SETUP3
LEVEL31:
LEV$="Level 31"
MES1$="Get ready for a big change!!!"
MES2$=""
Return
LEVEL31SET:
Bob 1,1,159,58
Sprite 2,430,184,14
Bob 2,100,163,66
Bob 3,200,163,66
Channel 7 To Bob 2
Channel 8 To Bob 3
CHEST$="A 0,(66,10)(67,10)(66,10)(67,10)(68,10)(67,10)(68,10)(67,10)"
Amal 7,CHEST$
Amal 8,CHEST$
Amal On 8
Amal On 7
Return
Procedure GORIT3
Amal Off 3
Move X 1,"(1,2,2)"
If Chanan(2)=True Then Goto SKIP
Amal 2,"A 1,(59,5)(60,5)"
Amal On 2
SKIP:
Move On 1
Wait 1
P=2
End Proc
Procedure GOLEF3
Amal Off 2
Move X 1,"(1,-2,2)"
If Chanan(3)=True Then Goto SKOP
Amal 3,"A 1,(62,5)(63,5)"
Amal On 3
SKOP:
Move On 1
Wait 1
P=1
End Proc
LEVEL32:
LEV$="Level 32"
MES1$="Is'nt this game just ELECTRIFYING"
MES2$="You'll see what I mean....."
Return
LEVEL32SET:
Bob 1,1,159,58
Sprite 2,430,184,14
Bob 2,150,163,66
Bob 3,350,160,69
Channel 7 To Bob 2
Channel 8 To Bob 3
Amal 7,CHEST$
Amal On 7
EEL$="Loop:A 0,(69,5)(70,5)(69,5)(70,5)(69,6)(70,5)(72,5)(71,5):M -400,0,200:A 0,($8000+69,5)($8000+70,5):M 400,0,200:Jump Loop"
Amal 8,EEL$
Amal On 8
Return
LEVEL33:
LEV$="Level 33"
MES1$="Oh I do like to be beside the"
MES2$="sea.......but not deep under it!!!"
Return
LEVEL33SET:
Bob 1,1,159,58
Sprite 2,430,184,14
Bob 2,100,160,65
Bob 3,200,160,65
Bob 4,300,160,65
Channel 7 To Bob 2
Channel 8 To Bob 3
Channel 9 To Bob 4
MERM$="Loop:A 0,(64,5)(65,5):M -25,-10,20:M -25,10,20:A 0,($8000+64,5)($8000+65,5):M 25,-10,20:M 25,10,20:Jump Loop"
Amal 7,MERM$
Amal 8,MERM$
Amal 9,MERM$
Amal On 8
Amal On 7
Amal On 9
Return
LEVEL34:
LEV$="Level 34"
MES1$="Pollution......we must stop people"
MES2$="dumping rubish in our seas!!!!!"
Return
LEVEL34SET:
Bob 1,1,159,58
Sprite 2,430,184,14
Bob 2,350,110,74
Bob 3,400,400,73
Bob 4,400,400,73
Bob 5,150,163,66
Channel 7 To Bob 2
Channel 8 To Bob 3
Channel 9 To Bob 4
Channel 10 To Bob 5
OIL$="M 0,55,55"
Amal 8,OIL$
Amal 9,OIL$
Amal 10,CHEST$
SUB$="M -400,0,400"
Amal 7,SUB$
Amal On 7
Amal On 10
Return
LEVEL35:
LEV$="Level 35"
MES1$="I never knew things could explode"
MES2$="under water....."
Return
LEVEL35SET:
Bob 1,1,159,1
Sprite 2,430,184,14
Bob 2,100,160,65
Bob 3,200,160,65
Bob 4,25,165,75
Bob 5,260,165,75
Channel 7 To Bob 2
Channel 8 To Bob 3
Channel 9 To Bob 4
Channel 10 To Bob 5
Amal 7,MERM$
Amal On 7
Amal 8,MERM$
Amal On 8
BLOWUP$="A 1,(75,100)(76,10)(77,10)(78,10)"
BLOWUP2$="A 1,(75,400)(76,10)(77,10)(78,10)"
Amal 9,BLOWUP$
Amal On 9
Amal 10,BLOWUP2$
Amal On 10
Return
LEVEL36:
LEV$="Level 36"
MES1$="We all live in a yellow submerine,"
MES2$="2 yellow submerines 3 yellow submerines"
Return
LEVEL36SET:
Bob 1,1,159,58
Sprite 2,430,184,14
Bob 3,370,157,74
Bob 4,300,157,74
Bob 5,230,157,74
Channel 7 To Bob 3
Channel 8 To Bob 4
Channel 9 To Bob 5
SUB2$="Loop:A 1,(74,1);M -400,0,300;A 1,($8000+74,1);M 400,0,200;Jump Loop"
Amal 7,SUB2$
Amal On 7
Amal 8,SUB2$
Amal On 8
Amal 9,SUB2$
Amal On 9
Return
LEVEL37:
LEV$="Level 37"
MES1$="Tell me, how long can you hold"
MES2$="your breath for?"
Return
LEVEL37SET:
Bob 1,1,159,58
Sprite 2,430,184,14
Bob 2,150,160,65
Bob 3,350,157,74
Bob 4,50,165,75
Channel 7 To Bob 2
Channel 8 To Bob 3
Channel 9 To Bob 4
Amal 7,MERM$
Amal On 7
Amal 8,SUB2$
Amal On 8
Amal 9,BLOWUP$
Amal On 9
Return
LEVEL38:
LEV$="Level 38"
MES1$="I must admit, I am running out of"
MES2$="things to say on these on these screens!"
Return
LEVEL38SET:
Bob 1,1,159,58
Sprite 2,430,184,14
Bob 2,350,110,74
Bob 3,400,400,73
Bob 4,400,400,73
Bob 5,350,157,74
Channel 7 To Bob 2
Channel 8 To Bob 3
Channel 9 To Bob 4
Channel 10 To Bob 5
Amal 10,SUB2$
Amal 8,OIL$
Amal 9,OIL$
Amal 7,SUB$
Amal On 7
Return
LEVEL39:
LEV$="Level 39"
MES1$="You are getting ever nearer to"
MES2$="the lizard king Olag's domain...!!!!"
Return
LEVEL39SET:
Bob 1,1,159,58
Sprite 2,430,184,14
Bob 2,100,160,64
Bob 3,250,160,64
Bob 4,350,167,69
Channel 7 To Bob 2
Channel 8 To Bob 3
Channel 9 To Bob 4
Amal 7,MERM$
Amal 8,MERM$
Amal On 8
Amal On 7
Amal 9,EEL$
Amal On 9
Return
LEVEL40:
LEV$="LEVEL 40!!!"
MES1$="Things are not allways how they"
MES2$="seem!!??!!??"
Return
LEVEL40SET:
Bob 1,1,159,58
Sprite 2,430,184,14
Bob 2,350,159,4
Channel 7 To Bob 2
Amal 7,"A 0,(5,5)(6,5):M -400,0,200:A 10,(2,5)(3,5):M 200,0,100:A 1,(1,1)"
Amal On 7
Return
OLDBLOKE:
Sprite Off 2
Channel 7 To Bob 2
For WER=1 To 33
GOLEF3
Wait 1
Next
Music Off
Wait 100
Amal 7,"A 1,(1,10)(79,10)(1,10)(79,10)(80,10)(79,10)(80,10)(82,10)(80,10)(82,10)(81,10)(82,10)(81,10)"
Amal On 7
Wait 100
Screen Open 2,320,50,8,LORES
Screen Hide 2
Screen 2
Hide : Curs Off : Cls 0
Channel 8 To Screen Display 2
Amal 8,"M 0,75,5"
Amal On 8
Wait 100
Screen Show 2
Wait 50
Screen 2
'*******************************************************************
'THE ENDING HAD TO BE CUT OUT IM AFRAID STUART
'OTHERWISE THE GAME JUST WOULD NOT WORK
'********************************************************************
Paper 0
Pen 2 : Centre "Welcome man of matchsticks."
WAFIRE
Home
Wait 10
Cls 0 : Pen 4 : Centre "How did you know my name?"
WAFIRE
Wait 10
Home
Cls 0 : Pen 2
Centre "I am known as the wise old bloke."
Cdown : Centre "I see..................."
Cdown : Centre "you have traveled far in your quest"
Cdown : Centre "and that you have saved all 40 sticks."
WAFIRE
Home
Wait 10 : Cls 0 : Pen 4 : Centre "Yes you're right, but....."
WAFIRE
Home : Wait 10 : Pen 2 : Centre "You are near the end of your"
Cdown : Centre "quest."
WAFIRE
Cls 0 : Wait 10 : Home : Pen 4 : Centre "I am ?"
WAFIRE
Cls 0 : Wait 10 : Home : Pen 2 : Centre "Olag has fled, fearing your presence."
Cdown : Centre "God has witnessed the destruction"
Cdown : Centre "on this planet, and only you are"
Cdown : Centre "left to face his anger!!"
WAFIRE
Wait 10 : Cls 0 : Home : Pen 4 : Centre "So what do i do?"
WAFIRE
Wait 10 : Cls 0 : Home : Pen 2 : Centre "You must confront god, and if"
Cdown : Centre "you pass his test using honisty"
Cdown : Centre "you will be let free!"
WAFIRE
Wait 10 : Home : Cls 0 : Pen 4 : Centre "What sort of test?"
WAFIRE
Wait 10 : Home : Cls 0 : Pen 2 : Centre "I cannot tell, But take heed,"
Cdown : Centre "if you fail the wrath of god"
Cdown : Centre "will be upon you."
WAFIRE
Bob Off 2
Wait 10 : Cls 0 : Home : Pen 4 : Centre "He's gone!!!!!!"
Cdown : Centre "But where is God!!!!"
Cdown : Centre "Which way do I go?"
Cdown : Centre "Hang on I feel a bit funny....."
'*************************************************************************
'YOU WILL HAVE TO CHANGE THIS PART TO SUIT YOURSELF
'IT WAS A REALY GOOD SPRITE BUT IT WAS TOOO BIG
'*************************************************************************
WAFIRE
Screen Close 2
Wait 50
Boom
Bob Off 1
Wait 50
Screen 0
Fade 5 : Wait 100
HEREGOES:
Screen Open 0,320,256,32,LORES
Screen Hide 0 : Curs Off : Cls 0 : Hide
Screen Show 1
Screen 1
Cls 0
'*************************************************
'Some more to change
'*************************************************
Set Rainbow 0,0,255,"","","(1,1,1)"
Rainbow 0,1,1,305
Locate 0,5 : Pen 2 : Centre " You see a bright light. The urge"
Cdown : Centre "to get to it is too incredible."
Cdown : Centre "You float uncontrollably to it, until "
Cdown : Centre "every thing goes.....You are floating "
Cdown : Centre "in blackness, a void, nothingness.... "
Locate 0,13 : Centre "Suddenly a voice says......."
'*****************************************************
WAFIRE
Rainbow Del 0
Cls 0
_THEEND
HERE:
Screen Hide 0
Screen Open 0,320,256,32,LORES
Screen Hide 0
Screen O : Hide : Curs Off : Cls 0
Screen Show 1
Screen 1
Cls 0
Pen 3 : Locate 0,5
Centre "CONGRATULATIONS!!!"
Locate 0,10 : Pen 2 : Centre "You have saved all 40 matches"
Cdown : Centre "and passed gods test."
Cdown : Centre "Every matchstick has one"
Cdown : Centre "person to thank...YOU."
Cdown : Centre "You have completed matchstickman"
Cdown : Centre "and for your reward you will"
Cdown : Centre "recieve the next game by Stuart"
Cdown : Centre "Fisher totaly FREE."
Cdown : Centre "Read on to see how to claim.."
Wait 10
Screen 0
Load Iff "finalbackground2"
WAFIRE
Screen 1
If JUSTGO=0 Then Gosub BONUS
Screen Hide 1
Screen Show 0
Screen 0
Load "end.abk",3
Wind Open 1,0,0,14,30
Curs Off
Hide
Paper 0
Clw
Music 1
Paper 0
Locate 0,2 : Pen 2 : Print "Credits.."
Cdown
Print "All code.."
Print "Stuart Fisher"
Cdown
Print "All graphics"
Print "Stuart Fisher"
Cdown
Print "All music"
Print "Stuart Fisher"
Cdown
Print "Special"
Print "thanks to"
Cdown
Print "Dale Cayford"
Cdown
Print "without whom"
Print "this game"
Print "would have"
Print "never been"
Print "released."
Wait 10
WAFIRE
Clw
Home
Cdown
Cdown
Print "To apply for"
Print "your FREE"
Print "game, send"
Print "the follow-"
Print "-ing code"
Print "when you"
Print "send your �5"
Print "shareware"
Print "money. Also"
Print "include a"
Print "blank disk,"
Print "and of"
Print "course your"
Print "name and "
Print "address."
Wait 10
WAFIRE
Clw
Home
Cdown
Cdown
Print "The code"
Print "is....."
Print "Please "
Print "wait"
Randomize Timer
Wait 100
Print Rnd(12)
Wait 50
Print Rnd(22)
Wait 40
Print Rnd(100)
Wait 70
Print "32"
Print "So send"
Print "those numbers."
Print "The address"
Print "is at the"
Print "start of the"
Print "game."
WAFIRE
Clw
Home
Cdown
Cdown
Print "Remember"
Print "to send in"
Print "those scores"
Print "as well."
Print "The Highest"
Print "wins a prize"
Print "Your score:"
Print Str$(SCORE)
Print "I'll look"
Print "forward to"
Print "hearing from"
Print "you......."
Print "WELL DONE"
Print "Stuart.."
Wait 10
WAFIRE
For Q=63 To 0 Step -1
Volume Q : Wait 2
Next Q
Music Off
Volume 63
Fade 5
Do
Loop
STRT:
Screen Open 5,320,256,32,LORES
Curs Off : Cls 0 : Hide
Screen 5
Paper 0 : Pen 3
Wait 10
Locate 0,2 : Centre "Important!!"
Pen 2 : Locate 0,4 : Centre "This game is Shareware and so"
Cdown : Centre "to keep us writing games, you"
Cdown : Centre "must pay the shareware fee of �5."
Cdown : Centre "A LOT of work has gone into this"
Cdown : Centre "game so please send this small"
Cdown : Centre "payment to........"
Cdown : Centre "(Press Space)"
Wait Key
Cdown : Cdown : Centre "Stuart Fisher"
Cdown : Centre "6 West Ashton Road"
Cdown : Centre "Trowbridge"
Cdown : Centre "Wilts"
Cdown : Centre "BA14 7BG"
Cdown : Centre "In return you will get the chance"
Cdown : Centre "to win a prize!!!"
Cdown : Centre "Just complete this game"
Cdown : Centre "to win!!!"
Cdown : Centre "Also send in your highest scores."
Cdown : Centre "If I have proof the higest score"
Cdown : Centre "will also get a prize!!!"
Cdown : Centre "Press Space To begin"
Cdown : Cdown : Centre "Release date: Mid November 1992"
Wait Key
Fade 5 : Wait 100 : Cls 0
Load Iff "introscreen"
Led Off
Load "introtune.abk",9
WEREW:
Bank Swap 3,9
Music 1
Screen 5
Paper 0
Pen 2
Locate 0,22 : Centre "Press..."
Locate 0,24 : Pen 6 : Centre "FIRE to start game"
Locate 0,26 : Centre "UP for Scenerio"
Locate 0,28 : Centre "DOWN to enter Stage Code"
Locate 0,30 : Centre "(P to pause in game)"
Bob 1,10,170,1
Bob 2,10,220,1
Bob 3,300,170,4
Bob 4,300,220,4
For SEED=1 To 4
Channel SEED To Bob SEED
Next
Amal 1,"Loop: Let R1=V(0);If R1>0 then Jump Babel else Jump Loop; Babel: A 1,(2,5)(1,1);Jump Loop"
Amal On 1
Amal 2,"Loop: Let R1=V(1);If R1>0 then Jump Babel else Jump Loop; Babel: A 1,(2,5)(1,1);Jump Loop"
Amal On 2
Amal 3,"Loop: Let R1=V(2);If R1>0 then Jump Babel else Jump Loop; Babel: A 1,(5,5)(4,1);Jump Loop"
Amal On 3
Amal 4,"Loop: Let R1=V(3);If R1>0 then Jump Babel else Jump Loop; Babel: A 1,(5,5)(4,1);Jump Loop"
Amal On 4
Do
If Fire(1) Then Goto WHATLEVEL
If Jup(1) Then Gosub INSTUC
If Jdown(1) Then Gosub STAGECODE
Loop
WHATLEVEL:
Bob Off
Screen Hide 5
JUSTSTART=1
If CODEY$="GREEN BLOBS" Then Goto STAGE2
If CODEY$="WHIRLY WHIRLY WIND" Then Goto STAGE3
If CODEY$="UNDER WATER FRANTICS" Then Goto STAGE4
If CODEY$="DALE WANTS TO CHEAT" Then Goto STAGE4
If CODEY$="REFLECTIONS" Then Bell : Paper 1 : Pen 0 : Cls : Locate 0,3 : Centre "what a cheater" : LIVES=99
If JUSTGO=0 Then Goto STAGE1
STAGECODE:
Screen Hide 5
Screen Open 4,320,266,4,LORES
Hide : Curs Off : Cls 0
Locate 0,10 : Paper 0 : Pen 2 : Centre "Please Enter Stage Code"
Cdown : Centre "(Turn CAPS LOCK on before typing)"
Cdown : Centre "(Then OFF after typing)"
Locate 0,13
Put Key CODEY$
Input CODEY$
If CODEY$="DALE WANTS TO CHEAT" Then CHEAT=1 : Cls 0 : Centre "All right then, Level 40 coming up!" : Wait 100
If CODEY$="CHEAT" Then Cls 0 : Centre "Guessing eh!!" : Wait 100
Screen Close 4
Screen Show 5
Return
INSTUC:
Music Off
Screen Hide 5
Screen Open 4,320,256,4,LORES
Curs Off : Cls 0 : Hide
Locate 0,5 : Pen 2 : Paper 0 : Centre "Scenerio"
Cdown : Cdown : Centre "The year is 2005. The place....earth."
Cdown : Centre "Long ago man destroyed himself"
Cdown : Centre "and aliens all over the galaxy"
Cdown : Centre "came to live on the deserted planet."
Cdown : Centre "One such alien was the Matstiman race."
Cdown : Centre "This race very much resembled what"
Cdown : Centre "the extinct Humans would have called"
Cdown : Centre "matches. Matstiman were a very"
Cdown : Centre "peaceful race to the extent of "
Cdown : Centre "not even knowing what violence is!"
Cdown : Centre "Here they lived for many years"
Cdown : Centre "until Olag the lizard king came."
Cdown : Centre "Olag hated such peace and tranquility"
Cdown : Centre "and so with his great magic, he"
Cdown : Centre "tried to slaughter every one of"
Cdown : Centre "the Mastimen. But he failed."
Cdown : Centre "His magic had no effect on such"
Cdown : Centre "innocent beings. Olag was furious"
Cdown : Centre "and directed his magic upon the"
Cdown : Centre "other races that lived on earth."
Wait 10
WAFIRE
WAFIRE
Cls 0 : Locate 0,3
Cdown : Centre "He turned them all into mindless"
Cdown : Centre "mummies that served him."
Cdown : Centre "He commanded them to murder"
Cdown : Centre "every single Matstiman on earth."
Cdown : Centre "Being so peaceful, innocent and "
Cdown : Centre "knowing no violence, the Matstiman"
Cdown : Centre "could not defend themselves"
Cdown : Centre "and so were all horribly slaughtered!"
Cdown : Centre "The earth once again became dirty"
Cdown : Centre "and polluted as it had been when"
Cdown : Centre "the Humans lived on it. Olag had"
Cdown : Centre "won! Or had he?"
Cdown : Centre "In secret a new breed of Mastiman"
Cdown : Centre "had been living. This new breed"
Cdown : Centre "were not as helpless as the first"
Cdown : Centre "Mastiman, although they could not"
Cdown : Centre "fight, they could run and jump."
Cdown : Centre "They knew what to fear, and that"
Cdown : Centre "they had one thing on their minds"
Cdown : Centre "REVENGE. For this new breed were no"
Cdown : Centre "longer called Mastiman, they were"
Cdown : Centre "Know as THE MATCHSTICK MEN!!!"
Wait 10
WAFIRE
WAFIRE
Cls 0
Locate 0,3
Cdown : Centre "However Olag soon learned of the"
Cdown : Centre "Match stick men's exsistence, and"
Cdown : Centre "again ordered their destruction!"
Cdown : Centre "This time however the Match stick"
Cdown : Centre "men were harder to catch. They ran"
Cdown : Centre "and jumped, but because the whole"
Cdown : Centre "planet was under Olag's control,"
Cdown : Centre "they had nowhere to go. They knew"
Cdown : Centre "not how to fight, and so they were"
Cdown : Centre "once again caught............"
Cdown : Centre "Except one... YOU now must take"
Cdown : Centre "control of the last remaining"
Cdown : Centre "Match Stick man, to save all"
Cdown : Centre "40 Match stick men before they are"
Cdown : Centre "killed, and then to confront"
Cdown : Centre "and dispense of Olag. You can"
Cdown : Centre "not fight, but you can run"
Cdown : Centre "jump and dodge Olags mindless"
Cdown : Centre "beings. Before you go"
Cdown : Centre "remember YOU~RE THE ONLY CHANCE"
Cdown : Centre "WE~VE GOT."
WAFIRE
WAFIRE
Music 1
Screen Close 4
Screen Show 5
Return
LETSGO:
SCORE=0
Screen Hide 1
Screen Hide 0
Screen Show 5
If JUSTGO=0 Then Goto WEREW
CHANNES:
Channel 1 To Bob 1
Channel 2 To Bob 1
Channel 3 To Bob 1
Channel 4 To Bob 1
Channel 5 To Bob 1
Channel 6 To Bob 1
Return
BONUS:
TEMPER=LIVES
Screen Hide 0
Screen Show 1
Screen 1 : Cls 0
Set Rainbow 0,0,255,"(1,1,1)","","(1,1,1)"
Rainbow 0,1,1,305
Locate 0,3 : Pen 3 : Centre "Bonus...."
For V=63 To 0 Step -1
Volume V : Wait 2
Next V
Music Off
Volume 63
Pen 2
Locate 0,10 : Centre "Press Fire"
Locate 0,4 : Centre "Congratulations. Stage complete"
Locate 0,10
WAFIRE
Cline
Locate 0,7 : Centre "Lives Remaining: "+Str$(TEMPER)
Wait 100
For LOC=1 To TEMPER
Locate 0,9 : Centre "Bonus="+Str$(TEMPER)+"x100"
If LOC=1 Then Wait 100
SCORE=SCORE+100
Locate 0,13 : Centre "Score="+Str$(SCORE)
TEMPER=TEMPER-1
Bell 30
Wait 30
Music Off
Next
Cls 0
Locate 0,13 : Pen 3 : Centre "Score="+Str$(SCORE)
Locate 0,20 : Pen 2 : Centre "Press Fire"
WAFIRE
Rainbow Del 0
Return
PAUSE:
Amal Freeze
Move Freeze
Music Off
Do
If Inkey$="p" Then Goto AGAINON
If Inkey$="P" Then Goto AGAINON
Loop
AGAINON:
Amal On
Move On
Music 1
PAUS$=""
Return
ERRIN:
ERRR=ERRR+1
If ERRR<10 Then Resume
Resume Next
Procedure _RAINBOW
SPEED=2 : CSTEP=16 : RSTEP=2
Set Rainbow 0,1,4096,"","",""
Rainbow 0,0,40,265
For R=0 To 255
B=Rnd(4096) : For C=0 To 15 : Rain(0,R*15+C)=B+C : Next C
For C=0 To 15 : Rain(0,R*15+C)=R*RSTEP+C*CSTEP : Next C
Next R
End Proc
Procedure _COPYRIGHT
Fade 5 : Wait 100 : Cls 0
Screen Open 0,640,400,8,Hires : Curs Off : Flash Off : Cls 0 : Hide
Paper 0 : Pen 2
Locate 0,1 : Centre "MATCHSTICK-MAN COPYRIGHT"
Locate 0,3 : Centre "Matchstick man is copyright of New Age Computing,"
Locate 0,4 : Centre "and may not be given away,copied or changed in any way,"
Locate 0,5 : Centre "without permission of new age computing."
Locate 0,6 : Centre "You may however try this game for 2 weeks,if however,"
Locate 0,7 : Centre "you decide to keep it after this period you must."
Locate 0,8 : Centre "pay the shareware fee............"
Wait Key : Fade 5 : Wait 100
End Proc
Procedure _THEEND
Screen Open 0,320,256,32,LORES : Hide : Curs Off : Cls 0 : Flash Off
Paper 0 : Pen 5 : Locate 0,10 : Centre "Please Wait"
Erase 1 : Erase 2 : Erase 3 : Erase 4
Erase 5 : Erase 6 : Erase 7 : Erase 8
Erase 9 : Erase 10 : Erase 11 : Erase 12
Erase 13 : Erase 14 : Erase 15 : Erase 16
Load "god.abk",3 : Led Off : Music 1
Load "oea.abk",5
Load "ffb.abk",6
Load "cb9.abk",7
Load "aeo.abk",8
Load "bcb.abk",9
Load "fae.abk",10
Z=0
Unpack 5 To 0 : Wait Key : Fade 5 : Wait 100
Unpack 6 To 0
Locate 10,22 : Input "Answer ? ";A$
If A$="a" Then Boom
If A$="b" Then Bell : Inc Z
If A$="c" Then Boom
Fade 5 : Wait 100
Unpack 7 To 0
Locate 10,22 : Input "Answer ? ";A$
If A$="a" Then Boom
If A$="b" Then Boom
If A$="c" Then Bell : Inc Z
Fade 5 : Wait 100
Unpack 8 To 0
Locate 10,22 : Input "Answer ? ";A$
If A$="a" Then Bell : Inc Z
If A$="b" Then Boom
If A$="c" Then Boom
Fade 5 : Wait 100
Unpack 9 To 0
Locate 10,22 : Input "Answer ? ";A$
If A$="a" Then Boom
If A$="b" Then Bell : Inc Z
If A$="c" Then Boom
Fade 5 : Wait 100
If Z=4 Then Bell : _RAINBOW : Unpack 10 To 0 : Wait 310
If Z<>4 Then Shoot : _ASK
End Proc
Procedure _ASK
Screen Open 0,640,400,8,Hires : Curs Off : Cls 0 : Hide : Flash Off
Paper 0 : Pen 2
Locate 0,6 : Centre " H O W V E R Y U N F O R T U N A T E Y O U H A V E"
Locate 0,8 : Centre " F A I L E D I N Y O U R A T T E M P T T O S A V E"
Locate 0,10 : Centre " T H E M A T C H S T I C K M E N."
Locate 0,12 : Centre " Y O U W I L L N O W J O I N G O D ! ! !"
Wait 260 : Fade 5 : Wait 100
For A=63 To 0 Step -1
Mvolume A
Wait 1
Next
End
End Proc