![minesweeper](https://private-user-images.githubusercontent.com/152931069/309314404-eb72d0e0-3489-437e-ac20-1e363d89aaa2.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjEzNzM0MTMsIm5iZiI6MTcyMTM3MzExMywicGF0aCI6Ii8xNTI5MzEwNjkvMzA5MzE0NDA0LWViNzJkMGUwLTM0ODktNDM3ZS1hYzIwLTFlMzYzZDg5YWFhMi5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwNzE5JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDcxOVQwNzExNTNaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT02ZmJhOWU5ODE0MTg2NmQwM2JlYmQ0NzNiYzI3ZTUxYjk1ZTk3OTc2ZjJiOGY1ZjljNDI2M2QxYTIyNDZjYzcyJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.KAJK64fPalvNiZN3pR2N3Cd2ZgbhyfiTqJfZTwU2xSI)
Kullanıcıdan alınan değerler ile oluşturulan oyun tablosu (matris), oyuncunun mayınları (*) seçmeden ilerleyeceği
kazanma veya kaybetme senaryosu üzerine kurulmuş metin tabanlı oyundur.
Requires Java 21.0.2 to be controlled
Sıra |
Metot |
Açıklama |
1 |
goPlay() |
Oyunu başlatır |
2 |
createBoardMap() |
managerMap değişkeni tanımlanırsa mayınları, playerMap değişkeni tanımlanırsa sade oyun alanını oluşturur |
3 |
checkMineMap() |
Oyuncunun göreceği ve güncellenecek olan haritayı oluşturur, mayın sayısına göre konumlarında rakam güncellemesi yapar |
4 |
addMine() |
Rastgele konumlarda, haritanın alanının %25 kadar mayın (*) oluşturur |
5 |
controlMine() |
Girilen yeni konumda mayın işaretlemeleri için dikey ve çapraz sorgu yapar. |
Sıra |
Açıklama |
1 |
2 X 2 ve daha büyük tahta oluşturulmalıdır, yoksa oyunu başlatmaz tekrar değer girmenizi ister |
2 |
Oluşturulan oyun tahtası içerisinde konum girmenizi ister, girilen konum alandan büyük veya 0'dan küçük olamaz ve string ifadeler olamaz, girildiği takdirde tekrar değer ister |
3 |
Girilen yeni konum kaydedilir ve bir daha girilmemesi için koşul oluşturur |
4 |
Girilen yeni konumda mayın (*) yok ise oyun sizden konum istemeye devam eder |
5 |
Girilen konum çevresinde (çapraz ve dikey) mayın (*) var ise, mayın adedi kadar değeri oyun tahtasında yazar |
6 |
Girilen konumda mayın (*) var ise döngü biter, kaybedersiniz |
7 |
Girilen tüm konumların %75 kadarı temiz ise oyunu bitirir, kazanırsınız |
Integer diziler üzerine oluşturulan proje;
* "-" konumların "0" olmama durumu
* Girilen değerlerin tekrar sorgulandığında, 3. bir geçmişi kayıt edememesi
* Projede istenen puan değerlendirme durumunu tam anlamıyla karşılıyamaması
Sebeplerden dolayı tamamen String dizilere çevrilip, baştan yazılmıştır.
3 Mart 2024 02.35
![Güncelleme](https://github.com/deerborg/MineSweeper/commit/21c2bfa68e89c8e00abc09614b9af59bf5d9464c)
![ezgif com-video-to-gif-converter](https://private-user-images.githubusercontent.com/152931069/309323440-381f21cb-6eb5-4503-9342-a8cbe4b1cdab.gif?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjEzNzM0MTMsIm5iZiI6MTcyMTM3MzExMywicGF0aCI6Ii8xNTI5MzEwNjkvMzA5MzIzNDQwLTM4MWYyMWNiLTZlYjUtNDUwMy05MzQyLWE4Y2JlNGIxY2RhYi5naWY_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwNzE5JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDcxOVQwNzExNTNaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT0xYmExN2FjYTlhYWI3YjAzZjM4ZTgzOWY3NzYxNTA2MjJjYjRhMGNkOTNjNTQzOGQwODc1OTU5ZjQ3ZWY5MjU4JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.qkkD6asGHZcoEIwc_QfR51eWwv_fqjl29lMg94IdI4I)