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

  1. '
  2. ' Amos Club Menu III 
  3. '
  4. ' Coding done by J. Valks
  5. '
  6. ' Made in 15 minutes on 23-07-91 
  7. '
  8. Screen Open 0,320,200,16,Lowres
  9. Shared AANTAL,TELLER,KEUZE,Y,T$,L,KL
  10. Palette $0,$0,$FFF : Flash Off : Curs Off : Hide 
  11. HOOFDPROG
  12. '
  13. Procedure HOOFDPROG
  14.    Break Off 
  15.    Cls 
  16.    Rainbow Del 
  17.    Screen Open 1,320,200,2,Lowres
  18.    Palette $0,$0,$FFF
  19.    Curs Off : Flash Off : Colour 1,$FFF
  20.    TEKST1
  21.    Auto View Off 
  22.    Palette $0,0,
  23.    Screen Display 1,,197,,
  24.    SETUP_MENU
  25.    '--- 
  26.    Screen Open 2,320,150,8,Lowres
  27.    Flash Off : Curs Off 
  28.    Get Sprite Palette 
  29.    Palette $0,$0,
  30.    Double Buffer 
  31.    Y=30 : X=150 : R1=60 : R2=30 : W=0 : W1=2 : W2=1
  32.    TELLER=1
  33.    Auto View On 
  34.    Screen 2
  35.    Pen 3
  36.    Locate 0,4 : Centre "Gebruik linker/rechter muis toets"
  37.    Locate 0,6 : Centre "om te scrollen, en Return voor de keuze"
  38.    Pen 6
  39.    K$=K$+"(fff,5)(eee,5)(ddd,5)(ccc,5)(bbb,5)(aaa,5)(999,5)(888,5)"
  40.    K$=K$+"(777,5)(888,5)(999,5)(aaa,5)(bbb,5)(ccc,5)(ddd,5)(eee,5)"
  41.    Flash 6,K$
  42.    Locate 0,16 : Centre "Keuze:"
  43.    Do 
  44.       For T=1 To 124
  45.          A$=Inkey$ : S=Scancode
  46.          If S=68
  47.             MAAK_KEUZE
  48.          End If 
  49.          If S=69
  50.           End 
  51.          End If 
  52.          Bob 1,R1*Cos(T/Pi#/Pi#/W1)+X,R2*Sin(T/Pi#/Pi#/W2)+Y,5
  53.          Bob 2,R1*Cos((T+7)/Pi#/Pi#/W1)+X,R2*Sin((T+7)/Pi#/Pi#/W2)+Y,4
  54.          Bob 3,R1*Cos((T+14)/Pi#/Pi#/W1)+X,R2*Sin((T+14)/Pi#/Pi#/W2)+Y,1
  55.          Bob 4,R1*Cos((T+21)/Pi#/Pi#/W1)+X,R2*Sin((T+21)/Pi#/Pi#/W2)+Y,3
  56.          Bob 5,R1*Cos((T+28)/Pi#/Pi#/W1)+X,R2*Sin((T+28)/Pi#/Pi#/W2)+Y,2
  57.          Bob 6,R1*Cos((T+35)/Pi#/Pi#/W1)+X,R2*Sin((T+35)/Pi#/Pi#/W2)+Y,1
  58.          Wait Vbl 
  59.       Next T
  60.       Synchro 
  61.       Wait Vbl 
  62.    Loop 
  63. End Proc
  64. Procedure TEKST1
  65.    Cls 0 : Palette $0,$0,$FFF
  66.    Colour 1,$0
  67.    Locate 0,10 : Centre "Amos Menu II by J.Valks"
  68.    K1$=K1$+"(333,8)(555,8)(777,8)(999,8)(bbb,8)(ddd,8)(fff,8)"
  69.    Flash 1,K1$
  70.    Wait 50
  71.    Flash Off 
  72.    Wait 30
  73.    Fade 3
  74.    Wait 50
  75.    Cls 0
  76. End Proc
  77. Procedure SETUP_MENU
  78.    Screen 1
  79.    Set Rainbow 0,1,120,"","","(1,1,0)"
  80.    Set Rainbow 1,1,150,"(1,1,0)","",""
  81.    Rainbow 0,1,40,120
  82.    ZET_KLEUR
  83.    Rainbow 1,1,200,150
  84.    WRITE[12,"Savanne demo - R. Valentijn"]
  85.    WRITE[22,"Icon Grabber - J. Valks"]
  86.    WRITE[32,"Funny Scroll 1 - J. Valks"]
  87.    WRITE[42,"Spot-light - J. Valks"]
  88.    WRITE[52,"Funny scroll 2 - J. Valks"]
  89.    WRITE[62,"Mirror Scroll - J. Valks"]
  90.    WRITE[72,"Disk Tracer 2.0 - J. Valks"]
  91.    WRITE[82,"Skull Mania 2 - J. Valks"]
  92.    WRITE[92,"Slinger bobs - J. Valks"]
  93.    WRITE[102,"Posttarieven - J. Valks"]
  94.    WRITE[112,"Tekst grap - J. Valks"]
  95.    WRITE[122,"Tekst Scroll 5 - J. Valks"]
  96.    WRITE[132,"Ledenlijst - J. Valks"]
  97.    WRITE[142,"Nieuwtjes - J. Valks"]
  98.    AANTAL=6
  99.    Synchro Off 
  100.    Channel 1 To Screen Display 1
  101.    A$=A$+"Let R0=1; "
  102.    A$=A$+"Loop:"
  103.    A$=A$+"If K1=-1 Jump Up;"
  104.    A$=A$+"If K2=0  Jump Down;"
  105.    A$=A$+"Jump Loop;"
  106.    A$=A$+"Up:   If R0=14 Jump Loop; Move 0,-10,10; Let R0=R0+1; Jump Loop;"
  107.    A$=A$+"Down: If R0=1 Jump Loop; Move 0,10,10;  Let R0=R0-1; Jump Loop;"
  108.    Amal 1,A$ : Amal On 1
  109.    Synchro On 
  110. End Proc
  111. Procedure ZET_KLEUR
  112.    KL=1 : TEL=0
  113.    For A=0 To 59
  114.       Inc TEL
  115.       If TEL=4
  116.          TEL=0
  117.          Inc KL
  118.       End If 
  119.       Rain(0,A)=KL
  120.    Next A
  121.    TEL=0 : Dec KL
  122.    For A=59 To 119
  123.       Inc TEL
  124.       If TEL=4
  125.          TEL=0
  126.          Dec KL
  127.       End If 
  128.       Rain(0,A)=KL
  129.    Next A
  130.    '--------------------
  131.    KL=256
  132.    For T=1 To 8
  133.       Rain(1,T)=KL
  134.       Add KL,256
  135.       Add KL,256
  136.    Next T
  137.    KL=KL-256
  138.    KL=KL-256
  139.    For T=9 To 15
  140.       Rain(1,T)=KL
  141.       KL=KL-256
  142.       KL=KL-256
  143.    Next T
  144.    For TELLER=16 To 149
  145.       Rain(1,TELLER)=$0
  146.    Next TELLER
  147. End Proc
  148. Procedure MAAK_KEUZE
  149.    KEUZE=Amreg(1,0)
  150.    Bob Off 
  151.    Rainbow Del 
  152.    Wait 3
  153.    Flash Off 
  154.    Fade 3
  155.    Wait 100
  156.    Screen Close 2
  157.    Screen Close 1
  158.    Print "! LET OP !"
  159.    Print : Print "Er zijn programma's die niet helemaal"
  160.    Print "goed werken vanuit dit menu."
  161.    Print "De oplossing is het programma via Amos"
  162.    Print "in te laden en dan te runnen!"
  163.    Print "Een voorbeeld hiervan is 'SAVANNE DEMO'"
  164.    Print : Print "Druk op een toets..."
  165.    Wait Key 
  166.    Print : Print "Loading..."
  167.    Dir$="AMOS_COMPACT2:"
  168.    If KEUZE=1 Then Run "savanne.amos"
  169.    If KEUZE=2 Then Run "icon_grabber.amos"
  170.    If KEUZE=3 Then Run "funny_scroll.amos"
  171.    If KEUZE=4 Then Run "spot_light.amos"
  172.    If KEUZE=5 Then Run "funny_scroll2.amos"
  173.    If KEUZE=6 Then Run "mirror_scroll.amos"
  174.    If KEUZE=7 Then Run "disk_tracer2.amos"
  175.    If KEUZE=8 Then Run "skull_mania2.amos"
  176.    If KEUZE=9 Then Run "slinger.amos"
  177.    If KEUZE=10 Then Run "posttarieven.amos"
  178.    If KEUZE=11 Then Run "tekst_grap.amos"
  179.    If KEUZE=12 Then Run "scroll.amos"
  180.    If KEUZE=13 Then Run "ledenlijst.amos"
  181.    If KEUZE=14 Then Run "nieuwtjes.amos"
  182.    End 
  183. End Proc
  184. Procedure WRITE[Y,T$]
  185.    L=Text Length(T$)
  186.    Text 160-L/2,Y,T$
  187. End Proc