Rastgele Şeritler
Coddy'nin Godot Journey'sinin Oyun Kuralları bölümünün bir parçası. Ders 21 / 29.
Bazı rastgele seçimler, beş şeritten biri veya zar atışı gibi bir tam sayı gerektirir.
randi_range(a, b), a ile b arasından, ikisi de dahil olacak şekilde rastgele bir tam sayı verir:
var roll = randi_range(1, 6) # 1, 2, 3, 4, 5 veya 6Ekran 640 piksel genişliğindedir, bu nedenle beş şeridin her biri 128 piksel genişliğindedir. Şerit numarasını 128 ile çarpın, ardından şeridin ortasına ulaşmak için 64 ekleyin:
var lane = randi_range(0, 4)
spawn(lane * 128 + 64)Böylece x = 64, 192, 320, 448 veya 576 değerleri elde edilir; arada başka değer olmaz.
Görev
KolayBlokların beş şeritte düşmesini sağla.
_on_spawn_timer_timeout()içindevar lane = randi_range(0, 4)ile bir şerit seç.- Bloğu
lane * 128 + 64konumunda oluştur.
“Oyna” düğmesine bas: bloklar düzgün sütunlar hâlinde düşer. Ardından “Kontrol et” düğmesine bas.
Kendin dene
extends Node2D
var block_scene = preload("res://block.tscn")
func _ready():
$SpawnTimer.timeout.connect(_on_spawn_timer_timeout)
func _on_spawn_timer_timeout():
spawn(randf_range(40, 600))
func spawn(x):
var block = block_scene.instantiate()
block.position = Vector2(x, -30)
add_child(block)
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Oyun Kuralları bölümündeki tüm dersler
Kendi başına pratik yap: Godot playground