private void ENTER_Firing() { Debug.Log("Firing Now"); _state = STATE.S_Firing; _stateChangeTime = Time.time; PJ_Bolt b = Instantiate(PF_Bolt, transform.position, transform.rotation); b.FFireDirection(Vector3.Normalize(rPC.transform.position - transform.position)); }
void Update() { Vector3 vDir = rPC.transform.position - transform.position; vDir.y = 0f; vDir = Vector3.Normalize(vDir); transform.forward = vDir; // transform.rotation = Quaternion.Euler(vDir); if (Time.time - _lastShot > _shotInterval) { PJ_Bolt b = Instantiate(PF_Bolt, rFirePoint.transform.position, transform.rotation); vDir = rPC.transform.position - rFirePoint.transform.position; b.FFireDirection(vDir); _lastShot = Time.time; } }
void Update() { // rotate towards the player. Vector3 vDir = rPC.transform.position - transform.position; vDir = Vector3.Normalize(vDir); float angle = Mathf.Atan2(vDir.y, vDir.x) * Mathf.Rad2Deg; angle -= 90; transform.eulerAngles = new Vector3(0, 0, angle); if (Time.time - _lastShot > _shotInterval) { PJ_Bolt b = Instantiate(PF_Bolt, rFirePoint.transform.position, transform.rotation); vDir = rPC.transform.position - rFirePoint.transform.position; b.FFireDirection(vDir); _lastShot = Time.time; } }