Example #1
0
        private void Sample13()
        {
            var hp    = new ReactiveProperty <float>(1.0f);
            var gauge = new ReactiveProperty <float>(1.0f);

            slider1.OnValueChangedAsObservable().Subscribe(x => hp.Value = x);

            hp
            .Select(x => Anime.Play(gauge.Value, x, Easing.OutCubic(1f)))
            .Switch()
            .Subscribe(x => gauge.Value = x);

            gauge.Subscribe(x => { slider2.value = x; });

            Anime.Sleep(0f)
            .DoOnCompleted(() => slider1.value = 0.3f)
            .Sleep(1f)
            .DoOnCompleted(() => slider1.value = 0.8f)
            .Sleep(1f)
            .DoOnCompleted(() => slider1.value = 0.0f)
            .Sleep(0.5f)
            .DoOnCompleted(() => slider1.value = 1.0f)
            .Subscribe();
        }