Menu
CoddyTech

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 6

L’é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.

challenge icon

Défi

Facile

Fais tomber les blocs dans cinq couloirs.

  1. Dans _on_spawn_timer_timeout(), choisis un couloir avec var lane = randi_range(0, 4).
  2. 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)
quiz iconTestez-vous

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