【Defold】入る時、出る時に当たり判定を検知する
Unity Engine で例える OnTriggerEnter, OnTriggerExit に相当するものがDefold にもあります。それは trigger_response です。
目次
公式リファレンス
サンプルコード
collisionobject を付けたGameObject に以下の様なコードを記述します。
function on_message(self, message_id, message, sender)
if message_id == hash("trigger_response") then
if message.enter == true then
print("trigger enter")
else
print("trigger exit")
end
end
end
message.enter プロパティはコリジョンの領域へ入る時に true になり、出ていく時に false がになります。これで入った瞬間、出ていく瞬間を検知できます。
気を付ける事
collisionobject のType を [Trigger] へ設定する必要があります。
Type を Trigger へ設定しておかないと、trigger_response メッセージが飛んできませんので注意しましょう。