Ucapkan selamat tinggal kepada templat yang membosankan dengan PyGame Zero dalam proses pembangunan permainan anda.
Python ialah bahasa pengaturcaraan peringkat permulaan yang hebat. Dan, permainan ialah projek permulaan yang hebat: ia bersifat visual, didorong sendiri dan menyeronokkan untuk dikongsi dengan rakan dan keluarga. Walaupun, kebanyakan perpustakaan yang ditulis dalam Python, seperti PyGame, boleh mengelirukan pemula kerana mereka lupa butiran kecil dan tidak boleh memberikan apa-apa dengan mudah.
Sehingga mereka memahami perkara yang dilakukan oleh semua bahagian, mereka akan menganggap banyak daripadanya sebagai "fail templat yang tidak berguna" - petikan ajaib yang perlu disalin dan ditampal ke dalam atur cara untuk menjadikannya berfungsi.
PyGame Zero cuba merapatkan jurang ini dengan meletakkan lapisan abstraksi di atas PyGame supaya ia benar-benar tidak memerlukan templat.
"harfiah" yang kita maksudkan secara literal.
Ini ialah fail PyGame Zero yang layak:
# This comment is here for clarity reasons
Kita boleh memasukkannya ke dalam fail game.py
dan menjalankan:
$ pgzrun game.py
Ini akan memaparkan tetingkap dan menjalankan gelung permainan yang boleh diganggu dengan menutup tetingkap atau menekan CTRL-C
.
Malangnya, ini akan menjadi permainan yang membosankan. Tiada apa yang berlaku.
Untuk menjadikannya lebih menarik, kita boleh melukis latar belakang yang berbeza:
def draw(): screen.fill((255, 0, 0))
Ini akan menukar warna latar belakang daripada hitam kepada merah. Tetapi ia masih permainan yang membosankan di mana tiada apa yang berlaku. Kita boleh menjadikannya lebih menarik sedikit:
colors = [0, 0, 0] def draw(): screen.fill(tuple(colors)) def update(): colors[0] = (colors[0] + 1) % 256
Ini akan menjadikan tetingkap bermula dalam warna hitam, beransur-ansur menjadi lebih terang, sehingga ia bertukar kepada merah terang, dan kemudian kembali kepada hitam, berulang kali. Fungsi
update
mengemas kini nilai parameter dan draw
menjadikan permainan berdasarkan parameter tersebut.
Walaupun begitu, tiada cara untuk pemain berinteraksi dengan permainan ini. Mari cuba beberapa perkara lain:
colors = [0, 0, 0] def draw(): screen.fill(tuple(colors)) def update(): colors[0] = (colors[0] + 1) % 256 def on_key_down(key, mod, unicode): colors[1] = (colors[1] + 1) % 256
Atas ialah kandungan terperinci Cara menggunakan PyGame Zero dalam python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!