Menu
CoddyTech

Rastgele Konumlar

Coddy'nin Godot Journey'sinin Oyun Kuralları bölümünün bir parçası. Ders 20 / 29.

Her zaman aynı yere düşen bloklardan kaçınmak kolaydır. Rastgele sayılar her turu farklı kılar.

randf_range(a, b), ondalıklı sayılarla a ile b arasında rastgele bir sayı verir. Her çağrıda yeni bir sayı verir:

spawn(randf_range(40, 600))

Bir blok 36 piksel genişliğindedir. Bu nedenle 40 ile 600 aralığı, her bloğun 640 piksel genişliğindeki ekrana tamamen sığmasını sağlar.

Her blok belirdiğinde, bunu zamanlayıcının işlevinin içinde çağır. Bir kez seçilip bir değişkende saklanan sayı, oyun boyunca aynı kalır.

challenge icon

Görev

Kolay

Her bloğun rastgele bir yerde düşmesini sağla.

  1. _on_spawn_timer_timeout() içinde 320 değerini randf_range(40, 600) ile değiştir.
  2. Bunu fonksiyonun içinde tut, böylece her blok kendine ait bir x değeri alır.

“Oyna” düğmesine bas: bloklar ekranın her yerine 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(320)

func spawn(x):
	var block = block_scene.instantiate()
	block.position = Vector2(x, -30)
	add_child(block)

Oyun Kuralları bölümündeki tüm dersler

Kendi başına pratik yap: Godot playground