Pemandangan Bentuk
Termasuk bagian Perulangan Game dalam perjalanan Pygame di Coddy. Pelajaran 11 dari 32.
Gambar dalam game sering terdiri dari banyak bentuk kecil. Pohon di sini terdiri dari batang berwarna cokelat dengan lingkaran hijau di atasnya. Gambar beberapa pohon dan kamu akan mendapatkan hutan.
Saat kelompok bentuk yang sama muncul lebih dari sekali, masukkan ke dalam fungsi yang menerima posisi. Setiap pemanggilan menggambar satu pohon:
def draw_tree(x, y):
pygame.draw.rect(screen, (120, 80, 40), (x - 5, y, 10, 30))
pygame.draw.circle(screen, (60, 170, 90), (x, y), 20)
draw_tree(80, 250)
draw_tree(240, 250)Setiap bentuk dalam fungsi ditempatkan berdasarkan x dan y, jadi untuk memindahkan pohon, kamu hanya perlu mengubah satu pemanggilan.
Urutan tetap penting di dalam fungsi. Batang dimulai dari titik tengah lingkaran, dan lingkaran digambar kedua, sehingga menutupi bagian atas batang. Tukar kedua baris tersebut dan batang akan terlihat menembus daun.
Tantangan
Mudah- Di dalam
draw_tree, setelah batang, gambar tajuk pohon: lingkaran hijau(60, 170, 90)yang berpusat di(x, y)dengan radius20. - Di bawah
draw_tree(80, 250), panggil fungsi itu dua kali lagi untuk pohon di(240, 250)dan(400, 250).
Coba sendiri
import pygame
pygame.init()
screen = pygame.display.set_mode((480, 360))
pygame.display.set_caption("Forest")
clock = pygame.time.Clock()
def draw_tree(x, y):
pygame.draw.rect(screen, (120, 80, 40), (x - 5, y, 10, 30))
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
screen.fill((30, 30, 46))
pygame.draw.circle(screen, (240, 240, 210), (70, 60), 24)
pygame.draw.rect(screen, (40, 90, 50), (0, 280, 480, 80))
draw_tree(80, 250)
pygame.display.flip()
clock.tick(60)
pygame.quit()
Semua pelajaran di Perulangan Game
1Gerakkan Persegi
Buka JendelaIsi Latar Belakang4Bergerak Berdasarkan Waktu
Delta WaktuPiksel per DetikVector2Percepatan dan GesekanBerputar Kembali di LayarLatihan sendiri: Playground Pygame