private void Setup() { IsDead = false; if (m_HealthObserverable != null) { m_HealthObserverable.Health.Subscribe(HealthChange).AddTo(m_Disposables); m_HealthObserverable.Health.Where(playerHealth => playerHealth <= 0).Subscribe(Die).AddTo(m_Disposables); } if (m_GameDataListener == null) { m_GameDataListener = FindObjectOfType <GameDataListener>(); } if (m_GameDataListener != null) { m_GameDataListener.UpdatePlayerHealth(m_HealthObserverable.Health.Value); } if (m_GameManager == null) { m_GameManager = FindObjectOfType <GameManager>(); } }