タイマーでスポーンする
CoddyのGodotジャーニー「ゲームのルール」セクションの一部。レッスン 19/29。
毎秒ブロックを落とすには、Timerとspawn()関数を組み合わせます。
シーンにはSpawnTimerというTimerがあります。毎秒時間切れになり、自動的に開始します。接続しましょう:
func _ready():
$SpawnTimer.timeout.connect(_on_spawn_timer_timeout)
func _on_spawn_timer_timeout():
spawn(320)SpawnTimerのwait_timeを変更すると、ゲームの速度を調整できます。
チャレンジ
簡単毎秒ブロックを1つ落とします。
_ready()で、$SpawnTimer.timeoutを_on_spawn_timer_timeoutに接続します。spawn(320)を呼び出す_on_spawn_timer_timeout()を記述します。
「プレイ」を押すと、中央に毎秒ブロックが落ちます。その後、「確認」を押します。
自分で試してみよう
extends Node2D
var block_scene = preload("res://block.tscn")
func _ready():
pass
func spawn(x):
var block = block_scene.instantiate()
block.position = Vector2(x, -30)
add_child(block)
ゲームのルールのすべてのレッスン
自分で練習してみよう: Godotプレイグラウンド