home *** CD-ROM | disk | FTP | other *** search
/ AMOS PD CD / amospdcd.iso / sourcecode / general / breaker.amos / breaker.amosSourceCode
Encoding:
AMOS Source Code  |  1991-06-11  |  6.1 KB  |  198 lines

  1. Rem Breaker demo 
  2. Rem by JAG of FANATIX
  3. Rem
  4. DEMO
  5. Procedure DEMO
  6. Screen Open 0,320,256,2,Lowres : Hide On : Curs Off : Cls 0
  7. Default : Cls 0 : Hide On 
  8. Close Workbench : Close Editor : Led Off : Break Off 
  9. Wait Vbl 
  10. Load "brspr.abk",1
  11. Load "brmus.abk",3
  12. Load "br5.abk",5
  13. Load "br6.abk",6
  14. Load "br7.abk",7
  15. Wait Vbl 
  16. Music 1 : No Mask 
  17. Dim CR(16),CG(16),CB(16),CP(16),BRX(20),BRY(20)
  18. CR(1)=$0 : CR(2)=$100 : CR(3)=$200 : CR(4)=$300 : CR(5)=$400 : CR(6)=$500 : CR(7)=$600 : CR(8)=$700
  19. CR(9)=$800 : CR(10)=$900 : CR(11)=$A00 : CR(12)=$B00 : CR(13)=$C00 : CR(14)=$D00 : CR(15)=$E00 : CR(16)=$F00
  20. CG(1)=$0 : CG(2)=$10 : CG(3)=$20 : CG(4)=$30 : CG(5)=$40 : CG(6)=$50 : CG(7)=$60 : CG(8)=$70
  21. CG(9)=$80 : CG(10)=$90 : CG(11)=$A0 : CG(12)=$B0 : CG(13)=$C0 : CG(14)=$D0 : CG(15)=$E0 : CG(16)=$F0
  22. CB(1)=$0 : CB(2)=$1 : CB(3)=$2 : CB(4)=$3 : CB(5)=$4 : CB(6)=$5 : CB(7)=$6 : CB(8)=$7
  23. CB(9)=$8 : CB(10)=$9 : CB(11)=$A : CB(12)=$B : CB(13)=$C : CB(14)=$D : CB(15)=$E : CB(16)=$F
  24. CP(1)=$0 : CP(2)=$101 : CP(3)=$202 : CP(4)=$303 : CP(5)=$404 : CP(6)=$505 : CP(7)=$606 : CP(8)=$707
  25. CP(9)=$808 : CP(10)=$909 : CP(11)=$A0A : CP(12)=$B0B : CP(13)=$C0C : CP(14)=$D0D : CP(15)=$E0E : CP(16)=$F0F
  26. SC=8 : CH=1 : SCAR=7 : BRICKS=20 : Z=1 : YBI=4 : XBI=4 : XB=160 : YB=100
  27.    T$="   OH NO!! ANOTHER FANATIX DEMO...    YEAH, AND THIS ONE IS REALLY BORING!!!"
  28. T$=T$+"    IT WAS ONLY KNOCKED UP TO FILL THE DISKS UP AND IS REALLY CRAP..."
  29. T$=T$+"      ONLY JOKING, THIS IS ONE OF THE BEST DEMOS!  HERE ARE THE INSTRUCTIONS FOR THIS DEMO PART:"
  30. T$=T$+"            RIGHT MOUSE BUTTON TO CHANGE BETWEEN A GAME OF BREAKOUT USING THE MOUSE, AND THIS SCROLL WITH VU BARS!"
  31. T$=T$+"  YOU CAN QUIT WITH THE LEFT BUTTON BUT ONLY ON THE SCROLL....      BY NOW, I SUPPOSE YOU HAVE PLAYED THE BREAKOUT..."
  32. T$=T$+"  WHAT DO YOU THINK???  I LOVE IT.      ANYWAY, CREDITS FOR THIS DEMO ARE CODING BY JAG, GFX BY JAG, AND MUSIC BY PARADOX."
  33. T$=T$+"        THIS IS MY SECOND SCROLLER OF THE DAY, SO EXPECT SPELLING MISTAKES ETC...   DID YOU LEAVE YOUR BRAIN AT HOME??????"
  34. T$=T$+"      NOW THIS DEMO IS FINISHED, I CAN COMPILE THE MEGADEMO FOUR...  AND IT IS IN TIME FOR THE SIXTEEN BIT SHOW IN LONDON!"
  35. T$=T$+"   IF YOU ARE THERE YOU MAY MEET ME OR THE CYBORNETICS, BUT NOT THE OTHER MEMBERS OF FANATIX AS THEY ARE SKINT.....         "
  36. T$=T$+"  BE BACK IN A MINUTE, JUST PHONING CHAOS ROUND TO TYPE SOME CRAP IN THIS MESSAGE....              FAILED ATTEMPT, HE HAS JUST POPPED OUT"
  37. T$=T$+" AS HIS MUM PUTS IT.  BUT OH NO!!  I CAN HEAR THE DOORBELL, IT IS HIM!!!  FALSE ALARM, IT IS SOMEBODY CALLED SIMON...   IT LOOKS LIKE NO"
  38. T$=T$+" WORDS FROM CHAOS...   THE GREETS ARE AS FOLLOWS....   CYBORNETICS, BENSON, SYNTEX, GAZ N MATT, ROBOTS, CUROS AND STAVROS, PANTHORUS, ARC LAME ANGEL, AND"
  39. T$=T$+" THE ULTIMATE LAMER GROUP FULL OF LOSERS CALLED ARBITEZ....    I AM GOING TO STOP TYPING NOW, AND PLAY SOME GAMES WITH SIMON  EG SPEEDBALL 2!!   BYE........                      "
  40. Def Scroll 1,0,0 To 394,40,-4,0
  41. Screen Open 0,320,150,8,Lowres : Flash Off : Curs Off : Hide On : Cls 0
  42. Double Buffer 
  43. Make Mask 1 : Make Mask 2 : Make Mask 3 : Make Mask 4 : Make Mask 5
  44. Unpack 5 To 1
  45. Screen Display 1,128,248,,
  46. Screen Open 2,400,40,2,Lowres : Flash Off : Curs Off : Cls 0 : Colour 1,$A0F
  47. Screen Display 2,128,208,,
  48. Unpack 6 To 3 : Palette ,,0,0,0,0,,
  49. Screen 0
  50. Colour 1,$FFF : Colour 2,$F00 : Colour 3,$F0 : Colour 4,$BBB : Colour 5,$777 : Colour 6,$333 : Colour 7,$F
  51. Reserve Zone(20)
  52. For G=1 To 4
  53. For F=1 To 5
  54. Paste Bob(F*60)-38,G*20,Rnd(2)+3
  55. Set Zone Z,(F*60)-37,(G*20)+1 To((F*60)-37)+27,(G*20)+11
  56. BRX(Z)=(F*60)-38 : BRY(Z)=(G*20)
  57. Inc Z
  58. Next F
  59. Next G
  60. Hot Spot 1,$11
  61. Hot Spot 2,$11
  62. Set Bob 1,1,,
  63. Bob 1,,,1
  64. Bob 2,,,2
  65. A$="Loop:  Let X=XS(0,XM); Let Y=140; Pause; Jump Loop"
  66. B$="Loop:  Let X=R0; Let Y=R1; Pause; Jump Loop"
  67. Channel 0 To Bob 1
  68. Channel 1 To Bob 2
  69. Amal 0,A$ : Amal 1,B$
  70. Amal On 
  71. Wait Vbl 
  72. Amal Freeze 
  73. MAINLOOP:
  74. Repeat 
  75. Until Mouse Key=0
  76. Amal Freeze 
  77. Screen To Front 3
  78. Wait Vbl 
  79. Do 
  80. Gosub MESSAGE
  81. Wait Vbl 
  82. Gosub MESSAGE
  83. Gosub VUS
  84. Inc T : If T>54 Then Gosub CCOL
  85. Wait Vbl 
  86. If Mouse Key=2 Then Goto BREAK
  87. If Mouse Key=1 Then Goto DIE
  88. Loop 
  89. VUS:
  90. Screen 3
  91. Add V0,-4 : If V0<1 Then V0=1
  92. Add V1,-4 : If V1<1 Then V1=1
  93. Add V2,-4 : If V2<1 Then V2=1
  94. Add V3,-4 : If V3<1 Then V3=1
  95. If Vumeter(0)>10 Then V0=16
  96. If Vumeter(1)>10 Then V1=16
  97. If Vumeter(2)>10 Then V2=16
  98. If Vumeter(3)>10 Then V3=16
  99. Colour 2,CR(V0)
  100. Colour 3,CG(V1)
  101. Colour 4,CB(V2)
  102. Colour 5,CP(V3)
  103. Return 
  104. MESSAGE:
  105. Screen 2
  106. Scroll 1
  107. Inc SCAR : If SCAR=SC Then SCAR=0 : Inc CH : Gosub PCHAR
  108. Return 
  109. PCHAR:
  110. If CH=Len(T$) Then CH=0 : Return 
  111. B=Asc(Mid$(T$,CH,1))
  112. Paste Bob 340,3,B
  113. Return 
  114. BREAK:
  115. Repeat 
  116. Until Mouse Key=0
  117. Screen To Front 0
  118. Amal On 
  119. Do 
  120. Screen 0
  121. Add XB,XBI : Add YB,YBI
  122. If XB<1 Then XBI=4
  123. If XB>320 Then XBI=-4
  124. If YB<1 Then YBI=4
  125. If YB>143 Then YBI=-4 : Inc H : Shoot 
  126. If H=3 Then Gosub DED
  127. Amreg(1,0)=XB : Amreg(1,1)=YB
  128. Z=Zone(0,XB+2,YB+2)
  129. If Z>0 Then Gosub CRACK
  130. If Bob Col(2)=-1 Then YBI=-4
  131. If Bob Col(1)=-1 Then YBI=-4
  132. If BRICKS=0 Then Gosub CONGRATS
  133. If Mouse Key=2 Then Goto MAINLOOP
  134. Inc T : If T>99 Then Gosub CCOL
  135. Wait Vbl 
  136. Loop 
  137. CRACK:
  138. Paste Bob BRX(Z),BRY(Z),6
  139. Set Zone Z,200,200 To 201,201
  140. Dec BRICKS
  141. If YBI=4 Then YBI=-4 : Return 
  142. If YBI=-4 Then YBI=4
  143. Return 
  144. DED:
  145. Screen 0
  146. Boom 
  147. Z=1
  148. H=0
  149. BRICKS=20
  150. For G=1 To 4
  151. For F=1 To 5
  152. Paste Bob(F*60)-38,G*20,Rnd(2)+3
  153. Set Zone Z,(F*60)-37,(G*20)+1 To((F*60)-37)+27,(G*20)+11
  154. BRX(Z)=(F*60)-38 : BRY(Z)=(G*20)
  155. Inc Z
  156. Next F
  157. Next G
  158. Return 
  159. CCOL:
  160. T=0
  161. Screen 1
  162. Inc TYPE
  163. If TYPE=6 Then TYPE=0
  164. If TYPE=0 Then Fade 3,$0,$F0F,$D0D,$B0B,$808,$606,$404,$202
  165. If TYPE=1 Then Fade 3,$0,$F00,$D00,$B00,$800,$600,$400,$200
  166. If TYPE=2 Then Fade 4,$0,$FF0,$DD0,$BB0,$880,$660,$440,$220
  167. If TYPE=3 Then Fade 5,$0,$F0,$D0,$B0,$80,$60,$40,$20
  168. If TYPE=4 Then Fade 3,$0,$FF,$DD,$BB,$88,$66,$44,$22
  169. If TYPE=5 Then Fade 3,$0,$F,$D,$B,$8,$6,$4,$2
  170. Return 
  171. CONGRATS:
  172. Unpack 7 To 3
  173. Bell 
  174. Screen To Front 3
  175. Repeat 
  176. Inc T : If T>99 Then Gosub CCOL
  177. Wait Vbl 
  178. Until Mouse Key=1
  179. Unpack 6 To 3
  180. Screen To Back 3
  181. Wait Vbl 
  182. Screen 0
  183. Goto DED
  184. DIE:
  185. Screen Close 0
  186. Screen 1
  187. Fade 3 : Wait 45
  188. Screen Close 1
  189. Screen 2 : Fade 3 : Wait 45
  190. Screen Close 2
  191. Screen 3 : Fade 5
  192. For F=63 To 0 Step -1
  193. Mvolume F : For T=0 To 1000 : Next T : Next F
  194. Screen Close 3
  195. Music Off 
  196. Mvolume 63
  197. Run "Change.AMOS"
  198. End Proc