public void TakeDamage(float damage, Vector3 position) { camera.ShakeCamera(0.05f, 1.0f); particle.Play(); smallExplosionParticle.transform.position = new Vector3(position.x, position.y, position.z); smallExplosionParticle.Play(); Handheld.Vibrate(); SoundManager.instance.playSound(); _currentHealth -= damage; HealthBar.value = _currentHealth; if (_currentHealth <= 0) { timer.Pause(); score.Pause(); shuttle.SetActive(false); Vector3 sPos = shuttle.transform.position; bigExplosionParticle.transform.position = new Vector3(sPos.x, sPos.y, sPos.z); bigExplosionParticle.Play(); camera.ShakeCamera(0.0f, 0.0f); Invoke("EndGame", 1); return; } }
// Update is called once per frame void Update() { distance = Vector2.Distance(transform.position, player.transform.position); if ((distance < 15) && (speed > 0)) { camera.ShakeCamera(1, 20); StartCoroutine("Chase"); } }