void Update() { score += Mathf.Round(130 * Time.deltaTime); gameUI.SetScore(score); #region Shoot var fullAuto = gun.GetAuto() ? Input.GetKey(KeyCode.Space) : Input.GetKeyDown(KeyCode.Space); if (fullAuto && !isDashing && currentTbw <= 0) { gun.Shoot(); currentTbw = gun.GetTimeBtw(); } else { currentTbw -= Time.deltaTime; } #endregion #region Turns if (Input.GetKeyDown(KeyCode.RightArrow) && !arrowR) { arrowR = true; interTurn = 0; } else if (Input.GetKeyDown(KeyCode.LeftArrow) && arrowR) { arrowR = false; interTurn = 0; } float dir = arrowR ? 45 : -45; float currTurn = transform.rotation.y; transform.rotation = Quaternion.Euler(0, Mathf.Lerp(currTurn, dir, interTurn), 0); interTurn += Time.deltaTime * turnSpeed; controller.Move(transform.forward * currSpeed * Time.deltaTime); #endregion #region Clamping if (transform.position.x > 17) { transform.position = new Vector3(17, transform.position.y, transform.position.z); } else if (transform.position.x < -17) { transform.position = new Vector3(-17, transform.position.y, transform.position.z); } #endregion #region Dashing isDashing = Input.GetKey(KeyCode.LeftShift) && gameUI.GetEnergy() > 0; if (isDashing) { currSpeed = dashSpeed; transform.position = new Vector3(transform.position.x, -10, transform.position.z); gameUI.AccumulateEnergy(-Time.deltaTime); } else { currSpeed = speed; transform.position = new Vector3(transform.position.x, 0, transform.position.z); } volume.transform.localPosition = Vector3.MoveTowards( volume.transform.localPosition, isDashing ? post : noPost, Time.deltaTime * 5); #endregion }