// Update is called once per frame void Update() { //creating temp value for player speed calculations float _playerSpeed = playerSpeed; //Calculating Input float _xMov = Input.GetAxisRaw("Horizontal"); float _zMov = Input.GetAxisRaw("Vertical"); //Reseting Values Vector3 _jump = Vector3.zero; //Calculating Movement Vectors Vector3 _movHorizontal = transform.right * _xMov; Vector3 _movVertical = transform.forward * _zMov; //Calculating Player Input for picking up objects if (Input.GetButtonDown("Use")) { motor.Activate(); } //Calculating "Shooting" if (Input.GetButton("Fire1")) { if (curPower < maxPower) { curPower += Time.deltaTime * chargeRate; } else { curPower = maxPower; } } if (Input.GetButtonUp("Fire1")) { motor.Shoot(curPower); curPower = 0f; } //Calculating Throw if (Input.GetButton("Fire2")) { if (curPower < maxPower) { curPower += Time.deltaTime; } else { curPower = maxPower; } } if (Input.GetButtonUp("Fire2")) { motor.Throw(curPower); curPower = 0f; } //Calculating Crouching Input if (Input.GetButtonDown("Crouch")) { motor.Crouch(); isCrouched = true; } if (Input.GetButtonUp("Crouch")) { motor.unCrouch(); isCrouched = false; } //Calculating Sprinting Input if (Input.GetButton("Sprint") && !isCrouched) { _playerSpeed = sprintSpeed; } //Calculating Jumping Input if (Input.GetButtonDown("Jump") && !isCrouched) { _jump = transform.up * playerJumpSpeed; } //Applying jumping vector motor.Jump(_jump); //Final movement Vector Vector3 _velocity = (_movHorizontal + _movVertical).normalized * _playerSpeed; //Applying movement vector motor.Move(_velocity); //Calculating mouse Movement for only the y axis float _yRot = Input.GetAxisRaw("Mouse X"); Vector3 _rotation = new Vector3(0f, _yRot, 0f) * lookSens; //applying mouse movement motor.Rotate(_rotation); //Calculating mouse Movement for only the x axis float _xRot = Input.GetAxisRaw("Mouse Y"); float _cameraRotationX = _xRot * lookSens; //applying mouse movement motor.RotateCamera(_cameraRotationX); }