Ok, so i found a rigidbody script on the unity wiki and i edited it a bit so it would fit my game a bit better. (Not being able to jump)
I have tried to understand how the script works but i cant really figure everything out, so here is the script i have now.
var speed = 10.0;
var maxVelocityChange = 10.0;
private var grounded : boolean = false;
function FixedUpdate ()
{
if (grounded)
{
// Calculate moving speed
var targetVelocity = new Vector3(Input.GetAxis("Horizontal"), 0, Input.GetAxis("Vertical"));
targetVelocity = transform.TransformDirection(targetVelocity);
targetVelocity *= speed;
// Apply a force that attempts to reach our target velocity
var velocity = rigidbody.velocity;
var velocityChange = (targetVelocity - velocity);
velocityChange.z = Mathf.Clamp(velocityChange.z, -maxVelocityChange, maxVelocityChange);
velocityChange.x = Mathf.Clamp(velocityChange.x, -maxVelocityChange, maxVelocityChange);
rigidbody.AddForce(velocityChange, ForceMode.VelocityChange);
}
}
// If player is touching ground, grounded = true
function OnCollisionStay ()
{
grounded = true;
}
I tried some things to make the script work like i wanted it to. (not in the script because it didn't work) What i want is a top down controller script, if anyone got any suggestions i would be happy if you could post them.