ヒットストップ
CoddyのGodotジャーニー「ゲームの手触り」セクションの一部。レッスン 17/23。
ヒットストップは、攻撃が命中したときにゲームをほんの一瞬停止させます。これにより、攻撃に強い手応えが生まれます。
Engine.time_scaleはゲーム内時計の速度です。1ではゲームは通常どおり進行します。0.05では、移動、トゥイーン、タイマーの動作が20分の1の速度になります。
Engine.time_scale = 0.05
await get_tree().create_timer(0.1, true, false, true).timeout
Engine.time_scale = 1.0通常のタイマーは遅くなった時計で動くため、0.1秒が実時間で2秒続きます。create_timerの最後のtrueを指定すると、タイマーはtime_scaleを無視して実時間を数えます。その前の2つの値は通常のデフォルト値です。
必ずtime_scaleを1に戻してください。これはゲーム全体に影響し、コードで変更するまでそのままです。
チャレンジ
中級hit()で点滅した後、ゲームを一時停止します。Engine.time_scaleを0.05に設定し、時間スケールを無視するタイマーで実時間の0.1秒待ってから、1.0に戻します。Eキーを押して、ドローンが停止するのを確認してください。
自分で試してみよう
extends Node2D
func hit():
modulate = Color(4, 4, 4)
var tween = create_tween()
tween.tween_property(self, "modulate", Color(1, 1, 1), 0.3)
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
ゲームの手触りのすべてのレッスン
自分で練習してみよう: Godotプレイグラウンド