12345678910111213141516171819202122232425262728293031 |
- using System; // require keep for Windows Universal App
- using UnityEngine;
- namespace UniRx.Triggers
- {
- [DisallowMultipleComponent]
- public class ObservableUpdateTrigger : ObservableTriggerBase
- {
- Subject<Unit> update;
- /// <summary>Update is called every frame, if the MonoBehaviour is enabled.</summary>
- void Update()
- {
- if (update != null) update.OnNext(Unit.Default);
- }
- /// <summary>Update is called every frame, if the MonoBehaviour is enabled.</summary>
- public IObservable<Unit> UpdateAsObservable()
- {
- return update ?? (update = new Subject<Unit>());
- }
- protected override void RaiseOnCompletedOnDestroy()
- {
- if (update != null)
- {
- update.OnCompleted();
- }
- }
- }
- }
|