Arkadaşlar Tetris yazıyorum şu an..
getch();
komudu ile tuşu okuyorum.. Sağa yada sola basıldıysa o ekrandaki çubukları sağa sola götürüyorum..
Sorun şurada..Bildiğiniz üzere tetris oyununda duraksama yok.. Çubuklar her aşağı indiğinde ben tuşa basılmışmı diye getch(); komudu ile kontrol ediyorum..Ancak oyun duruyor.. mesela sağa bastıysam bir birim aşağı ve sağa gidiyor...
Bu getch(); komudu gibi olan başka bir komut yokmu işimi görecek.
hiç tuşa basılmadıysa beklemesin istiyorum ben..
Tuş Okuma Yardım
5
●633
- 28-05-2009, 00:06:14http://www.geocities.com/ragnor_whr/sdl_doc.txt
adresine gidip orda SDL ve Olaylar (Events) ten itibaren okursan sanırım senin işini görecek birşeyler bulacaksın.
Kolay Gelsin. - 29-05-2009, 23:08:59Eposta Aktivasyonu Gerekmektewhile döngüsü ile sonsuza kadar dögü dönsün bi kaç kordinatı kontrol ettirirsin GameOver diyerek oyunu bitirirsin.
tuş okutma olayına gelince sağa sola yukarı aşağı tuşlarının değerleri okunmadığı sürece ekran aşağı doğru kaysın. - 30-05-2009, 22:14:31Merhaba yazdigin komuta( getch() ) bakilirsa C de yaziyorsun
ama arkadaslar gorsel programlama uygulamasi yapiyormussun gibi cevaplar yazmis.
mesela sunun gibi
"Timer kullanabilirsin, ontimer olayında çubukları aşağı indir, tuşa basılırsa sağa sola alırsın. Birbirinden bağımsız olur."
Soruyu tam anlamamislar galiba neyse
Sorunu cevabina gelelim
Ornegin Pascal da su sekilde
While (1=1) burda sonsuz dongu olusturuyoruz
begin
Tus:=Readkey();
if Tus=hangi tusu istersen
begin
.
.
kodlar
end;
end;
C de su sekilde
While( 1==1)
{
char Tus;
Tus=getch();
.
.
.
kodlar
} - 02-06-2009, 18:50:26NoVolume problem saten getch() ile almaya kalktığında programın bekliyor olması o satırda!!!
KeyPressed mi değilmi kontrol etmesi lazım önce, sonra eğer bir keye pressed olduysa getch la hangi key olduğunu alır!!! ama key pressed olmadıkça devam etmeli program o satırda bekleme yapmamalı.... Şimdi sanırım herkes anladı .... o nedenle windows.h kullanması gerekli yada hazır kontrol mekanizmasını içinde barındıran bi kütüphane kullanmalı.
Kolay Gelsin.