Menu
CoddyTech

ヒーローの点滅

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()を呼び出します。そのノードを通じて、別のノードの関数を呼び出せます。

challenge icon

チャレンジ

中級

警備員がヒーローに触れたとき、ヒーローを赤く点滅させましょう。

  1. hero.gdで、flash()を記述します。modulateをColor(1, 0.3, 0.3)に設定し、その後、0.5秒かけてColor(1, 1, 1)に戻るようにトゥイーンさせます。
  2. 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プレイグラウンド