コイン集め:勝利
CoddyのGodotジャーニー「シグナルと衝突」セクションの一部。レッスン 27/27。
コインが1枚も残っていなければ勝ちです。_on_coin_collectedはすでに数を減らしているので、数が変わった直後に確認しましょう。
if coins_left == 0:
print("You collected every coin!")シーンには、You collected every coin!という文字が表示された、非表示のLabel、WinBannerがあります。ランプを表示したときと同じ方法で表示しましょう。
チャレンジ
中級すべてのコインを取るとゲームに勝利します。
_on_coin_collected()の最後に、coins_leftが0と等しい場合のifを追加します。- その中で、
You collected every coin!を出力し、$WinBannerを表示します。
「プレイ」を押して6枚すべてのコインを取ると、勝利バナーが表示されます。その後、「確認」を押します。
自分で試してみよう
extends Node2D
var coins_left = 0
func _ready():
coins_left = get_tree().get_nodes_in_group("coins").size()
for coin in get_tree().get_nodes_in_group("coins"):
coin.collected.connect(_on_coin_collected)
func _on_coin_collected():
coins_left -= 1
print("Coins left: ", coins_left)
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
シグナルと衝突のすべてのレッスン
自分で練習してみよう: Godotプレイグラウンド