🎮 Ya Olmazsa?
Oyunlarda her zaman bir şeyler ters gidebilir! Anahtar yoksa kapı açılmaz, can biterse oyun biter...
📝 Örnek 1: Hazine Arama
🔍 hazine_ara.berk
// Belki (Option) - Ya varsa ya yoksa!
fonksiyon sandik_ac(konum: tamsayı) -> Belki[metin] {
esle konum yap
1 => Bazi("💎 Elmas buldun!"),
2 => Bazi("💰 Altın buldun!"),
3 => Bazi("🗝️ Anahtar buldun!"),
_ => Hic, // Boş sandık!
son
}
fonksiyon ana() {
yazdir("🗺️ HAZİNE AVI!\n");
// 5 sandık kontrol et
icin i in 1..6 {
yazdir("📦 Sandık #{} açılıyor...", i);
esle sandik_ac(i) yap
Bazi(hazine) => yazdir(" ✅ {}\n", hazine),
Hic => yazdir(" ❌ Boş sandık!\n"),
son
}
}
📝 Örnek 2: Boss Saldırısı
👹 boss_attack.berk
// Sonuç (Result) - Ya başarılı ya başarısız!
fonksiyon saldir(oyuncu_guc: tamsayı, boss_kalkan: tamsayı) -> Sonuc[tamsayı, metin] {
eğer oyuncu_guc <= 0 yap
don Hata("💀 Gücün yetmiyor!");
son
eğer boss_kalkan > oyuncu_guc yap
don Hata("🛡️ Kalkan çok güçlü!");
son
değişken hasar = oyuncu_guc - boss_kalkan;
don Tamam(hasar);
}
fonksiyon ana() {
yazdir("⚔️ BOSS SAVAŞI\n");
// Deneme 1: Zayıf saldırı
esle saldir(10, 20) yap
Tamam(hasar) => yazdir("💥 {} hasar verdin!", hasar),
Hata(mesaj) => yazdir("❌ {}", mesaj),
son
// Deneme 2: Güçlü saldırı
esle saldir(50, 20) yap
Tamam(hasar) => yazdir("💥 {} hasar verdin!", hasar),
Hata(mesaj) => yazdir("❌ {}", mesaj),
son
}
🎯 Hatırla!
Belki/Option= Var mı yok mu?Sonuc/Result= Başarılı mı hatalı mı?
📌 Özet
Option: Some(değer) veya NoneResult: Ok(değer) veya Err(hata)?operatörü hata propagasyonu için