public void TakeTamage(int damage, DamageType type = DamageType.Casual, Transform enemy = null) { if (IsDead || !_canBeDamaged || damage == 0) { return; } _currentHP -= damage; if (_currentHP <= 0) { OnDeath(); } switch (type) { case DamageType.PowerStrike: _playerMovement.GetHurt(enemy.position); break; } _hpSlider.value = _currentHP; Instantiate(_damageText, transform.position + new Vector3(0f, 1.25f), _damageText.transform.rotation) .GetComponentInChildren <DamageText>().SetDamage(damage); StartCoroutine(MakeRed(0.25f)); RefreshHUD(); }
public void TakeDamage(int damage, DamageType type = DamageType.Casual, Transform enemy = null) { if (!_canBeDamaged) { return; } _currentHP -= damage; if (_currentHP <= 0) { OnDeath(); } switch (type) { case DamageType.Casual: if (enemy != null) //вот этого не хватало { _playerMovement.GetHurt(enemy.position); } break; } _hpSlider.value = _currentHP; /*Debug.Log("value = " + damage); * Debug.Log("Current HP = " + _currentHP);*/ }
public void TakeTamage(int damage, DamageType type = DamageType.Casual, Transform enemy = null) { //Debug.Log($"{Time.time} > {_unlockBlockTime}"); if (IsDead) { OnDeath(); } if (IsDead || !_canBeDamaged || damage == 0) { return; } bool block = Input.GetKey(KeyCode.LeftShift); if (block && _canBlock) { if (enemy != null) { bool faceRight = GetComponent <Movement_controller>().IsFaceRight; if (enemy.position.x < transform.position.x && !faceRight) { Block(); return; } else if (enemy.position.x > transform.position.x && faceRight) { Block(); return; } } } _currentHP -= damage; if (_currentHP <= 0) { OnDeath(); } switch (type) { case DamageType.PowerStrike: _playerMovement.GetHurt(enemy.position); break; } _hpSlider.value = _currentHP; Instantiate(_damageText, transform.position + new Vector3(0f, 1.25f), _damageText.transform.rotation) .GetComponentInChildren <DamageText>().SetDamage(damage); StartCoroutine(MakeRed(0.25f)); RefreshHUD(); }
public void TakeTamage(int damage, DamageType type = DamageType.Casual, Transform enemy = null) { if (!_canBeDamaged) { return; } _currentHP -= damage; if (_currentHP <= 0) { OnDeath(); } switch (type) { case DamageType.PowerStrike: _playerMovement.GetHurt(enemy.position); break; } _hpSlider.value = _currentHP; }