Menu
CoddyTech

Pipa dengan Pengatur Waktu

Termasuk bagian Proyek dalam perjalanan Godot di Coddy. Pelajaran 24 dari 36.

Selanjutnya, pipa. Sebuah pipa adalah scene, pipe.tscn: bagian atas dan bagian bawah dengan celah di antaranya. Di pipe.gd, pipa bergerak ke kiri dengan kecepatan SPEED piksel per detik. Setelah melewati tepi kiri, pipa menghapus dirinya sendiri, sehingga pipa lama tidak menumpuk:

position.x -= SPEED * delta
if position.x < -60:
	queue_free()

Scene ini memiliki Timer bernama PipeTimer yang menyala setiap 1.6 detik. Di main.gd, hubungkan sinyal timeout-nya dan buat pipa melewati tepi kanan:

func _on_pipe_timer_timeout():
	var pipe = PIPE.instantiate()
	pipe.position = Vector2(700, 180)
	$Pipes.add_child(pipe)

Godot menggambar node sesuai urutan dalam tree. Pipes berada sebelum Ground, sehingga ground menutupi bagian bawah setiap pipa.

challenge icon

Tantangan

Sedang

Kirim pipa melintasi layar.

  1. Di pipe.gd, tambahkan const SPEED = 160. Gerakkan pipa ke kiri pada setiap frame fisika dan hapus setelah position.x kurang dari -60.
  2. Di main.gd, tambahkan const PIPE = preload("res://pipe.tscn") dan hubungkan $PipeTimer.timeout.
  3. Pada setiap timeout, buat pipa di (700, 180) dalam node Pipes.

Tekan tombol “Main”: pipa meluncur masuk dari kanan. Lalu tekan tombol “Periksa”.

Coba sendiri

extends Node2D

func _ready():
	pass

Semua pelajaran di Proyek

Latihan sendiri: Playground Godot