Merabalar resim eşletirme oyunu hazırladım, 4x4 luk bir oyun kullanıcı ilk etapta kendi iki kutu seçiyor doğruysa kapanıyor yanlışsa sıra bilgisayara geçiyor ve bilgisayar iki resmi seçiyor durum bu şekilde ilerliyor hepsi açılınca kazanan kişi messagebox ile söyleniyor kazanan taraf.
Gelelim benim takılı kaldığım kısma ben şimdilik sadece tek taraflı oynatabiliyorum bu oyunu kullanıcı yanlış yaptığında bilgisayarın seçmesi gereken iki resmi yaptırıp oyunu devam ettiremiyorum.
Yardımlarınızı bekliyorum teşekkürler şimiden.
quote:
Orijinalden alıntı: mhmtsvr
Merabalar resim eşletirme oyunu hazırladım, 4x4 luk bir oyun kullanıcı ilk etapta kendi iki kutu seçiyor doğruysa kapanıyor yanlışsa sıra bilgisayara geçiyor ve bilgisayar iki resmi seçiyor durum bu şekilde ilerliyor hepsi açılınca kazanan kişi messagebox ile söyleniyor kazanan taraf.
Gelelim benim takılı kaldığım kısma ben şimdilik sadece tek taraflı oynatabiliyorum bu oyunu kullanıcı yanlış yaptığında bilgisayarın seçmesi gereken iki resmi yaptırıp oyunu devam ettiremiyorum.
Yardımlarınızı bekliyorum teşekkürler şimiden.
Merhaba, Benim aklıma gelen iki yol var; 1. si tamamen rastgele yaparsın, örneğin; int secim1x = rnd.Next(0, 4); int secim1y = rnd.Next(0, 4); int secim2x = rnd.Next(0, 4); int secim2y = rnd.Next(0, 4); //Aynı gelmeleri ihtimali; while (secim2x == secim1x && secim2y == secim2y) { secim2x = rnd.Next(0, 4); secim2y = rnd.Next(0, 4); } //Seçilen resimler aynı mı? if (resimMatrisi[secim1x][secim1y] == resimMatrisi[secim2x][secim2y]) { //BILGISAYAR BILDI! }
2. yöntem ise biraz daha uzun sürer, Mantık şöyle: Seçilen ikililerden doğru olmayanları bir kenarda saklıyorsun (örneğin 1,3 ile 2,0 seçildi ve eşleşmedi, bunu bir liste ekliyorsun ikili halinde. Daha sonra yukarıdaki gibi random yapıp bir while'a daha sokuyorsun. O while da şunu kontrol ediyor: Yeni ürettiğim ikili (secim1x, secim1y) ; (secim2x, secim2y) eşleşmeyenler listimde var mı? Varsa (ve var olduğu sürece, while) yeniden sallama yapıyor.
2.'nin başarılı olma ihtimali daha çok, ama yapması biraz daha zor 1'e kıyasla.