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.
Tantangan
SedangKirim pipa melintasi layar.
- Di
pipe.gd, tambahkanconst SPEED = 160. Gerakkan pipa ke kiri pada setiap frame fisika dan hapus setelahposition.xkurang dari-60. - Di
main.gd, tambahkanconst PIPE = preload("res://pipe.tscn")dan hubungkan$PipeTimer.timeout. - Pada setiap timeout, buat pipa di
(700, 180)dalam nodePipes.
Tekan tombol “Main”: pipa meluncur masuk dari kanan. Lalu tekan tombol “Periksa”.
Coba sendiri
extends Node2D
func _ready():
pass
Semua pelajaran di Proyek
1Proyek: Breakout
Pemukul BreakoutJaga Pemukul Tetap di Layar4Proyek: Penjelajah Ruang Bawah Tanah
Jelajahi Ruang Bawah TanahAmbil Kunci3Proyek: Flappy Flyer
Gravitasi FlyerKepakkan FlyerLatihan sendiri: Playground Godot