Menu
CoddyTech

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.

challenge icon

Tantangan

Mudah
  1. Di dalam draw_tree, setelah batang, gambar tajuk pohon: lingkaran hijau (60, 170, 90) yang berpusat di (x, y) dengan radius 20.
  2. 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

Latihan sendiri: Playground Pygame