Kata-Kata di Layar
Termasuk bagian Python di Jendela Game dalam perjalanan Pygame di Coddy. Pelajaran 8 dari 32.
Tekan Run: kata Comet berada di sudut kiri atas. Tiga baris menempatkannya di sana:
font = pygame.font.Font(None, 36)
text = font.render("Comet", True, (230, 230, 240))
screen.blit(text, (20, 20))Font dibuat sekali, di bagian penyiapan: font bawaan pygame dengan ukuran 36. render mengubah string menjadi gambar berwarna (True menghaluskan tepinya), dan screen.blit menempatkan gambar itu di jendela, dengan sudut kiri atasnya di (20, 20). Setiap game yang menampilkan teks menggunakan tiga baris ini.
Untuk menampilkan nilai variabel, tulis f-string: huruf f sebelum tanda kutip pembuka, dan namanya di dalam kurung kurawal:
f"Comet x: {comet_x}"Saat comet_x menyimpan nilai 58, hasilnya adalah string Comet x: 58. Tanpa f, kurung kurawal dan namanya akan ditampilkan apa adanya.
Tantangan
SedangBuat label menampilkan posisi komet: ubah "Comet" menjadi f"Comet x: {comet_x}". Angkanya bertambah saat komet terbang.
Coba sendiri
import pygame
pygame.init()
screen = pygame.display.set_mode((640, 480))
pygame.display.set_caption("Night Sky")
clock = pygame.time.Clock()
# Siapkan semuanya di sini, sebelum perulangan game.
moon_x = 160
moon_y = 120
comet_x = 40
comet_y = 200
font = pygame.font.Font(None, 36)
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
# Ubah nilainya di sini, sekali setiap frame.
comet_x = comet_x + 2
screen.fill((20, 24, 48))
# Gambar di sini, setelah mengisi layar.
pygame.draw.circle(screen, (240, 230, 160), (moon_x, moon_y), 50)
pygame.draw.circle(screen, (120, 200, 255), (comet_x, comet_y), 8)
text = font.render("Comet", True, (230, 230, 240))
screen.blit(text, (20, 20))
pygame.display.flip()
clock.tick(60)
pygame.quit()
Semua pelajaran di Python di Jendela Game
2Angka dan Variabel
Beri Nama pada NilaiBerhitungBergerak di Setiap FrameKata-Kata di LayarAngka Bulat dan PecahanLatihan sendiri: Playground Pygame