Example #1
0
 private void OnStandaHealthChanged(FloatStat healthStat, float oldVal, float newVal)
 {
     if (newVal <= 0)
     { // player Death
         ChangeGameState(eGameState.Death);
     }
 }
Example #2
0
 private void HealthStatOnOnValueChanged(FloatStat stat, float oldVal, float newVal)
 {
     if (Mathf.Approximately(newVal, 0))
     {
         Die();
     }
     else
     {
         RefreshCracks();
     }
 }
Example #3
0
        private void OnStatChanged(FloatStat stat, float oldValue, float newValue)
        {
            if (!enabled || !gameObject.activeSelf)
            {
                return;
            }

            barImage.fillAmount = newValue / stat.MaxValue;

            if (newValue > oldValue)
            {
                return;
            }

            if (_refreshMissedHealthImageCor != null)
            {
                StopCoroutine(_refreshMissedHealthImageCor);
            }

            _refreshMissedHealthImageCor = StartCoroutine(RefreshMissedHealthImage());
        }
Example #4
0
        private IEnumerator Start()
        {
            _standaHealthStat = standa.GetComponent <HaveStats>().GetFloatStat(eStatType.Health);
            _standaHealthStat.OnValueChanged += OnStandaHealthChanged;
            ChangeGameState(_startingGameState.startingGameState);

            _allMeteors = new List <GameObject>(Resources.FindObjectsOfTypeAll <Destroyable>().Select(d => d.gameObject)
                                                .Where(go => go.hideFlags != HideFlags.NotEditable && go.hideFlags != HideFlags.HideAndDontSave));
            foreach (var meteor in _allMeteors)
            {
                for (int i = 0; i < meteor.transform.childCount; i++)
                {
                    var child = meteor.transform.GetChild(i);
                    if (child.CompareTag("EnergySpirit"))
                    {
                        _energySpirits.Add(child.GetComponent <ParticleSystem>());
                    }
                }
            }

            yield return(null);
//            yield return new WaitForSeconds(1.0f);
//            ChangeGameState(eGameState.Win);
        }
Example #5
0
 private void Start()
 {
     _energyStat = GetComponent <HaveStats>().GetFloatStat(eStatType.Energy);
 }
Example #6
0
 private void Start()
 {
     _healthStat = GetComponent <HaveStats>().GetFloatStat(eStatType.Health);
     _healthStat.OnValueChanged += HealthStatOnOnValueChanged;
 }
Example #7
0
 private void Start()
 {
     _stat = haveStats.GetFloatStat(stat);
     _stat.OnValueChanged += OnStatChanged;
 }