Battlefield2, World of Tanks, The Sims4 ve Freedom Force, Python ile geliştirilen binlerce harika oyundan sadece birkaçı.
TkinterTk GUI araç setinin standart Python arabirimi olan, grafiksel kullanıcı arabirimleri oluşturmayı kolay ve eğlenceli hale getiren güçlü bir modüldür. Akıllara durgunluk veren bir Renk Oyunu geliştirmek için bu modülü kullanın. Ayrıca, yol boyunca modülü nasıl kullanacağınızı öğrenin.
Renk Oyunu Nedir?
Renk Oyununda program bir rengin adını ekranda fakat farklı bir yazı tipi renginde görüntüler. Örneğin, kelimeyi görüntüler Sarı kırmızı bir yazı tipi rengi kullanıyor ve oyuncunun metnin rengini yazması gerekiyor.
Zamanlayıcı ile birlikte bu bilgi uyumsuzluğu, çok sayıda kafa karışıklığı yaratır ve eğlenceli bir oyun deneyimi yaratır.
Tkinter ve Random Modülü
Renk Oyununu oluşturmak için,
tkinter modül ve rastgele modül. Tkinter, hızlı bir şekilde grafik kullanıcı arayüzleri oluşturmak için kullanabileceğiniz, platformlar arası, basit ve kullanıcı dostu bir GUI modülüdür.Etiket ve giriş widget'ları gibi bazı yararlı araçlara ve paket, ızgara ve yer gibi düzen yöneticilerine sahiptir. Sağlanan işlevler, acemi programcıların fazla çaba harcamadan uygulamaları tasarlamasını kolaylaştıracak şekilde oldukça basittir. tkinter'ı sisteminize kurmak için terminalde aşağıdaki komutu çalıştırın:
pip kurulumu tkinter
Rastgele modül, rastgele seçimler oluşturabileceğiniz yerleşik bir kitaplıktır. Bu modülü kullanarak, el kriket oyunları geliştirebilirsin, sayı tahmin oyunları, sihirli sekiz top oyunları, rastgele şifre üreteçleri, ve daha fazlası.
Python Kullanarak Renk Oyunu Nasıl Yapılır?
Color Game'in kaynak kodu şu adreste mevcuttur: GitHub deposu ve MIT Lisansı kapsamında kullanımınız ücretsizdir.
tkinter ve random modülünü içe aktararak başlayın. Renklerin adını bir dize listesi olarak saklayın ve Gol 0 değişkeni ve kalan süre 60'a
itibaren tkinter içe aktarmak *
içe aktarmak rastgele
renkler = ['Kırmızı', 'Yeşil', 'Mavi', 'Siyah', 'Pembe', 'Beyaz', 'Mor', 'Sarı', 'Kahverengi']
puan = 0
kalan süre = 60
adlı bir işlev tanımlayın. Oyuna başla() bu alır etkinlik giriş bağımsız değişkeni olarak. İşlev iki görevi yürütür. İlk olarak, olup olmadığını kontrol eder. kalan süre 60'a eşittir. Evet ise, çağırır ve yürütür geri sayım() işlev. İkincisi, onu çağırır sonraki renk() oyun devam ederken rengi ve skoru rastgele karıştıran ve görüntüleyen işlev.
kesinOyuna başla(etkinlik):
eğer kalan süre == 60:
geri sayım()
sonrakiRenk()
adlı bir işlev tanımlayın. sonrakiRenk() ve global olarak değişkenlere referans verin. Kalan süre 0'dan büyükse, giriş alanını kullanarak odağı ayarlayın. odak_set() giriş etiketindeki yöntem (değişkende depolanır) e) kodun sonraki yarısında tanımlanır.
Kullan elde etmek() girişin geçerli metnini bir dize olarak alma ve büyük/küçük harf uyuşmazlığını önlemek için küçük harfe çevirme yöntemi. Bu, ekranda görüntülenen renge eşitse, puanı bir artırın. Kullan silmek() içeriği temizlemek için giriş widget'ındaki 0'dan son dizine kadar işlev.
kesinsonrakiRenk():
küresel Gol
küresel kalan süre
eğer kalan_zaman > 0:
e.odak_set()
eğer e.get().lower() == renkler[1].daha düşük():
puan += 1
e.sil(0, SON)
Kullan Karıştır() listedeki öğeleri yeniden sıralama ve listedeki ilk renk olarak metin ve listedeki ikinci renk olarak yazı tipi rengi ile renk etiketini görüntüleme işlevi. Kullan yapılandırma() işlev açık skor etiketi (Enter'a basılmasını ister) oyun oturumdayken skoru görüntülemek için.
random.shuffle (renkler)
label.config (fg=str (renkler[1]), metin=str (renkler[0]))
skorEtiketi.config (metin="Gol: " + str (puan))
adlı bir işlev tanımlayın. geri sayım() bu, kalan süre değişkenine başvurur ve onu bir azaltır. Kullan yapılandırma() üzerinde işlev zaman etiketi Ekranda kalan süreyi görüntülemek ve sonrasında() geri arama işlevi geri sayım 1000 milisaniye veya bir saniye gecikmeden sonra çalışır.
kesingeri sayım():
küresel kalan süre
eğer kalan_zaman > 0:
kalan süre -= 1
timeLabel.config (metin="Kalan zaman: " + str (kalan süre)
zaman etiketi.sonra(1000, geri sayım)
tkinter örneğini başlatın ve kök pencereyi görüntüleyin. Pencerenin başlığını, piksel cinsinden boyutlarını ve arka plan rengini ayarlayın.
kök = Tk()
root.title("Bir Twist ile Renk Oyunu")
kök.geometri("750x450")
root.config (arka plan='Turuncu')
Kullan Etiket oyuncuya oyun talimatı hakkında talimat vermek için widget. Yerleştireceğiniz ana pencereyi kabul eder. Metin, etiketin arka plan rengiyle birlikte yazı tipi tipini ve boyutunu göstermelidir. Kullan ambalaj() etiket parçacığını üst parçacığın içine yerleştirmeden önce bloklar halinde düzenleme işlevi.
Benzer şekilde, kullanıcıya basması talimatını vermek için skor etiketini tanımlayın. Girmek oyuna başlamak için ve kalan süreyi görüntülemek için bir zaman etiketi. Arka planla karışmaları için tüm etiketlerin turuncu bir arka plan rengine sahip olduğundan emin olun. Renk adlarını içerecek boş bir etiket tanımlayın. sonrakiRenk() işlev.
talimatlar = Etiket (kök, metin="Metnin rengini değil kelimenin rengini yazın ;)", yazı tipi=("Arial", 24), bg="turuncu")
talimatlar.paket()
skorLabel = Etiket (kök, metin="Başlamak için Enter'a basın", yazı tipi=("Arial", 24), bg="turuncu")
skorLabel.pack()
timeLabel = Etiket (kök, metin="Kalan süre: " + str (kalan süre), yazıtipi=("Arial", 24), bg="turuncu")
timeLabel.pack()
etiket = Etiket (kök, yazı tipi =("Arial", 90), bg="turuncu")
Daha önce bahsedildiği gibi, oyuncunun cevabını yakalamak için giriş widget'ını kullanın. Önemli bir adım, Enter tuşunu tkinter penceresindeki bir olayla ilişkilendirmektir, böylece oynatıcı buna bastığında belirli bir işlev yürütülür.
Bunu başarmak için, anahtar ve Oyuna başla() parametre olarak işlev görür bağlamak() işlev. Ek olarak, ambalaj() Ve odak_set() Enter tuşuna bastığınızda giriş etiketini düzenleme ve odaklama yöntemleri.
e = Giriş (yazı tipi=20)
root.bind('' , Oyuna başla)
e.paket()
e.odak_set()
bu Ana döngü() işlevi, Python'a tkinter olay döngüsünü çalıştırmasını ve siz pencereyi kapatana kadar olayları (düğmeye basma gibi) dinlemesini söyler.
root.mainloop()
Tüm kodu bir araya getirin ve parmaklarınızın ucunda oynamaya hazır bir bükülme ile Renk Oyununa sahip olun.
Python Kullanarak Renk Oyununun Çıktısı
Color Game programı çalıştırıldığında ekranda bir pencere belirir. Enter'a basıldığında geri sayım başlar ve oyuncunun kelimenin rengini yazmaya başlaması gerekir. Her doğru cevap için puan birer birer artar ve sonunda nihai puanı gösterir.
Python Kullanarak Oyun Geliştirme
Python, oyun geliştirme için harika bir dildir. Dilin anlaşılması ve kullanılması basit olmakla kalmaz, aynı zamanda tüm deneyim seviyelerindeki oyun geliştiricilerin ilginç ve eğlenceli, çarpıcı oyun dünyaları yaratmasına olanak tanır.
Ayrıca, PyGame veya Kivy gibi piyasada bulunan çeşitli oyun geliştirme platformları sayesinde yaratıcılar fikirleri hayata geçirme konusunda çok çeşitli seçeneklere sahiptir.