ヒーローの点滅
CoddyのGodotジャーニー「プロジェクト」セクションの一部。レッスン 34/36。
上部のバーでは、ハートが1つ減っても気づきにくいものです。攻撃を受けたらヒーローを赤く点滅させてから、元の色に戻しましょう。ヒーローのflash()関数でトゥイーンを使います。
func flash():
modulate = Color(1, 0.3, 0.3)
var tween = create_tween()
tween.tween_property(self, "modulate", Color(1, 1, 1), 0.5)色合いがすぐに赤くなり、その後トゥイーンによって0.5秒かけて白に戻ります。modulateはヒーローとそのすべての子ノードに色合いを適用します。
main.gdは攻撃を受けるたびに$Hero.flash()を呼び出します。そのノードを通じて、別のノードの関数を呼び出せます。
チャレンジ
中級警備員がヒーローに触れたとき、ヒーローを赤く点滅させましょう。
hero.gdで、flash()を記述します。modulateをColor(1, 0.3, 0.3)に設定し、その後、0.5秒かけてColor(1, 1, 1)に戻るようにトゥイーンさせます。main.gdで、警備員がヒーローに触れたときに$Hero.flash()を呼び出します。
「プレイ」を押して警備員に触れてみましょう。ヒーローが赤く点滅します。その後、「確認」を押します。
自分で試してみよう
extends CharacterBody2D
const SPEED = 160
func _physics_process(delta):
velocity = Input.get_vector("move_left", "move_right", "move_up", "move_down") * SPEED
move_and_slide()
プロジェクトのすべてのレッスン
自分で練習してみよう: Godotプレイグラウンド