Menu
CoddyTech

ランダムなレーン

CoddyのGodotジャーニー「ゲームのルール」セクションの一部。レッスン 21/29。

ランダムに選ぶ値の中には、5つのレーンのいずれかやサイコロの出目のように、整数が必要なものもあります。

randi_range(a, b)は、aからbまでの整数をランダムに返します。両端の値も含まれます。

var roll = randi_range(1, 6)	# 1, 2, 3, 4, 5 または 6

画面の幅は640ピクセルなので、5つのレーンはそれぞれ128ピクセルです。レーン番号に128を掛けてから64を足すと、レーンの中央に到達します。

var lane = randi_range(0, 4)
spawn(lane * 128 + 64)

これにより、x = 64、192、320、448、576のいずれかになり、その間の値にはなりません。

challenge icon

チャレンジ

簡単

ブロックが5つのレーンに落ちるようにします。randi_range(0, 4)でレーンを選び、lane * 128 + 64の位置にブロックを生成します。

自分で試してみよう

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 icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

ゲームのルールのすべてのレッスン

自分で練習してみよう: Godotプレイグラウンド