Erase 1
Screen Open 0,320,256,32,Lowres : Flash Off 
Curs Off : Cls 0 : Hide 
NRSPRITA=8
KOL=0
STER1=2
STER2=1
ST1=3
ST2=2
Load "Grafika:Tymczasowe/programy/ster.abk"
'Open In 1,"Grafika:Anim/Pong.anim"
'IL_KL=Frame Load(1 To 10,999) 
'Close 1 
'KLATKA=Frame Play(10,1,0) 
'Double Buffer 
'For NR=2 To IL_KL 
'   KLATKA=Frame Play(KLATKA,1)
'   Screen Swap  
'   Wait Frame Param+1 
'Next  
'Wait 150
'Cls 0 
MENU:
Cls 0
Load Iff "Grafika:Tymczasowe/programy/Pong.opcje",0
Limit Mouse 0,0 To 640,512
X Mouse=200
Y Mouse=200
Reserve Zone 
Reserve Zone 5
Set Zone 1,120,105 To 205,135
Set Zone 2,120,150 To 200,180
Set Zone 3,110,187 To 215,213
Set Zone 4,107,220 To 220,250
Show On 
PETLA:
Do 
   If Mouse Zone=1 and Mouse Key=1 Then Goto _START
   If Mouse Zone=2 and Mouse Key=1 Then Goto OPCJE
   If Mouse Zone=3 and Mouse Key=1 Then Bell 
   If Mouse Zone=4 and Mouse Key=1 Then Edit 
Loop 


_START:
Y Mouse=52
YMYSZ=52
Limit Mouse 0,52 To 0,218
A$=""
B$=""
C$=""
A$=A$+"F: Let R0=RA; Let R1=RB"
A$=A$+"Start: Let X=X+R0;Let Y=Y+R1"
A$=A$+"Let RE=X;"
A$=A$+"Let RF=Y;"
A$=A$+"Let R2=RC;"
A$=A$+"Let R3=RD;"
A$=A$+"If X>450 Jump T;"
A$=A$+"If R2=1 Jump A;"
A$=A$+"If R3=1 Jump A;"
A$=A$+"If Y>235 Jump B;"
A$=A$+"If X<120 Jump E;"
A$=A$+"If Y<50  Jump B;"
A$=A$+"Pause Jump Start"

A$=A$+"A: If R0>0 Jump C; Let R0=RA; Let X=135; Pause Jump Start"
A$=A$+"C: Let R0=RB; Let X=425; Pause Jump Start"
A$=A$+"B: If R1>0 Jump D; Let R1=RA; Let Y=50; Pause Jump Start"
A$=A$+"D: Let R1=RB; Let Y=235; Pause Jump Start"
A$=A$+"T: Let RK=1; Let R0=RA; Let R1=RB; Let RM=RM+1; Let X=278; Let Y=145; Pause Jump F"
A$=A$+"E: Let RK=1; Let R0=RA; Let R1=RB; Let RN=RN+1; Let X=278; Let Y=145; Pause Jump F"

If STER1=2
   B$=B$+"S:"
   B$=B$+"Let Y=YM"
   B$=B$+"Pause Jump S"
End If 
If STER1=1
   B$=B$+"P:"
   B$=B$+"Let R0=RH;"
   B$=B$+"If Y>R0 Jump A"
   B$=B$+"If Y<R0 Jump B"
   B$=B$+"Pause; Jump P"
   
   B$=B$+"A:"
   B$=B$+"If R0<52 Jump C"
   B$=B$+"Let R1=Y-RH;"
   B$=B$+"For R2=0 To R1/8;"
   B$=B$+"Let Y=Y-8;"
   B$=B$+"If R0<52 & Y>52 Jump P"
   B$=B$+"Next R2;"
   B$=B$+"Pause; Jump P"
   
   B$=B$+"B:"
   B$=B$+"If R0>220 Jump D"
   B$=B$+"Let R1=RH-Y;"
   B$=B$+"For R3=0 To R1/8;"
   B$=B$+"Let Y=Y+8;"
   B$=B$+"If R0>220 & Y<220 Jump P"
   B$=B$+"Next R3;"
   B$=B$+"Pause; Jump P"
   
   B$=B$+"C:"
   B$=B$+"Let R1=Y-52"
   B$=B$+"For R4=0 To R1/8;"
   B$=B$+"If Y=52 Jump P"
   B$=B$+"Let Y=Y-8;"
   B$=B$+"Next R4;"
   B$=B$+"Pause; Jump P"
   
   B$=B$+"D:"
   B$=B$+"Let R1=220-Y"
   B$=B$+"For R5=0 To R1/8;"
   B$=B$+"If Y=220 Jump P"
   B$=B$+"Let Y=Y+8;"
   B$=B$+"Next R5;"
   B$=B$+"Pause; Jump P"
End If 
If STER1=3
   B$=B$+"P:"
   B$=B$+"If J0=1 Jump Gora"
   B$=B$+"If J0=2 Jump Dol"
   B$=B$+"Jump P"
   B$=B$+"Gora:"
   B$=B$+"If Y<55 Jump P"
   B$=B$+"Let Y=Y-10; Pause Jump P"
   B$=B$+"Dol:"
   B$=B$+"If Y>214 Jump P"
   B$=B$+"Let Y=Y+10; Pause Jump P"
End If 

If STER2=1
   C$=C$+"P:"
   C$=C$+"Let R0=RG;"
   C$=C$+"If Y>R0 Jump A"
   C$=C$+"If Y<R0 Jump B"
   C$=C$+"Pause; Jump P"
   
   C$=C$+"A:"
   C$=C$+"If R0<52 Jump C"
   C$=C$+"Let R1=Y-RG;"
   C$=C$+"For R2=0 To R1/8;"
   C$=C$+"Let Y=Y-8;"
   C$=C$+"If R0<52 & Y>52 Jump P"
   C$=C$+"Next R2;"
   C$=C$+"Pause; Jump P"
   
   C$=C$+"B:"
   C$=C$+"If R0>220 Jump D"
   C$=C$+"Let R1=RG-Y;"
   C$=C$+"For R3=0 To R1/8;"
   C$=C$+"Let Y=Y+8;"
   C$=C$+"If R0>220 & Y<220 Jump P"
   C$=C$+"Next R3;"
   C$=C$+"Pause; Jump P"
   
   C$=C$+"C:"
   C$=C$+"Let R1=Y-52"
   C$=C$+"For R4=0 To R1/8;"
   C$=C$+"If Y=52 Jump P"
   C$=C$+"Let Y=Y-8;"
   C$=C$+"Next R4;"
   C$=C$+"Pause; Jump P"
   
   C$=C$+"D:"
   C$=C$+"Let R1=220-Y"
   C$=C$+"For R5=0 To R1/8;"
   C$=C$+"If Y=220 Jump P"
   C$=C$+"Let Y=Y+8;"
   C$=C$+"Next R5;"
   C$=C$+"Pause; Jump P"
End If 
If STER2=2
   C$=C$+"P:"
   C$=C$+"Let R3=YM-52"
   C$=C$+"Let Y=52-R3+166"
   C$=C$+"Pause Jump P"
End If 
If STER2=3
   C$=C$+"P:"
   C$=C$+"If J1=1 Jump Gora"
   C$=C$+"If J1=2 Jump Dol"
   C$=C$+"If J1=17 Jump Up"
   C$=C$+"If J1=18 Jump Wol"
   C$=C$+"Jump P"
   C$=C$+"Gora:"
   C$=C$+"If Y<55 Jump P"
   C$=C$+"Let Y=Y-10; Pause Jump P"
   C$=C$+"Dol:"
   C$=C$+"If Y>214 Jump P"
   C$=C$+"Let Y=Y+10; Pause Jump P"
   C$=C$+"Up:"
   C$=C$+"Let Y=52; Pause Jump P"
   C$=C$+"Wol:"
   C$=C$+"Let Y=220; Pause Jump P"
End If 
If STER2=2 and(STER1=1 or STER1=3)
   C$=""
   C$=C$+"P:"
   C$=C$+"Let Y=YM"
   C$=C$+"Pause Jump P"
End If 
Screen Open 0,320,256,32,Lowres : Flash Off 

If KOL=0
   Palette $0,$0,$F00,$FF0,$339,,,,,,,,,,,,,$0,$F00,$FF0,$F0,,,$0,$A52,$ECA,$0,$EEE
End If 
If KOL=1
   Palette $0,$0,$FFF,$FFF,$0,,,,,,,,,,,,,$FFF,$0,$FFF,$FFF,,,$0,$A52,$ECA,$0,$EEE
End If 
Curs Off : Cls 0 : Hide 

Ink 1 : Circle 10,10,7 : Ink 2 : Paint 10,10 : Get Sprite 1,3,3 To 18,18
Cls 0

Ink 3 : Box 10,10 To 15,40 : Paint 11,11
Get Sprite 2,10,10 To 15,40
Ink 4 : Paint 11,11
Get Sprite 3,10,10 To 15,40

Ink 3 : Box 0,8 To 319,207
Ink 4 : Paint 100,100
Make Mask 

SPEED=3 : Amreg(0)=SPEED : Amreg(1)=-SPEED

Sprite 8,Rnd(260)+160,Rnd(140)+70,1 : Amal 8,A$
Sprite 9,130,100,2 : Amal 9,B$
Sprite 10,441,100,3 : Amal 10,C$

Timer=0
Amal On 
Sprite Update On 
Amreg(12)=0
Amreg(13)=0
Paste Icon 260,210,8
Procedure SP
   Ink 0
   Bar 254,210 To 305,255
End Proc
Do 
   If Mouse Key=3 Then Amal Freeze : Sprite Off : Cls 0 : Show On : Goto MENU
   If Q=0 and Timer>1
      X1=Amreg(4)
      Y1=Amreg(5)
      Q=1
   End If 
   
   Print At(7,28);"Gracz1:";Amreg(12)
   Print At(20,28);"Gracz2:";Amreg(13)
   Synchro 
   
   If Sprite Col(8,10,10)=-1 Then Amreg(2)=1
   If Sprite Col(8,9,9)=-1 Then Amreg(3)=1
   If Sprite Col(8,10,10)=0 Then Amreg(2)=0
   If Sprite Col(8,9,9)=0 Then Amreg(3)=0
   
   If Amreg(10)=1
      Amreg(0)=3 : Amreg(1)=-3
      SPEED=3
      TIM=0
      Print At(7,28);"Gracz1:";Amreg(12)
      Print At(20,28);"Gracz2:";Amreg(13)
      Amreg(10)=0
      Wait 1
      Amal Freeze 
      Wait 20
      Amal On 
      SP
      Paste Icon 260,210,8
   End If 
   If Timer>2
      TIM=TIM+1
      If TIM=100
         TIM=0
         SPEED=SPEED+1
         Amreg(0)=SPEED : Amreg(1)=-SPEED
         Timer=0
         If SPEED=3 or SPEED=4
            SP
            Paste Icon 260,210,8
         End If 
         If SPEED=5 or SPEED=6
            SP
            Paste Icon 257,209,9
         End If 
         If SPEED=7
            SP
            Paste Icon 258,209,10
         End If 
         If SPEED=8
            SP
            Paste Icon 259,209,11
         End If 
         If SPEED=9
            SP
            Paste Icon 258,209,12
         End If 
      End If 
      
      X2=Amreg(4)
      Y2=Amreg(5)
      Timer=0
      Q=0
      
      ZX=X2-X1
      ZY=Y2-Y1
      If Sgn(ZX)=1 and Sgn(ZY)=1
         If X2>Y2
            ROZNICA=X2-Y2
            XCEL=425
            YCEL=425-ROZNICA
            If YCEL>220
               XCEL=ROZNICA+220
            End If 
         Else 
            ROZNICA=Y2-X2
            YCEL=220
            XCEL=220-ROZNICA
         End If 
         Amreg(6)=YCEL
      End If 
      If Sgn(ZX)=1 and Sgn(ZY)=-1
         XCEL=X1+Y2
         YCEL=Y1-Y2
         If XCEL>425
            YCEL=XCEL-425+1
            XCEL=425
         End If 
         Amreg(6)=YCEL
      End If 
      
      If Sgn(ZX)=-1 and Sgn(ZY)=1
         X1=X1-2
         Y1=Y1+2
         YCEL=220
         XCEL=(X1+Y1)-220
         If XCEL<=120
            YCEL=(Y1+X2)-140
         End If 
      End If 
      Amreg(7)=YCEL
   End If 
   If Sgn(ZX)=-1 and Sgn(ZY)=-1
      YCEL=1
      XCEL=X1-Y2
      If XCEL<=120
         YCEL=Y1-X2+140
      End If 
      'Amreg(5)=YCEL 
   End If 
   Wait Vbl 
Loop 
OPCJE:
Cls 
Load Iff "Grafika:Tymczasowe/programy/Pong.op",0
Reserve Zone 
Reserve Zone 4
Set Zone 1,30,40 To 220,67
Set Zone 2,30,69 To 240,100
Set Zone 3,30,110 To 240,140
If ST1=1
   Paste Icon 120,40,1
   STER1=3
End If 
If ST1=2
   Paste Icon 120,42,4
   STER1=1
End If 
If ST1=3
   Paste Icon 120,42,5
   STER1=2
End If 
If ST2=1
   Paste Icon 120,76,2
   STER2=3
End If 
If ST2=2
   Paste Icon 120,75,4
   STER2=1
End If 
If ST2=3
   Paste Icon 120,76,5
   STER2=2
End If 
If KOL=0
   Paste Icon 120,110,7
Else 
   Paste Icon 120,110,6
End If 
Do 
   If Mouse Zone=1 and Mouse Key=1
      If ST1=3
         ST1=0
      End If 
      ST1=ST1+1
      Bar 120,40 To 300,66
      If ST1=1
         Paste Icon 120,40,1
         STER1=3
      End If 
      If ST1=2
         Paste Icon 120,42,4
         STER1=1
      End If 
      If ST1=3
         Paste Icon 120,42,5
         STER1=2
      End If 
      Wait 10
   End If 
   If Mouse Zone=2 and Mouse Key=1
      If ST2=3
         ST2=0
      End If 
      ST2=ST2+1
      Bar 120,77 To 300,110
      If ST2=1
         Paste Icon 120,76,2
         STER2=3
      End If 
      If ST2=2
         Paste Icon 120,75,4
         STER2=1
      End If 
      If ST2=3
         Paste Icon 120,76,5
         STER2=2
      End If 
      Wait 10
   End If 
   If Mouse Zone=3 and Mouse Key=1
      If KOL=1
         KOL=-1
      End If 
      KOL=KOL+1
      Bar 120,110 To 250,140
      If KOL=0
         Paste Icon 120,110,7
      End If 
      If KOL=1
         Paste Icon 120,110,6
      End If 
      Wait 10
   End If 
   If Mouse Key=2 Then Goto MENU
Loop 
Cls 
Goto MENU