using UnityEngine;
public class PlayerMovement : MonoBehaviour
{
public float moveSpeed = 5f; // Speed of the player movement
private Rigidbody rb; // Reference to the Rigidbody component
// Define boundary limits
public float boundaryX = 5f; // X boundary limit
public float boundaryZ = 5f; // Z boundary limit
void Start()
{
rb = GetComponent<Rigidbody>();
}
void Update()
{
float moveHorizontal = Input.GetAxis("Horizontal");
float moveVertical = Input.GetAxis("Vertical");
Vector3 movement = new Vector3(moveHorizontal, 0.0f, moveVertical);
rb.MovePosition(transform.position + movement * moveSpeed *
Time.deltaTime);
// Restrict movement within boundaries
Vector3 clampedPosition = transform.position;
clampedPosition.x = Mathf.Clamp(clampedPosition.x, -boundaryX, boundaryX);
clampedPosition.z = Mathf.Clamp(clampedPosition.z, -boundaryZ, boundaryZ);
transform.position = clampedPosition;
}
}