Amiga Dünyası sayı 11, sayfa 75

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 75

Bu program, örneklerini bolca görmüş olabileceğiniz eğlendirici bir hafıza oyunudur. Oyundaki temel amaç 24x12’lik bir matriste bulunan harf veya sayıların eşlerini bulup yok etmektir. Ancak bu harf ve sayılar, kutuların içinde olduklarından görünmemektedirler. Siz MOUSE göstergeci ile herhangi bir kutunun üzerinde iken sol MOUSE butonuna bastığınızda, o kutunun içindeki harf veya sayı görünür duruma geçer. Daha sonra bu sayı veya harfin eşinin bulunduğunu düşündüğünüz yerde de sol düğmeye bastığınızda eğer tahmininiz doğru ise yani her iki harf veya sayı da aynı ise her ikisi de yok olacaktır, takdirde her iki kutu da kapanarak başlangıçtaki hallerine döneceklerdir.

Oyunda toplam 10 düzey bulunmaktadır. Düzey geçebilmek için ise bazı düzeylerde bir şartı, bazılarında ise iki şartı yerine getirmek gerekir. Bunlardan tüm düzeylerde geçerli olanı, ekranın alt kısmında bulunan kutulardan REQ ile belirtilen miktarda sayı veya harfi yok etmenizdir. Bazı düzeylerde geçerli olan diğer şart ise herhangi bir renge ait bütün kutulardaki harf veya sayıları yok etmektir. Yani kırmızı, yeşil, mavi, beyaz ve sarı renklerdeki kutulardan en azından bir renge ait kutuların tümünü (örneğin mavilerin tümünü) yok etmelisiniz. Bu şartın geçerli olup olmadığını da ekranın alt kısmında bulunan COLOR yazısının altında yazan yazıdan anlayabilirsiniz. Burada eğer 'ON' yazıyorsa bu şart geçerlidir. 'OFF' yazıyorsa geçerli değildir. Oyunda her düzeyde bulunan harf veya rakam çeşidi miktarı da farklıdır. Örneğin ilk düzeyde hiç rakam yok ve 10 çeşit harf varken son düzeyde 20 çeşit harf ve tüm rakamlar bulunmaktadır. Oyunun zorluğunu belirleyen faktörlerden biri de budur (Diğerleri zaman ve renk şartı).

Oyun ekranının alt kısmında çeşitli göstergeler bulunmaktadır. Bunları soldan sağa açıklarsak: TIME : Kalan zaman OBJECTS : Kalan kutu miktarı REQ : Yok edilmesi gereken kutu miktarı COLOR : En azından bir renkteki tüm kutuların yok edilmesi gerekip gerekmediği (ON/OFF) LEVEL : Düzey no SCORE : Skor HIGH : O ana kadar yapılan en yüksek skor '**************************************** '* "DOMİNO" * '* by * '* "Hayrettin YILDIZ" * '* (STAR ) * ' * (03/01/1991) * '**************************************** MemoryGame: GOSUB Setup GOSUB Variables GOSUB BlockShapes GOSUB BoardDesign GOTO Game

IRQ:t=M:RETURN

Game: GOSUB Title 1=0:' Level Number s=0 0 GOSUB LevelSetup GOSUB PuzzIeDesign ON TIMER(l) GOSUB IRQ 1=0:' Loop Condition Variable TIMER ON WHILE o>0 AND f=0 3 GOSUB Button:IFt<l GOTO 5 xl=INT(x/24-l):yl=INT((y-12)/16):a=a(xl,yl):IFa=0 GOTO 3 COLOR 0,c(xl,yl)*3+2:LOCATE yl*2+3,x 1*3+5: PRINT a$(a); 4 GOSUB Mutton:IK t<l GOTO 5 x2=INT(x/24-l):y2=INT((y- 12)/16):b=a(x2,y2):IF b=0 GOTO 4 COLOR 0,c(x2,y2)*3+2: LOCATE y2*2+3,x2*3+5:PRINT a$(b); FOR d=l TO 50:NEXT

IF xl=x2 AND yl=y2 THEN a=-l IFa=bTHEN SOUND 1000,2 LINE(xl*24+24,yl*16+12)-(xl*24+47,yl*16+27),0,bf LINE(x2*24+24,y2*16+12)-(x2*24+47,y2*16+27),0,bf a(xl,yl)=0:a(x2,y2)=0:o=o-2:s=s+10:COLOR0,ll LOCATE 30,15:PRINT o;:LOCATE 30,50:PRINT s; END IF IFaobTHEN IF a<>0 THEN PUT(xl*24+24,yl*16+12),p(c(xl,yl)*150),PSET IF b<>0 THEN PUT(x2*24+24,y2*16+12),p(c(x2,y2)*150),PSET END IF 5 WEND COLOR 0,11:LOCATE 30,7:PRINT "0";

Klavyeyle gezinmek için ← ve → tuşları.