イベント通知を設定する
SpawnObjectExt と ReturnObjectExt は、処理が成功したときにUdonBehaviourのカスタムイベントを呼び出せます。
イベント通知は初期状態では無効です。必要なコンポーネントだけ有効にしてください。
イベントを受信する
通知を受け取る UdonSharpBehaviour に、下記の public メソッドを実装します。
public void OnPurabeSpawn()
{
// Spawn成功時の処理
}
public void OnPurabeReturn()
{
// Return成功時の処理
}
アイテムへ通知する
Spawn アイテムへ通知 または Return アイテムへ通知 を有効にすると、Poolへ登録したルートGameObjectに直接付いているすべての UdonBehaviour へ通知します。
子GameObjectにある UdonBehaviour は対象になりません。

外部のUdonBehaviourへ通知する
外部 UdonBehaviour へ通知を有効にするExternal Event Targetsに通知先のUdonBehaviourを登録する
複数の通知先を登録できます。アイテムへの通知と外部への通知は、同時に有効にできます。

同じ UdonBehaviour を複数登録すると、登録した回数だけイベントが呼び出されます。アイテム上の UdonBehaviour を外部通知先にも登録した場合も、それぞれの設定から呼び出されます。
未設定の配列要素は実行時に無視されます。
通知タイミング
OnPurabeSpawn は、PoolからのSpawnに成功し、移動処理を開始した後に呼び出します。Spawn Delay Frames やHelperコンポーネントの Move Delay による移動完了までは待機しません。
移動後の座標を利用する場合は、イベント受信側で遅延処理を実装してください。
OnPurabeReturn は、次のタイミングで呼び出します。
- Returnアイテム自身への通知:PoolへReturnする直前
- 外部UdonBehaviourへの通知:Return成功後
通常のReturnトリガーだけでなく、ResetSwitch による一括Returnでも通知します。SpawnまたはReturnに失敗した場合は通知しません。
ローカルイベント
通知には SendCustomEvent を使用するため、操作したクライアント上でのみ実行されます。他のクライアントへ自動送信されません。
全クライアントで処理する必要がある場合は、受信側の OnPurabeSpawn または OnPurabeReturn 内で SendCustomNetworkEvent などを実行してください。