using System; // require keep for Windows Universal App using UnityEngine; namespace UniRx.Triggers { [DisallowMultipleComponent] public class ObservableLateUpdateTrigger : ObservableTriggerBase { Subject lateUpdate; /// LateUpdate is called every frame, if the Behaviour is enabled. void LateUpdate() { if (lateUpdate != null) lateUpdate.OnNext(Unit.Default); } /// LateUpdate is called every frame, if the Behaviour is enabled. public IObservable LateUpdateAsObservable() { return lateUpdate ?? (lateUpdate = new Subject()); } protected override void RaiseOnCompletedOnDestroy() { if (lateUpdate != null) { lateUpdate.OnCompleted(); } } } }