Dodge:スコア
CoddyのGodotジャーニー「ゲームのルール」セクションの一部。レッスン 26/29。
Dodgeでは、生き残った秒数ごとに1ポイント獲得します。シーンには1秒タイマーのScoreTimerがあり、毎秒タイムアウトします。上部のバーにはScoreラベルがあります。
これは、前に作った時計と同じように動作します。変数を使い、_ready()で表示し、timeoutのたびにポイントを加算します。
func _on_score_timer_timeout():
score += 1
$HUD/Score.text = "Score: %d" % score1つのシーンに複数のタイマーを置くことができます。それぞれに独自のwait_timeと関数があります。そのため、スコアを変えずにブロックが落ちる頻度を変更できます。
チャレンジ
中級生き残った秒数ごとに1点を獲得します。
- 最初に
var score = 0を追加し、_ready()で$HUD/ScoreにScore: 0を表示します。 $ScoreTimer.timeoutを_on_score_timer_timeoutに接続します。_on_score_timer_timeout()で、1点を加算して新しいスコアを表示します。
「プレイ」を押すと、スコアが1秒ごとに増えます。その後、「確認」を押します。
自分で試してみよう
extends Node2D
var block_scene = preload("res://block.tscn")
func _ready():
$SpawnTimer.timeout.connect(_on_spawn_timer_timeout)
func _on_spawn_timer_timeout():
var block = block_scene.instantiate()
block.position = Vector2(randf_range(40, 600), -30)
add_child(block)
ゲームのルールのすべてのレッスン
自分で練習してみよう: Godotプレイグラウンド