Python -da oddiy o'yinlar yaratish

By 08.09.2021 08.09.2021

Tic-Tac-Toe, Dots-and-Boxes va Snake-and-Apple o'yinlari uchun interaktiv piton kodi.

Mar 17, 2020 · 7 daqiqa o'qilgan

Ushbu maqolada men Tkinter to'plami yordamida pythonda Tic-Tac-Toe, Dots-and-Boxes va Snake-and-Apple o'yini kabi oddiy o'yinlarni qanday yaratish mumkinligini batafsil ko'rib chiqaman. Maqola quyidagi tarkibga bo'lingan

  1. Tkinterga kirish
  2. O'yinning oqim diagrammasi
  3. Kodning tuzilishi
  4. Misollar-Tic-Tac-Toe, Dots-and-Boxes va Snake-and-Apple

Tkinter yordamida GUI

Tkinter - bu python uchun standart GUI tuzilmasi va python 3 bilan birga keladi. Yangi boshlanuvchilar uchun ajoyib qo'llanmani bu erda topishingiz mumkin. Bu darslik Tkinterga emas, balki undan oddiy o'yinlar yaratish uchun qanday foydalanishga qaratilgan. Biz foydalanadigan ikkita asosiy vidjet

  • Tuval:oynada o'yin grafikasini chizish
  • Bog'lash:foydalanuvchi kiritgan ma'lumotni olish uchun.

Tuval vidjeti:

Tkinterdagi tuval vidjeti oynaga geometrik moslamalarni chizish uchun ishlatiladi. U turli shakllarni chizish usullariga ega. Oddiy o'yin uchun eng ko'p ishlatiladigan usullar quyidagilar

  • Create_line ():chiziqlar chizish uchun
  • Create_oval ():aylana chizish uchun
  • Create_text ():Matnni oynada chop etish uchun
  • o'chirish ():chizilgan ob'ektlarni oynadan tozalash

Vidjetni ulash:

Bind sichqonchani bosish hodisalaridan ma'lumotlarni olish uchun ishlatiladi. Bind usulida sichqonchani bosish turini aniqlash uchun quyidagi parametrlardan foydalanish mumkin

  • :Sichqonchaning chap tugmasi bosilishini aniqlaydi
  • :sichqonchaning o'rta bosilishini aniqlaydi
  • :Sichqonchaning o'ng tugmasini bosishni aniqlaydi

Bind usuli yuqoridagi parametrni birinchi argument sifatida, ikkinchi argument sifatida modul nomini oladi. Modul sichqonchani bosish parametri bilan aniqlangan hodisa aniqlanganda chaqiriladi.

O'yin oqimining diagrammasi:

Endi biz Tkinter haqida umumiy ma'lumotga ega bo'lsak, keling, oddiy o'yinning asosiy sxemasini tuzamiz.

O'yinning ba'zi parametrlariga (masalan, panjara o'lchami, rang, matn va boshqa ishga tushirish xususiyatlari) asoslanib, o'yin ishga tushadi va keyin foydalanuvchi kirishini qidirishni boshlaydi (sichqonchani bosish shaklida). Qabul qilinganidan so'ng, panjara pozitsiyalari (sichqoncha bosilgan oynaning x, y koordinatalari) o'yinga bog'liq mantiqiy pozitsiyalarga aylanadi. Bu mantiqiy pozitsiyalar pythonda o'zgaruvchilar sifatida saqlangan o'yinning ichki holatini yangilash va tuval usullari yordamida o'yin grafikasini yangilash uchun ishlatiladi. Jarayon o'yin tugaguniga qadar takrorlanadi (bu sichqonchaning bosilishi va o'yinning ichki holatiga bog'liq bo'ladi). O'yin natijasi ko'rsatiladi. Natija ekraniga sichqonchani bosish hodisasi qo'shiladi, agar foydalanuvchi o'yinni qayta o'ynashni xohlasa.

Kod tuzilishi:

Kodni yaxshiroq va mantiqiy tashkil qilish uchun biz funktsiyalarni uchta toifaga ajratamiz.

  1. Boshlash funktsiyalari
  2. Chizish funktsiyalari
  3. Mantiqiy funktsiyalar

Boshlash funktsiyalari:

Bu funktsiyalar o'yin uchun dastlabki holatni o'rnatish uchun javobgardir. O'yin o'zgaruvchilarini aniqlash, o'yin grafikasini ishga tushirish, o'yin tugagandan so'ng o'yin o'zgaruvchilarini qayta o'rnatish, tuvalni aniqlash va vidjetlarni bog'lash va boshqalarni o'z ichiga oladi. Initializatsiya funktsiyalari asosan yangi o'yin boshlanganda yoki o'yinni sozlash bilan bog'liq. O'yin tugadi va yana o'ynash kerak.

Chizish funktsiyalari:

Nomidan ko'rinib turibdiki, bu funktsiyalar Tkinter oynasiga o'yinga asoslangan grafik elementlarni chizish uchun javobgardir. Yuqorida aytib o'tilgan tuval chizishning asosiy usullariga asoslanib, biz o'z o'yinimizga xos bo'lgan yuqori darajali chizish funktsiyalarini yaratamiz. Bu yuqori darajadagi chizish funktsiyalari keyinchalik o'yin grafikasini yangilash uchun qurilish materiali sifatida ishlatiladi.

Mantiqiy funktsiyalar:

Bu funktsiyalar o'yin grafikasi bilan hech qanday aloqasi yo'q va o'yin mantig'ini hal qiladi. Bunga o'yin holatini kuzatib borish, foydalanuvchi ma'lumotlarini qabul qilish, o'yin holatini yangilash, joriy harakatning qonuniyligini tekshirish, o'yinchi ballarini kuzatib borish, o'yin yakunlanganligini tekshirish kiradi. o'yin natijasi to'g'risida qaror qabul qilish va boshqalar.

Endi biz o'yin elementlarining ba'zi asoslari haqida gaplashdik, keling, ish kodlari bilan ba'zi misollarni ko'rib chiqaylik