Voies aléatoires
Fait partie de la section Règles du jeu du Journey Godot de Coddy. Leçon 21 sur 29.
Certains choix aléatoires nécessitent un nombre entier, comme le choix d’une voie parmi cinq ou le résultat d’un lancer de dé.
randi_range(a, b) donne un nombre entier aléatoire entre a et b, les deux inclus :
var roll = randi_range(1, 6) # 1, 2, 3, 4, 5 ou 6L’écran fait 640 pixels de large, donc chacune des cinq voies mesure 128 pixels. Multiplie la voie par 128, puis ajoute 64 pour atteindre le milieu de la voie :
var lane = randi_range(0, 4)
spawn(lane * 128 + 64)Tu obtiens ainsi x = 64, 192, 320, 448 ou 576, et aucune valeur intermédiaire.
Défi
FacileFais tomber les blocs dans cinq couloirs.
- Dans
_on_spawn_timer_timeout(), choisis un couloir avecvar lane = randi_range(0, 4). - Fais apparaître le bloc à
lane * 128 + 64.
Appuie sur « Jouer » : les blocs tombent en colonnes bien alignées. Puis clique sur « Vérifier ».
Essayez vous-même
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)
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Règles du jeu
Entraînez-vous par vous-même : Playground Godot