Esempio n. 1
0
 private void Init()
 {
     trigger = GetComponent <ObservableTriggerTrigger>();
     trigger
     .OnTriggerEnterAsObservable()
     .Subscribe(CollisionAction)
     .AddTo(this);
 }
Esempio n. 2
0
        private void Init()
        {
            m_CollisionTrigger = GetComponent <ObservableTriggerTrigger>();
            m_Movement         = GetComponent <IAsteroidMovement>();

            m_CollisionTrigger
            .OnTriggerEnterAsObservable()
            .Subscribe(CollisionRedirection)
            .AddTo(this);
            m_Init = true;
        }
Esempio n. 3
0
    private void Start()
    {
        _cubePool = new ColorCubePool(colorCubePrefab);

        ObservableRandomEventTrigger spawnStream = gameObject.AddComponent <ObservableRandomEventTrigger>();

        spawnStream.OnRandomEventAsObservable().Subscribe(_ => {
            var colorCube           = _cubePool.Rent();
            colorCube.ColorCubePool = _cubePool;

            // Debug.Log("SPAWNED NEW CUBE FROM POOL");
        });

        ObservableTriggerTrigger scoreCubeCountTrigger = scoreCube.AddComponent <ObservableTriggerTrigger>();

        scoreCubeCountTrigger.OnTriggerEnterAsObservable().Subscribe(x => {
            if (x.GetComponent <Renderer>().material.color.r == scoreCube.GetComponent <Renderer>().material.color.r)
            {
                isScoreable.Value = true;
            }
        });
        scoreCubeCountTrigger.OnTriggerExitAsObservable().Subscribe(_ => {
            isScoreable.Value = false;
        });

        ObservableRandomEventTrigger scorCubeRandomColorTrigger = scoreCube.AddComponent <ObservableRandomEventTrigger>();

        scorCubeRandomColorTrigger.OnRandomEventAsObservable().Subscribe(_ => {
            scoreCube.GetComponent <Renderer>().material = _materialsAlpha[UnityEngine.Random.Range(0, 2)];
        });

        scoreButton.OnClickAsObservable().Subscribe(_ => {
            if (isScoreable.Value)
            {
                score.Value++;
                isScoreable.Value = false;
            }
            else
            {
                score.Value--;
            }
        });

        score.SubscribeToText(scoreText);
    }