home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC World Komputer 1996 May
/
PCW596.iso
/
polskie
/
eduk
/
genfast
/
demo_08.pak
/
KULKA31.DA_
< prev
next >
Wrap
Text File
|
1996-02-08
|
3KB
|
162 lines
; Gra typu ARKANOID - aplikacja przykladowa poruszana myszka
; Wykonanie: Piotr W.-Rakowski, 1996
; Wersja 1.1
[procedure Linia]
@Line(%D,%C,%D+%E,%C);
@Return;
[1!]
@ClrScr;
@Reset;
@ShowScreen;
@DisableStatusBar;
@UpArea(20,20,620,410,4);
@DownArea(29,29,611,401,7);
@UpArea(80,420,500,470,7);
@SetPosition(100,430);
@FastWrite('Animacja 4. GRA typu ARCANOID - poruszana myszkå');
@SetPosition(100,450);
@FastWrite('GENFAST w.2.0. [<-] szybciej wolniej [->]');
@DrawButton(20,420,70,470,7,200,'koniec.rbm','');
@DrawButton(510,420,560,470,7,41,'lewo.rbm','');
@DrawButton(570,420,620,470,7,40,'prawo.rbm','');
; Miejsce, od ktorego bedzie wyswietlany kwadracik
@A:=50
@B:=50
; Zdefiniowanie kierunku ruchu obiektu
@K:=2
; Warunki brzegowe linijki odbijajacej
; x1
@C:=301
; y1
@D:=30
; Dlugosc = 50
@E:=50
@F:=50
@Call:Linia;
; Procedura wywolywana cyklicznie
@DefIdleProc(6);
[100]
@CheckEvents;
[2]
@A:=%A+2
@B:=%B+2
@IF (%B >= 370) Then GoSub:7
@IF (%A >= 580) Then GoSub:9
@IF (%B+30 = 300) Then GoSub:30
@Goto:100
[3]
@A:=%A+2
@B:=%B-2
@IF (%A >= 580) Then GoSub:8
@IF (%B <= 30) Then GoSub:10
@IF (%B = 302) Then GoSub:32
@Goto:100
[4]
@A:=%A-2
@B:=%B-2
@IF (%B <= 30) Then GoSub:9
@IF (%A <= 30) Then GoSub:7
@IF (%B = 302) Then GoSub:34
@Goto:100
[5]
@A:=%A-2
@B:=%B+2
@IF (%A <= 30) Then GoSub:10
@IF (%B >= 370) Then GoSub:8
@IF (%B+30 = 300) Then GoSub:36
@Goto:100
[6]
@GetMousePosition;
@GoSub:20;
@SetPosition(%A,%B);
;@Rectangle(%A,%B,%A+30,%B+30);
@UpArea(%A,%B,%A+30,%B+30,2);
@Delay(%F);
@Clear(%A,%B,%A+30,%B+30);
@Goto:%K
[7]
@K:=3
@Sound(50,50);
@Return;
[8]
@K:=4
@Sound(50,50);
@Return;
[9]
@K:=5
@Sound(50,50);
@Return;
[10]
@K:=2
@Sound(50,50);
@Return;
[20]
@Clear(%D,%C,%D+%E,%C);
@D:=%X
@IF (%D >= 560) Then Begin
@D:=560
@End;
@IF (%D <= 30) Then Begin
@D:=30
@End;
@Call:Linia;
@Return;
[30]
@IF (%A+30 >= %D) Then GoSub:31
@Return;
[31]
@IF (%A+30 <= %D+80) Then GoSub:7
@Return;
[32]
@IF (%A+30 >= %D) Then GoSub:33
@Return;
[33]
@IF (%A+30 <= %D+80) Then GoSub:10
@Return;
[34]
@IF (%A+30 >= %D) Then GoSub:35
@Return;
[35]
@IF (%A+30 <= %D+80) Then GoSub:9
@Return;
[36]
@IF (%A+30 >= %D) Then GoSub:37
@Return;
[37]
@IF (%A+30 <= %D+80) Then GoSub:8
@Return;
[40]
@F:=%F-5
@IF (%F < 10) Then Begin
@F:=10
@End;
@GoTo:100
[41]
@F:=%F+5
@IF (%F > 100) Then Begin
@F:=100
@End;
@GoTo:100
[200]
@ReplaceProgram('shell.dat',1);