// Update is called once per frame void Update() { if (health <= 0) { ///increment score here score.add(10); Destroy(gameObject); } if (target) { targetDir = target.position - transform.position; distance = Vector3.Distance(target.position, transform.position); move_step = move_speed * Time.deltaTime; rotate_step = rotate_speed * Time.deltaTime; if (distance > d1) { transform.position = Vector3.MoveTowards(transform.position, target.position, move_step); } if (distance < d2) { es.PanicFire(); } if (distance > d2) { es.EndPanicFire(); } transform.forward = Vector3.RotateTowards(transform.forward, targetDir, rotate_step, 0.0f); } }