Transferring velocity?

How can I transfer the velocity of a GameObject that has a RigidBody to the Player that has a Rigidbody and a CharacterController btw I’m using the FPSWalker Enhanced script?

I’ve tried using this but it falls above the ground without a collider and even if I put a collider on the player half of its body will also fall.

alt text

Is there a better way to transfer velocity?

void TransferSpeed()
{
    Vector3 vel = theObject.rigidbody.velocity;
    transform.rigidbody.velocity = vel;
}

Add this property to FPSWalkerEnhanced.

public Vector3 Velocity
{
  get
  {
    return speed * moveDirection; 
  }

  set
  { 
    speed = value.magnitude;
    moveDirection = value.normalized;
  }
}

Then you can get and set the Velocity of the fps walker:

void TransferSpeed()
{
    fpsWalker.Velocity = theObject.rigidbody.velocity
}