Daftar Isi:
- Langkah 1: Ikhtisar Luas
- Langkah 2: Prasyarat
- Langkah 3: "Halo Dunia" di Pygame Zero
- Langkah 4: Menggambar Aktor Anda
- Langkah 5: Kontrol Aktor
- Langkah 6: Membangun Jalur
- Langkah 7: Kecelakaan Mobil
- Langkah 8: Jalankan Game di Raspberry Pi
- Langkah 9: Apakah Anda Menang?
- Langkah 10: Kesimpulan
Video: Buat Game Balap Pertama Anda: 10 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:56
Jika Anda telah melakukan beberapa pengkodean Python dan ingin menulis game yang mungkin Anda miliki di Pygame Zero.
Dalam tutorial ini kita akan menulis game balap sederhana.
Langkah 1: Ikhtisar Luas
Modul Pygame menambahkan banyak fungsi yang membantu Anda menulis game dengan Python.
Pygame Zero melangkah lebih jauh untuk membiarkan Anda melewati proses rumit untuk membuat semua loop game itu dan menyiapkan struktur program Anda.
Pygame Zero adalah pilihan tepat bagi siapa saja yang ingin mulai menulis game komputer di Raspberry Pi atau mesin Linux apa pun.
Kamu akan membutuhkan:
- Mesin yang menjalankan OS Linux
- Editor untuk menulis program python
- Papan ketik
- Beberapa imajinasi
File:
github.com/AhmNouira/-Racing-Game
Langkah 2: Prasyarat
Pertama saya akan menggunakan laptop saya dengan OS Ubuntu 18.04. Kemudian kita akan menjalankan game di Raspberry Pi pada langkah 8.
Sebelum melanjutkan dengan tutorial ini, pastikan Anda masuk sebagai pengguna dengan hak istimewa sudo.
Menginstal pip untuk Python 3
Mulailah dengan memperbarui daftar paket menggunakan perintah berikut:
sudo apt update
Gunakan perintah berikut untuk menginstal pip untuk Python 3:
sudo apt install python3-pip
verifikasi instalasi dengan memeriksa versi pip:
pip3 --versi
Memasang Pygame Zero
pip3 instal pgzero --pengguna
Ini juga akan menginstal Pygame. Paket Pygame yang telah dikompilasi sebelumnya
Jadi langkah pertama dalam perjalanan Anda adalah membuka Python 3 IDLE atau editor python favorit Anda.
Langkah 3: "Halo Dunia" di Pygame Zero
Secara default, jendela Pygame Zero terbuka dengan ukuran lebar 800 piksel dan tinggi 600 piksel. Anda dapat menyesuaikan
ukuran jendela Anda, ada dua variabel predinied yang dapat Anda atur, jika Anda menyertakan WIDTH = 700 HIGH = 800.
Pygame zero menyediakan fungsi yang telah ditentukan untuk menangani loop game yang biasanya dilakukan:
Draw() Fungsi
Kita dapat menulis fungsi ini ke dalam program kita sama seperti kita biasanya mendefinisikan fungsi dengan Python.
Pygame Zero mengikuti aturan pemformatan yang sama dengan Python, jadi Anda harus berhati-hati untuk membuat indentasi kode Anda dengan benar.
#!/usr/bin/python3 # atur penerjemah
import pgzrun # import pgzero module WIDTH = 700 # lebar jendela HEIGHT = 800 # tinggi jendela def draw(): # pygame zero draw function screen.fill((128, 128, 128)) # isi layar dengan RGB color screen.draw.text("Hello World!", (270, 320), # draw "Hello World!" color = (255, 255, 255), ukuran font = 40) pgzrun.go()
Pertama-tama Anda perlu menyimpan file program Anda dan memberinya nama.
Kemudian buka jendela Terminal, buka lokasi file Anda dan ketik:
./.py
Langkah 4: Menggambar Aktor Anda
Sekarang setelah kita memiliki set panggung, kita dapat membuat Aktor kita, mereka adalah objek dinamis di Pygame Zero.
Kita dapat memuat Aktor dengan mengetik di bagian atas program:
mobil = Aktor("mobil balap")
Di Pygame Zero gambar kita perlu disimpan dalam direktori yang disebut gambar, di sebelah file program kita. Jadi Aktor kita akan mencari file gambar di folder gambar bernama racecar.png. Ini bisa berupa file GIF atau JPG, tetapi sebaiknya gambar Anda adalah file-p.webp
Anda dapat mengatur posisinya di layar dengan mengetik:
mobil.pos = 350, 560
Setelah itu dalam fungsi draw() kami, kami dapat mengetik
car.draw() # menggambar mobil balap kita pada posisi yang ditentukan
Program lengkapnya akan seperti ini:
#!/usr/bin/python3
import pgzrun WIDTH = 700 # lebar jendela HEIGHT = 800 # tinggi jendela mobil = Aktor("mobil balap") car.pos = 350, 560 def draw(): # pygame zero draw function screen.fill((128, 128, 128)) # isi layar dengan car.draw() pgzrun.go()
Uji program Anda untuk memastikan ini berfungsi.
Langkah 5: Kontrol Aktor
Setelah kita memiliki gambar mobil di layar, tahap selanjutnya adalah memungkinkan pemain untuk memindahkannya.
Kita bisa melakukannya dengan menekan tombol. Kita dapat membaca status kunci ini di dalam fungsi standar lain yang disebut update().
Pembaruan () Fungsi
Fungsi ini terus diperiksa saat game sedang berjalan.
Kita perlu menulis beberapa kode untuk mendeteksi penekanan tombol tombol panah dan juga untuk melakukan sesuatu tentang hal itu.
Jadi kami akan menambahkan fungsi ini ke program kami
pembaruan def():
jika keyboard.left: car.x -=2 jika keyboard.right: car.x +=2 jika keyboard.up: car.y -=2 jika keyboard.down: car.y +=2
Baris kode ini akan menggerakkan Aktor mobil ke kiri, kanan, maju dan mundur.
Langkah 6: Membangun Jalur
Sekarang kami memiliki mobil yang dapat kami kemudikan, kami membutuhkan lintasan untuk dikendarai.
Kami akan membangun trek kami dari Aktor, satu baris pada satu waktu. Kita perlu membuat beberapa daftar untuk melacak Aktor yang kita buat.
Kita juga perlu menyiapkan beberapa variabel lagi untuk trek.
Kemudian mari kita buat sebuah fungsi baru bernama makeTrack(), Fungsi tersebut akan menambahkan satu track Actor di kiri dan satu di kanan, keduanya menggunakan image bare-p.webp
trackLeft = # daftar untuk menyimpan barri kiri
trackRight = # daftar untuk menyimpan barri kanan trackCount = 0 # menghitung jumlah barri trackPosition = 350 trackWidth = 150 # lebar antara barri kiri dan kanan def makeTrack(): # berfungsi untuk membuat satu barrie di trackCount global kiri dan kanan, trackLeft, trackRight, trackPosition, trackWidth trackLeft.append(Actor("bare", pos = (trackPosition-trackWidth, 0))) trackRight.append(Actor("bare", pos = (trackPosition + trackWidth, 0))) trackCount +=1
Hal berikutnya yang perlu kita lakukan adalah memindahkan bagian trek ke bawah layar ke arah mobil.
Mari kita tulis fungsi baru yang disebut updateTrack(), Fungsi ini memperbarui di mana blok trek akan muncul. Potongan trek dibuat dengan angka acak sehingga setiap pemutaran berbeda.
trackDriction = Salah
SPEED = 4 # mengatur kecepatan permainan dari randint impor acak # mengimpor kelas randint dari modul acak def updateTrack(): global trackCount, trackPosition, trackDirection, trackWidth, SPEED b = 0 while b
Silakan merujuk ke file zip di bawah ini bernama "RaceGameDemo".
Jika kita menjalankan kode kita saat ini, kita akan melihat trek yang meliuk-liuk ke arah mobil. Satu-satunya masalah adalah kami dapat memindahkan mobil melewati penghalang lintasan dan kami ingin menjaga mobil tetap di dalamnya dengan beberapa deteksi tabrakan.
Langkah 7: Kecelakaan Mobil
Kita perlu memastikan bahwa mobil kita tidak menyentuh trek Aktor.
kita juga dapat menguji tabrakan menggunakan metode collisionrect() dalam fungsi updateTrack() kita.
Dalam game ini kita akan memiliki tiga status berbeda dengan game yang disimpan dalam variabel gameStatus kita:
- gameStatus == 0 # game sedang berjalan
- gameStatus == 1 # kecelakaan mobil
- gameStatus == 2 # game selesai
Kita perlu mengubah fungsi draw() dan fungsi update() kita untuk merespons variabel gameStatus.
Sentuhan akhir
Yang perlu kita lakukan sekarang adalah menampilkan sesuatu jika gameStatus disetel ke 1 atau 2, misalnya kita harus menampilkan warna merah
bendera, jika mobil itu jatuh. Kita dapat melakukannya dengan kode di bawah ini:
screen.blit("bendera merah", (230, 230))
Untuk melihat apakah mobil telah mencapai finish, kita harus menghitung berapa banyak bagian trek yang telah dibuat dan kemudian mungkin ketika kita mencapai 200, atur gameStatus ke 2. Kemudian tampilkan bendera kotak-kotak:
screen.blit("finishflag", (230, 230))
Kami juga akan menampilkan beberapa teks di layar seperti skor permainan saat ini.
Lihat daftar kode lengkap untuk melihat bagaimana semua ini cocok bersama.
Langkah 8: Jalankan Game di Raspberry Pi
Pada Raspberry Pi pgzero telah terinstal secara default sejak rilis Raspbian Jessie pada September 2015.
Cukup perbarui Raspberry Pi Anda dengan menggunakan perintah:
sudo apt-get update
Pergi ke lokasi file Anda dan ketik Terminal.
pgzrun.py
Langkah 9: Apakah Anda Menang?
Anda dapat membuat permainan lebih mudah atau lebih sulit dengan mengubah variabel trackWidth untuk membuat track menjadi lebar yang berbeda. Anda dapat mengubah nilai SPEED untuk membuat track bergerak lebih cepat atau lebih lambat.
Langkah 10: Kesimpulan
Pygame Zero adalah pilihan tepat bagi siapa saja yang ingin mulai menulis game komputer.
Jika Anda memiliki pertanyaan tentu saja Anda dapat meninggalkan komentar. Untuk melihat lebih banyak tentang karya saya, silakan kunjungi saluran saya:
myYouTube
myTwitter
myLinkedin
Terima kasih telah membaca instruksi ini ^^ dan semoga harimu menyenangkan. Sampai jumpa. Ahmad Nouira.
Direkomendasikan:
SIMULATOR GAME BALAP DIY -- SIMULATOR F1: 5 Langkah
SIMULATOR GAME BALAP DIY || F1 SIMULATOR: Halo semuanya Selamat datang di saluran saya,Hari ini saya akan menunjukkan kepada Anda, bagaimana saya membuat "Simulator Game Balap" dengan bantuan Arduino UNO. ini bukan blog build, ini hanya ikhtisar dan uji simulator. Selesai membangun blog segera hadir
Roda Kemudi dan Pedal PC DIY Dari Karton! (Umpan Balik, Penggeser Dayung, Tampilan) untuk Simulator Balap dan Game: 9 Langkah
Roda Kemudi dan Pedal PC DIY Dari Karton! (Umpan Balik, Penggeser Dayung, Tampilan) untuk Simulator dan Game Balap: Hai semuanya! Selama masa-masa yang membosankan ini, kita semua bermalas-malasan mencari sesuatu untuk dilakukan. Acara balap kehidupan nyata telah dibatalkan dan telah diganti dengan simulator. Saya telah memutuskan untuk membuat simulator murah yang bekerja dengan sempurna, asalkan
Game Balap Luar Angkasa Arduino Versi _1: 5 Langkah
Game Balap Luar Angkasa Arduino Versi _1: Hai teman-teman. Hari ini saya akan menunjukkan kepada Anda bagaimana Anda bisa membuat Game Space Race dengan layar LCD5110 dan joystic. Mari kita lihat langkah-langkahnya
Game Balap Luar Angkasa Versi 2: 5 Langkah
Game Balap Luar Angkasa Versi 2: Hai semuanya. Sebelum versi game ini, menerbitkan versi game pertama. Hari ini, akan menunjukkan Game Balap Luar Angkasa versi 2. Mari kita lihat langkah-langkahnya
Game Balap Kuda Halloween: 6 Langkah
Game Arcade Balap Kuda Halloween: Tahun ini kami memutuskan untuk membuat game arcade balap kuda untuk Halloween. Kami terinspirasi oleh versi mekanis yang disebut Roll-a-Ball Horse Racing. Tujuan kami adalah membuat game dengan kontrol lurus ke depan untuk menarik banyak pemain. Berdasarkan