Menu
CoddyTech

木箱を壊す

CoddyのGodotジャーニー「ゲームの手触り」セクションの一部。レッスン 15/23。

木箱にぶつかると、木箱は消えます。代わりに木片に砕けるようにしましょう。burst.tscnは、木片を飛び散らせる一度限りのCPUParticles2Dで、処理が終わると自分自身を削除します。

バーストを木箱の子ノードとして追加してはいけません。queue_free()は子ノードもすべて含めてノードを削除するため、バーストも木箱と一緒に消えてしまいます。木箱の親ノードに、木箱と同じ位置で追加しましょう。

var burst = BURST.instantiate()
burst.position = position
get_parent().add_child(burst)
burst.emitting = true
queue_free()

get_parent()はツリー内で木箱の上にあるノード、つまりレベルです。バーストは木箱の兄弟ノードなので、木箱が消えた後も残ります。

challenge icon

チャレンジ

中級

プレイヤーが木箱に触れたとき:

  1. BURST.instantiate()でバーストを作成し、
  2. 木箱のpositionに配置し、
  3. get_parent()に追加して、そのemittingをtrueに設定し、
  4. その後、木箱を削除します。

自分で試してみよう

extends Area2D

const BURST = preload("res://burst.tscn")

func _ready():
	body_entered.connect(_on_body_entered)

func _on_body_entered(body):
	queue_free()
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

ゲームの手触りのすべてのレッスン

自分で練習してみよう: Godotプレイグラウンド