浮かぶ数値
CoddyのGodotジャーニー「ゲームの手触り」セクションの一部。レッスン 19/23。
攻撃を受けたときに浮かび上がる数字は、何が起きたかをプレイヤーに伝えます。
ロボットの hit() はすでに、頭上に -1 と表示する Label を作成します。木箱の破片と同じように、このラベルは get_parent() に配置されるため、ロボットと一緒に移動したり点滅したりしません。
浮かび上がらせるには、同時に "position:y" を上方向へ、"modulate:a" を 0 へトゥイーンします。トゥイーンが完了したら、label.queue_free() でラベルを削除します。そうしないと、見えないままゲーム内に残ります。
var rise = create_tween()
rise.tween_property(label, "position:y", label.position.y - 40, 0.6)tween_property の最初の値は、変更するノードです。ここでは self ではなく label です。
チャレンジ
中級-1を浮かび上がらせます。ラベルを追加した後:
- 0.6秒で、ラベルの
"position:y"を40ピクセル上にトゥイーンします。 - 並行して、ラベルの
"modulate:a"を0.0にトゥイーンします。 - トゥイーンの
finishedをawaitし、その後label.queue_free()を実行します。
自分で試してみよう
extends Node2D
func hit():
modulate = Color(4, 4, 4)
var tween = create_tween()
tween.tween_property(self, "modulate", Color(1, 1, 1), 0.3)
var label = Label.new()
label.text = "-1"
label.modulate = Color(1, 0.42, 0.42)
label.position = position + Vector2(-8, -110)
get_parent().add_child(label)
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
ゲームの手触りのすべてのレッスン
自分で練習してみよう: Godotプレイグラウンド