Where would I need to add force in this once character controller script please.

public float moveSpeed = 5;

public float moveSpeedSmooth = 0.3f;

public float rotateSpeedSmooth = 0.3f;

public float rotationSpeed = 180;

float moveSmoothUse;

float currentForwardSpeed;

float forwardSpeedV;

float targetRotation;

float currentRotation;

float rotationV;

Vector3 currentMovementV;

Rigidbody controller;

Vector3 currentMovement;

public Camera cameraTransform;

float verticalSpeed;

void Start ()

{

jumpAllowTimeTrack = jumpAllowTime;

moveSmoothUse = moveSpeedSmooth;

controller = GetComponent ();

}

void Update ()

{

if (PauseMenu.IsOn)

return;

Vector3 horizontalInput = new Vector3 (Input.GetAxis (“Horizontal”), 0, Input.GetAxis (“Vertical”));

if (horizontalInput.magnitude > 1)

horizontalInput.Normalize ();

Vector3 targetHorizontalMovement = horizontalInput;

targetHorizontalMovement = cameraTransform.transform.TransformDirection (targetHorizontalMovement);

targetHorizontalMovement.y = 0;

targetHorizontalMovement.Normalize ();

targetHorizontalMovement *= horizontalInput.magnitude;

currentMovement = Vector3.SmoothDamp (currentMovement, targetHorizontalMovement * moveSpeed, ref currentMovementV, moveSmoothUse);

Quaternion targetRotatingQ = Quaternion.LookRotation (Vector3.forward);

if (new Vector3 (currentMovement.x, 0, currentMovement.z).magnitude > 1) {

targetRotatingQ = Quaternion.LookRotation (new Vector3 (currentMovement.x, 0, currentMovement.z));

transform.Rotate (0, Input.GetAxis (“Horizontal”) * rotationSpeed * Time.deltaTime, 0);

transform.rotation = Quaternion.Euler(0, Mathf.SmoothDampAngle(transform.rotation.eulerAngles.y, targetRotatingQ.eulerAngles.y, ref rotationV, rotateSpeedSmooth), 0);

}

}