Pembaca seperti Anda membantu mendukung MUO. Saat Anda melakukan pembelian menggunakan tautan di situs kami, kami dapat memperoleh komisi afiliasi. Baca selengkapnya.

Dalam tutorial ini, Anda akan mempelajari cara menampilkan dan memperbarui skor game di Pygame, library Python populer untuk pengembangan game. Pada akhirnya, Anda akan dapat membuat game jumper sederhana dan menampilkan skor pemain di layar seiring kemajuannya. Gim ini melacak input keyboard sehingga Anda dapat menggerakkan pemain ke kiri dan ke kanan menggunakan tombol panah.

Membuat Game Sederhana

Sebelum Anda dapat menampilkan dan memperbarui skor di Pygame, pertama-tama Anda harus membuat game untuk digunakan. Dalam tutorial ini, Anda akan membuat game sederhana di mana pemain dapat bergerak ke kiri atau ke kanan. Tapi sebelum itu, Anda harus memiliki pip diinstal pada perangkat Anda. Setelah menginstal pip, jalankan perintah di bawah ini untuk menginstal modul pygame:

pip Install pygame

Untuk memulai, impor modul yang diperlukan dan atur struktur dasar gim:

instagram viewer
impor pygame, sys
pygame.init()

# Siapkan jendela
layar = pygame.display.set_mode((750, 450))

# Siapkan jam permainan
jam = pygame.waktu. Jam()

# Siapkan karakter pemain
pemain = pygame. Persegi panjang(100, 200, 50, 50)

# Siapkan rintangan
rintangan = pygame. Persegi panjang(200, 200, 50, 50)

# Siapkan loop game
ketikaBENAR:
# Tangani acara
untuk peristiwa di dalam pygame.event.get():
jika event.type == pygame. BERHENTI:
pygame.berhenti()
sys.keluar()

jika event.type == pygame. TURUNKAN:
jika event.key == pygame. K_LEFT:
pemain.x -= 10
elif event.key == pygame. K_KANAN:
pemain.x += 10

# Perbarui status game

# Menggambar permainan
layar.isi((0, 0, 0))
pygame.draw.rect (layar, (255, 0, 0), pemain)
pygame.draw.rect (layar, (0, 255, 0), rintangan)

# Perbarui tampilan
pygame.display.flip()

# Batasi kecepatan bingkai
jam.tik(60)

Dengan kode kerangka ini, permainan dasar Anda dapat dimainkan. Tekan kiri atau kanan untuk menggerakkan karakter pemain, yang diwakili oleh kotak merah.

Menampilkan dan Memperbarui Skor Game

Sekarang setelah Anda menyiapkan permainan dasar, tambahkan sistem penilaian dan tampilkan skor di layar.

Menyiapkan Pygame untuk Rendering Teks

Untuk menampilkan teks di Pygame, pertama-tama kita perlu mengimpor modul yang diperlukan dan menginisialisasi modul font. Untuk melakukannya, gunakan kode berikut di bagian atas skrip Anda:

impor pygame
impor sys
impor os

pygame.init()
pygame.font.init()

Modul pygame.font memungkinkan Anda menggunakan kemampuan rendering teks Pygame, dan fungsi pygame.init() menginisialisasi modul font.

Membuat Sistem Penilaian Dasar

Selanjutnya, buat sistem penilaian dasar untuk gim Anda. Untuk melakukannya, nyatakan dan inisialisasi dua variabel: skor dan peningkatan_skor. Variabel skor akan melacak skor pemain saat ini, dan variabel peningkatan_skor akan menentukan berapa banyak skor yang harus ditingkatkan setiap kali pemain menyentuh rintangan.

Tambahkan kode berikut ke bagian atas skrip Anda, di bawah impor:

skor = 0
skor_kenaikan = 10

Selanjutnya, perbarui skor saat permainan berlangsung. Di loop game, Anda dapat memeriksa apakah karakter pemain bertabrakan dengan rintangan. Jika ya, tingkatkan skor dengan jumlah yang ditentukan dalam variabel peningkatan_skor.

Perbarui game loop untuk menyertakan kode berikut:

# Perbarui status game
jika player.colliderect (hambatan):
skor += peningkatan_skor

Kode ini memeriksa apakah karakter pemain bertabrakan dengan penghalang. Jika ya, itu menambah skor dengan jumlah yang ditentukan.

Menampilkan Skor di Layar Dengan Modul Font

Sekarang setelah kita memiliki sistem penilaian dasar, mari kita tampilkan skor di layar menggunakan modul font.

Pertama, mari siapkan objek font dengan menambahkan kode berikut ke bagian atas loop game:

# Siapkan objek font
font = pygame.font. Fon(Tidak ada, 36)

Kode ini membuat objek font dengan ukuran 36 piksel dan tidak ada keluarga font yang ditentukan. Anda dapat menyesuaikan font dan ukuran font dengan menentukan file dan ukuran font yang berbeda dalam fungsi Font().

Selanjutnya, mari menggambar skor ke layar. Tambahkan kode berikut ke loop game, setelah Anda memperbarui status game dan memenuhi layar:

# Gambar skor ke layar
skor_teks = font.render(Nilai-nilai: {skor}', BENAR, (255, 255, 255))
screen.blit (score_text, (10, 10))

Kode ini menggunakan metode render() dari objek font untuk membuat permukaan teks yang berisi skor, lalu blit (menggambar) permukaan teks ke layar pada posisi (10, 10).

Menyesuaikan Tampilan Teks Skor

Terakhir, sesuaikan tampilan teks skor dengan memilih font dan ukuran font serta mengubah warna teks.

Untuk memilih font dan ukuran font tertentu, berikan file dan ukuran font sebagai argumen ke fungsi Font() :

font = pygame.font. Fon('arial.ttf', 48)

Anda bisa dengan mudah unduh file font yang berbeda dari internet. Setelah mengunduh, letakkan saja file font di root direktori kerja Anda.

Untuk mengubah warna teks, berikan tupel warna sebagai argumen ketiga ke metode render() :

skor_teks = font.render(Nilai-nilai: {skor}', BENAR, (0, 255, 0))

Dan itu saja! Dengan perubahan ini, Anda sekarang harus memiliki sistem skor game yang berfungsi penuh yang menampilkan skor di layar dan memperbaruinya saat pemain melanjutkan permainan. Anda dapat menyesuaikan lebih lanjut tampilan teks skor dengan bereksperimen dengan kelompok font, ukuran, dan warna yang berbeda.

Pelacakan Skor dalam Game

Di bawah ini adalah kode kerja lengkap, Anda juga dapat menemukan kode ini GitHub repo.

impor pygame
impor os

pygame.init()
pygame.font.init()

skor = 0
skor_kenaikan = 10

# Siapkan jendela
layar = pygame.display.set_mode((750, 450))

# Siapkan jam permainan
jam = pygame.waktu. Jam()

# Siapkan karakter pemain
pemain = pygame. Persegi panjang(100, 200, 50, 50)

# Siapkan rintangan
rintangan = pygame. Persegi panjang(200, 200, 50, 50)

# Siapkan loop game
ketikaBENAR:
font = pygame.font. Fon(Tidak ada, 36)
# Tangani acara
untuk peristiwa di dalam pygame.event.get():
jika event.type == pygame. BERHENTI:
pygame.berhenti()
sys.keluar()
jika event.type == pygame. TURUNKAN:
jika event.key == pygame. K_LEFT:
pemain.x -= 10
elif event.key == pygame. K_KANAN:
pemain.x += 10

# Perbarui status game
jika player.colliderect (hambatan):
skor += peningkatan_skor


# Menggambar permainan
layar.isi((0, 0, 0))
pygame.draw.rect (layar, (255, 0, 0), pemain)
pygame.draw.rect (layar, (0, 255, 0), rintangan)

# Gambar skor ke layar
skor_teks = font.render(Nilai-nilai: {skor}', BENAR, (255, 255, 255))
screen.blit (score_text, (10, 10))

# Perbarui tampilan
pygame.display.flip()

# Batasi kecepatan bingkai
jam.tik(60)

Kode ini membuat jendela dengan ukuran 750x450 piksel, karakter pemain, dan rintangan. Ini menggunakan loop game untuk menangani acara, memperbarui status, dan menggambar game ke layar. Ini juga mencakup sistem penilaian yang menambah skor sepuluh poin setiap kali karakter pemain bertabrakan dengan penghalang, dan objek font dan kode rendering teks untuk menampilkan skor di layar.

Di bagian penanganan acara, kode juga menyertakan fungsionalitas untuk menggerakkan karakter pemain ke kiri dan ke kanan menggunakan tombol panah.

Putaran game menyertakan kode untuk memperbarui tampilan dan membatasi kecepatan bingkai hingga 60 FPS, memastikan game berjalan dengan lancar.

Secara keseluruhan, kode ini memberikan contoh dasar tentang cara menampilkan dan memperbarui skor game di Pygame, dan dapat disesuaikan dan diperluas lebih lanjut untuk membuat game yang lebih kompleks dan menarik.

Buat Game Berbeda Menggunakan Pygame

Pygame adalah perpustakaan yang kuat dan mudah digunakan untuk membuat game dengan Python. Dengan serangkaian fitur dan kemampuannya yang kaya, Anda dapat membuat berbagai macam game, mulai dari jumper dan platformer sederhana hingga game yang lebih kompleks dan imersif.

Apakah Anda seorang pemula atau pengembang game yang berpengalaman, Pygame adalah pilihan yang sangat baik untuk membuat game yang menarik dan menyenangkan.