64'ler sayı 42, sayfa 68
Sayfanın metni

Sayfa 68

Merhabalar, yeni bir AMOS köşesiyle yine karşınızdayız. Bu ayki konumuz geçen ay başladığımız SCREEN yani ekran açma, kapama ve ekranla ilgili bazı efektlere devam ederek bir kaç örnek program açıklayacağız. Bir de joystick kontrolüne yarayan joy.

komutlarını örnekleriyle göreceğiz. Fakat ilk önce bu ayki mektuplarımıza bir göz atalım... Birinci mektubumuz, Ankara'da BURÇAK TÜRKMEN'den gelmiş. Burçak arkadaşımızın mektubu şöyle... Amigamı alalı iki üç ay kadar oluyor. Yaratıcı bir şeyler yapmak için çevremden araştırdığımda, hep bana AMOS'u almamı tavsiye ettiler. Ben de sonunda bu programı aldım, fakat programın komutları hakkında hiç bir bilgim yok. Elimde de hiç döküman yok. Sadece 64'LER Dergisinde okuduğum köşenizle bir şeyler yapıyorum. Lütfen bana AMOS için bir kitap önerirmisiniz.

Eğer siz de bu kitap varsa fiyatı ne kadar. Cevap : Sanıyorum Burçak büyük bir çıkmazın içinde. Amigamı ilk aldığım zaman bende büyük bir döküman eksikliği hissetmiştim.

Herneyse biz soruyu cevaplayalım; Evet böyle bir kitap var. Bu kitap AMOS'un kendi orijinal manuel'i. Piyasada İngilizce ve Türkçe olarak bulunuyor. Dergide de bir tane var ve İngilizce. Sadece fotokopi çektirebiliriz. Fiyat konusunu ise Apo abiyle konuşmak yerinde olur. Bu ayki ikinci mektubumuz Levent Okur adlı bir okurdan. Mektubu şöyle; Amos'la, müzik ve grafikleri başka oyunlardan çalarak, bir oyun yaptım (yaptığı oyun bir puzzle). Oyunda önünüze gelen grafikler hakkında sorular soruluyor, bilirseniz bir sonraki grafiğe geçiyorsunuz. Bilemezseniz programdan atılarak cezalandırılıyorsunuz. Böyle bir oyun yapmamın sebebi, AMOS ile joystick kontrolünün nasıl yapıldığını bilmememden kaynaklanıyor. Bunun için hangi komut yada komutların gerektiği ni söylerseniz çok sevinirim. Cevap : Böyle bir oyun yapabildiğin için sevindim. Hele hele şu andaki Türkiye'nin genç kuşak bilgisayar potansiyeli büyük ölçüde oyun oynama alanına harcanıyorken. Oyununu bana göndermeni isterim.

Eğer gönderecek olursan diskine istediğin bir programı çekebilirim... Gelelim joystick kontrol etme sorununa. Bu sorununuz da AMOS yazı dizisinin bu ayki bölümünün konusu bu. Dikkatlice okuyarak joystiği kullanmanın yollarını öğrenebilirsin... Gelelim bu ayki konumuza. İşte Joystick fonksiyonları; JOY (n) FONKSİYONU : Joy fonksiyonu, kontrol edildiği zaman bir binary sayı verir. Bu sayı joystick hareketini belirler. Fonksiyonun kullanılışında port numarasını da vermek zorunludur. Normalde joystick'in takıldığı port'un numarası 1'dir. Eğer mouse portundaki joystick'i kontrol etmek isterseniz port numarası olarak 0 sayısını vermelisiniz. Bitlerle fazla ilişkili değil ve onları kullanmakta zorluklar çekiyorsanız, diğer joystick kontrol komutlarını deneyebilirsiniz. Bu komutlara geçmeden önce joy (n) fonksiyonun verdiği binary sayının bitlerini inceleyelim. Bit no : gösterdiği joy hareketi 0 joystick yukarı 1 joystick aşağı 2 joystick sola

3 joystick sağa 4 joystick ateş Bu bitleri diğer komutlarla okuyarak joystick hareketlerini anlayabilirsiniz. Şimdi bu komutla ilgili bir kaç örnek görelim.

haıeket = JOY (1)

yukarıdaki komut, 1 inci yani joystick'in normal olarak durduğu porttaki joystick hareketlerini kontrol eder ve 'hareket' adındaki değişkene yazar. hareket2 = JOY (0) bu komut ise mouse portuna takılan joystick için joystick hareketlerini kontrol eder ve bu sayıyı hareket2 adlı değişkene koyar. Joy komutu işin zor yanıydı bir de yukarıdaki bitleri teker teker kontrol edebilen beş ayrı fonksiyon daha var. Bunların kullanımı oldukça basit. Size, joystick kontrolü için bu beş komutu kullanmanızı öneriyoruz. Bu komutlar Jleft (n),

JRight (n), JUp (n), JDown (n) ve

Fire (n) fonksiyonları. Şimdi bunları teker teker açıklayalım... JLEFT (n) FONKSİYONU :

Adından da anlaşılabileceği gibi joystick'in sola hareketini kontrol eder. Tabii ki port numarasını belirtmelisiniz. Bu fonksiyonu da JOY(n) gibi bir değişkene okutmalısınız. Eğer joystick sola çekilirse, değişken -1 değerini alacaktır. Eğer sola hareket olmazsa değişkenin değeri her zaman 0 olur. Birkaç örnek görelim ... oku: x = JLEFT(1)

IF x = -1 THEN GOTO spritesola GOTO oku SATlR 1 : joystick sola itildimi kontrol eder. Eğer sola hareket

yapıldıysa (x) değişkeni -1 değerini alır. Tersi olursa x'e 0 değeri konulur.

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