void FixedUpdate() { if (Inputs.BButton(playerId) && IsNotOnCooldown()) { if (isFiring) { HoldingFire(); } else { distance = 0.5f; isFiring = true; } } else if (isFiring) { Fire(); isFiring = false; timestampCooldown = Time.time; } SetAim(); SetDirection(); transform.localPosition = CalculatePosition(currentAngle, distance); }