Python ile Adam Asmaca Oyunu

Bu yazımızda, Python programlama dili kullanarak temsili bir adam asmaca oyunu kodladık. Öncelikle bilmeyenler için oyunun nasıl bir şey olduğunu anlatalım.

Adam Asmaca temelde kelime tahmini üzerine kurulu bir bilgi yarışması oyunudur. Doğru bir şekilde tahmin edilmeyen her harf için, asılı bir adamın çizimi adım adım tamamlanır. Oyunun amacı da zaten seçilen kelimeyi tamamen tahmin etmek ve böylece adamın tamamen çizilmesini (temsili olarak asılmasını) engellemektir. Her yanlış tahminde, adamın çizimi parça parça tamamlanır ve en sonunda asılmış olur. Yani özetle eğer adam çizilmeden kelime tahmin edilirse tahmin eden oyuncu kazanır; eğer adam tamamen çizilirse kelimeyi seçen oyuncu kazanır.

Kodumuzu yazmak için while döngüsü, for föngüsü ve koşul ifadelerinden olan if-else deyimlerinden yararlandık. Bakınız:

import random
kelimeler = ["kedi", "köpek", "kablumbağa", "yunus", "balina", "fok", "arı", "atmaca", "güvercin", "aslan"]
secilen_kelime = random.choice(kelimeler)
gecerliHarfler = "abcçdefgğhıijklmnoöpqrsştuüvwxyz"
toplamHak = 5
yapilanTahmin = ""
# Oyun görselleri
ADAM_ASMACA_GORSLLERI = [
    """
      --------
      |    |
      |
      |
      |
      |
    """,
    """
      --------
      |    |
      |    O
      |
      |
      |
    """,
    """
      --------
      |    |
      |    O
      |    |
      |
      |
    """,
    """
      --------
      |    |
      |    O
      |   /|
      |
      |
    """,
    """
      --------
      |    |
      |    O
      |   /|\
      |
      |
    """,
    """
      --------
      |    |
      |    O
      |   /|\
      |   /
      |
    """,
    """
      --------
      |    |
      |    O
      |   /|\
      |   / \
      |
    """
]
print("Adam Asmaca Oyununa Hoş Geldiniz!")
while toplamHak > 0:
    gercekKelime = ""
    for harf in secilen_kelime:
        if harf in yapilanTahmin:
            gercekKelime += harf
        else:
            gercekKelime += "_ "
    
    if gercekKelime == secilen_kelime:
        print(gercekKelime)
        print("Tebrikler kazandınız!")
        break
    
    print(ADAM_ASMACA_GORSLLERI[5 - toplamHak])
    print("Hayvan adını tahmin edin:", gercekKelime)
    print(f"Kalan hakkınız: {toplamHak}")
    
    tahmin = input("Bir harf tahmin edin: ").lower()
    if tahmin in gecerliHarfler:
        yapilanTahmin += tahmin
        if tahmin not in secilen_kelime:
            toplamHak -= 1
    else:
        print("Lütfen geçerli bir harf giriniz...")
else:
    print("Maalesef kaybettiniz. Doğru kelime:", secilen_kelime)

Bu kodda, oyun görselleri ADAM_ASMACA_GORSLLERI adlı bir liste içerisinde tutulmaktadır. toplamHak değişkeni, kullanıcının kalan tahmin hakkını belirtir. Harf tahminleri doğru olduğunda kelime içerisinde gösterilir. Yanlış tahminlerde ise toplamHak azaltılır ve yanlış tahmin sayısına göre Adam Asmaca’nın belirli bir aşaması ekrana yazdırılır.

İlgili Makaleler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu