Here is my player controller script till now.. '''
//Variables
public float speed = 5f;
public float sprintSpeed = 10f;
public float jumpForce = 10f;
private Rigidbody rb;
//Methods
private void Start()
{
rb = GetComponent<Rigidbody>();
}
private void FixedUpdate()
{
BasicMovement();
}
void BasicMovement()
{
//Get Player Input
float inputX = Input.GetAxis("Horizontal");
float inputZ = Input.GetAxis("Vertical");
//Get where is Player moving position
Vector3 direction = new Vector3(inputX, 0f, inputZ);
//Move Player
rb.MovePosition(transform.localPosition + (direction * speed * Time.deltaTime));
}
'''
The cam controller script: ''' //Variables public float mouseSensitivity = 100f; //Mouse Sensitivity Variable so that i can change it later to my liking public Transform playerBody; //So camera knows what is the player body private float xAxisRotation; //To move in the x axis
void Start()
{
}
void FixedUpdate()
{
Cursor.lockState = CursorLockMode.Locked; //Locks mouse cursor at the center of the screen
//Get Mouse X,Y positions in variables
float mouseX = Input.GetAxis("Mouse X") * mouseSensitivity * Time.deltaTime; //Gets mouse location at the x-axis
float mouseY = Input.GetAxis("Mouse Y") * mouseSensitivity * Time.deltaTime; //Gets mouse location at the y-axis
xAxisRotation -= mouseY; //-ensures the rotation is not flipped
xAxisRotation = Mathf.Clamp(xAxisRotation, -90f, 90f); //Clamps rotation to -90, 90 so that player cannot look behind
transform.localRotation = Quaternion.Euler(xAxisRotation, 0f, 0f); //I dont know
//Implement mouseX position to playerBody so that the entire player moves in the X-Axis
playerBody.Rotate(Vector3.up * mouseX);
}
'''
If you need something else plz tell.