Entitydistance is fine to use many many hundreds of times. It's a very simple calculation. What might be happening is the distance you have specified is less than the collision radius of the car. Try setting a bigger value.
To do with the code part, try structuring the code using a mode variable:
To do with the code part, try structuring the code using a mode variable:
If mode = 1 then ;do controls for walking ElseIf mode = 2 then ;do controls for vehicle driving End If