Ejemplo n.º 1
0
        private void Start()
        {
            Observable.CombineLatest <bool, MatchState, (bool, MatchState)>
                (connectionManager.Connecting, matchManager.StateReactive, (b, state) => (b, state))
            .Subscribe(tuple =>
            {
                connectingState.SetActive(tuple.Item1 || tuple.Item2 == MatchState.WaitingForRoom);
                matchmakingState.SetActive(tuple.Item2 == MatchState.WaitingForEnemy);
                readyState.SetActive(!tuple.Item1 && tuple.Item2.IsCanCreateMatchState());
            }).AddTo(this);

            playButton.OnClickAsObservable().Subscribe(_ => matchManager.FindMatch()).AddTo(this);
            cancelMatchmakingButton.OnClickAsObservable().Subscribe(_ => matchManager.CancelWaiting()).AddTo(this);
        }