home *** CD-ROM | disk | FTP | other *** search
/ AMOS PD CD / amospdcd.iso / 351-375 / apd370 / skull_mania2.amos / skull_mania2.amosSourceCode < prev    next >
AMOS Source Code  |  1991-06-13  |  4KB  |  167 lines

  1. ' SKULL VU'S II: The revenge 
  2. '
  3. ' by J. Valks
  4. '  
  5. Shared NODIG,TELLER
  6. Screen Open 0,320,200,16,Lowres
  7. Flash Off : Curs Off 
  8. Palette $0,$0,$FFF
  9. Proc LAAD_MUZIEK
  10. Proc INIT_SCREEN
  11. Proc INIT_BOBS
  12. Proc HOOFD_PROG
  13. '
  14. Procedure HOOFD_PROG
  15.    Do 
  16.       M1
  17.       M2
  18.       M3
  19.       M4
  20.       M5
  21.    Loop 
  22. End Proc
  23. Procedure INIT_SCREEN
  24.    Led Off : Hide On 
  25.    Screen Open 1,320,250,16,Lowres : Curs Off : Flash Off 
  26.    Get Sprite Palette : Double Buffer : 
  27. End Proc
  28. Procedure INIT_BOBS
  29.    A$=A$+"AUtotest(Let R1=Vu(R0); If R1=0 eXit else Direct Start)"
  30.    A$=A$+"Start: Anim 1,(1,3)(2,3)(3,3)(4,3)(5,3)(6,3); Wait;"
  31.    For N=0 To 3
  32.       Bob N,-100,40,6
  33.       Channel N To Bob N
  34.       Amal N,"Let R0="+Str$(N)+A$
  35.    Next N
  36.    Amal On 
  37.    Music 1
  38. End Proc
  39. Procedure M1
  40.    Y=100 : X=150 : R1=60 : R2=60 : W=0
  41.    If NODIG=True
  42.       Locate 0,8 : Centre "SKULL MANIA II: the revenge"
  43.       Locate 0,10 : Centre "By J.Valks"
  44.       Locate 0,14 : Centre "Na een tijdje veranderen de"
  45.       Locate 0,16 : Centre "bewegingen van de bobs!"
  46.       NODIG=False
  47.    End If 
  48.    Do 
  49.       For T=1 To 124
  50.          If Mouse Click=1
  51.             EINDE
  52.          End If 
  53.          Inc TELLER
  54.          If TELLER>200
  55.             TELLER=0
  56.             Pop Proc
  57.          End If 
  58.          Bob 0,R1*Cos(T/Pi#/Pi#/2)+X,R2*Sin(T/Pi#/Pi#)+Y,I Bob(0)
  59.          Bob 1,R1*Cos((T+10)/Pi#/Pi#/2)+X,R2*Sin((T+3)/Pi#/Pi#)+Y,I Bob(1)
  60.          Bob 2,R1*Cos((T+20)/Pi#/Pi#/2)+X,R2*Sin((T+6)/Pi#/Pi#)+Y,I Bob(2)
  61.          Bob 3,R1*Cos((T+30)/Pi#/Pi#/2)+X,R2*Sin((T+9)/Pi#/Pi#)+Y,I Bob(3)
  62.          Wait Vbl 
  63.       Next T
  64.       Wait Vbl 
  65.    Loop 
  66. End Proc
  67. Procedure M2
  68.    Y=100 : X=150 : R1=60 : R2=60 : W=0
  69.    Do 
  70.       For T=1 To 9999
  71.          If Mouse Click=1
  72.             EINDE
  73.          End If 
  74.          Inc TELLER
  75.          If TELLER>200
  76.             TELLER=0
  77.             Pop Proc
  78.          End If 
  79.          Bob 0,R1*Cos(T/Pi#/Pi#/1)+X,R2*Sin(T/Pi#/Pi#/2)+Y,I Bob(0)
  80.          Bob 1,R1*Cos((T+10)/Pi#/Pi#/2)+X,R2*Sin((T+3)/Pi#/Pi#/2)+Y,I Bob(1)
  81.          Bob 2,R1*Cos((T+20)/Pi#/Pi#/1)+X,R2*Sin((T+6)/Pi#/Pi#/2)+Y,I Bob(2)
  82.          Bob 3,R1*Cos((T+30)/Pi#/Pi#/2)+X,R2*Sin((T+9)/Pi#/Pi#/2)+Y,I Bob(3)
  83.          Wait Vbl 
  84.       Next T
  85.       Wait Vbl 
  86.    Loop 
  87. End Proc
  88. Procedure M3
  89.    Y=100 : X=150 : R1=60 : R2=60 : W=0
  90.    Do 
  91.       For T=1 To 124
  92.          If Mouse Click=1
  93.             EINDE
  94.          End If 
  95.          Inc TELLER
  96.          If TELLER>200
  97.             TELLER=0
  98.             Pop Proc
  99.          End If 
  100.          Bob 0,R1*Cos(T/Pi#/Pi#)+X,R2*Sin(T/Pi#/Pi#/2)+Y,I Bob(0)
  101.          Bob 1,R1*Cos((T+10)/Pi#/Pi#)+X,R2*Sin((T+3)/Pi#/Pi#/2)+Y,I Bob(1)
  102.          Bob 2,R1*Cos((T+20)/Pi#/Pi#)+X,R2*Sin((T+6)/Pi#/Pi#/2)+Y,I Bob(2)
  103.          Bob 3,R1*Cos((T+30)/Pi#/Pi#)+X,R2*Sin((T+9)/Pi#/Pi#/2)+Y,I Bob(3)
  104.          Wait Vbl 
  105.       Next T
  106.       Wait Vbl 
  107.    Loop 
  108. End Proc
  109. Procedure M4
  110.    Y=100 : X=150 : R1=60 : R2=60 : W=0
  111.    Do 
  112.       For T=1 To 999
  113.          If Mouse Click=1
  114.             EINDE
  115.          End If 
  116.          Inc TELLER
  117.          If TELLER>200
  118.             TELLER=0
  119.             Pop Proc
  120.          End If 
  121.          Bob 0,R1*Cos(T/Pi#/Pi#)+X,R2*Sin(T/Pi#/3)+Y,I Bob(0)
  122.          Bob 1,R1*Cos((T+10)/Pi#/Pi#)+X,R2*Sin((T+3)/Pi#/3)+Y,I Bob(1)
  123.          Bob 2,R1*Cos((T+20)/Pi#/Pi#)+X,R2*Sin((T+6)/Pi#/3)+Y,I Bob(2)
  124.          Bob 3,R1*Cos((T+30)/Pi#/Pi#)+X,R2*Sin((T+9)/Pi#/3)+Y,I Bob(3)
  125.          Wait Vbl 
  126.       Next T
  127.       Wait Vbl 
  128.    Loop 
  129. End Proc
  130. Procedure M5
  131.    Y=100 : X=150 : R1=60 : R2=60 : W=0
  132.    Do 
  133.       For T=1 To 186
  134.          If Mouse Click=1
  135.             EINDE
  136.          End If 
  137.          Inc TELLER
  138.          If TELLER>200
  139.             TELLER=0
  140.             Pop Proc
  141.          End If 
  142.          Bob 0,R1*Cos(T/Pi#/Pi#)+X,R2*Sin(T/Pi#/Pi#)+Y,I Bob(0)
  143.          Bob 1,R1*Cos((T+10)/Pi#/Pi#)+X,R2*Sin((T+10)/Pi#/Pi#)+Y,I Bob(1)
  144.          Bob 2,R1*Cos((T+20)/Pi#/Pi#)+X,R2*Sin((T+20)/Pi#/Pi#)+Y,I Bob(2)
  145.          Bob 3,R1*Cos((T+30)/Pi#/Pi#)+X,R2*Sin((T+30)/Pi#/Pi#)+Y,I Bob(3)
  146.          Wait Vbl 
  147.       Next T
  148.       Wait Vbl 
  149.    Loop 
  150. End Proc
  151. Procedure LAAD_MUZIEK
  152.    Break Off 
  153.    NODIG=True
  154.    Cls 
  155.    Dir$="AMOS_COMPACT2:"
  156.    Print "Loading music"
  157.    Load "music/mod.1"
  158.    Cls : Music 1
  159. End Proc
  160. Procedure EINDE
  161.    Bob Off 
  162.    Erase 3
  163.    Screen Close 1
  164.    Cls 
  165.    Dir$="AMOS_COMPACT2:"
  166.    Run "menu.amos"
  167. End Proc