23 lines
858 B
C#
23 lines
858 B
C#
using UnityEngine;
|
|
using UnityEngine.Playables;
|
|
using UnityEngine.Timeline;
|
|
using Yarn.Unity;
|
|
|
|
namespace AibisDream
|
|
{
|
|
public class TimelineSignalReceiver : MonoBehaviour, INotificationReceiver {
|
|
public string nodeToRunOnSignal = "TimelineFinished"; // Yarn 节点名称
|
|
|
|
public void OnNotify(Playable origin, INotification notification, object context) {
|
|
Debug.Log($"Signal received: {notification.GetType().Name}");
|
|
if (notification is SignalEmitter signal) {
|
|
Debug.Log($"Signal asset name: {signal.asset.name}");
|
|
if (signal.asset.name == "TimelineDone") {
|
|
Debug.Log("Timeline done, triggering Yarn node: " + nodeToRunOnSignal);
|
|
DialogController.Instance.StartDialogNode(nodeToRunOnSignal);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|