Advertisement
Guest User

Untitled

a guest
Sep 21st, 2014
198
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var path : Array;
  2. var pathGroup : Transform;
  3. var maxSteer : float = 15.0;
  4. var wheelFL : WheelCollider;
  5. var wheelFR : WheelCollider;
  6. var wheelRL : WheelCollider;
  7. var wheelRR : WheelCollider;
  8. var currentPathObj : int;
  9. var distFromPath : float = 20;
  10. var maxTorque : float = 50;
  11. var currentSpeed : float;
  12. var topSpeed : float = 150;
  13. var decellarationSpeed : float = 10;
  14.  
  15.  
  16. function Start () {
  17.     var path_objs : Array = pathGroup.GetComponentsInChildren(Transform);
  18.     path = new Array();
  19.  
  20.     for (var path_obj : Transform in path_objs){
  21.      if (path_obj != pathGroup)
  22.       path [path.length] = path_obj;
  23.     }
  24. }
  25.  
  26. function Update () {
  27.     Getnode();
  28.  
  29.     currentSpeed = 2*(22/7)*wheelRL.radius*wheelRL.rpm * 60 / 1000;
  30.     currentSpeed = Mathf.Round (currentSpeed);
  31.     if (currentSpeed <= topSpeed){
  32.     wheelRL.motorTorque = maxTorque;
  33.     wheelRR.motorTorque = maxTorque;
  34.     wheelRL.brakeTorque = 0;
  35.     wheelRR.brakeTorque = 0;
  36.     }
  37.     else {
  38.     wheelRL.motorTorque = 0;
  39.     wheelRR.motorTorque = 0;
  40.     wheelRL.brakeTorque = decellarationSpeed;
  41.     wheelRR.brakeTorque = decellarationSpeed;
  42.     }
  43.  
  44. }
  45.  
  46. function Getnode(){
  47.  
  48.     var steerVector : Vector3 = transform.InverseTransformPoint(Vector3(path[currentPathObj].position.x,transform.position.y,path[currentPathObj].position.z));
  49.     var newSteer : float = maxSteer * (steerVector.x / steerVector.magnitude);
  50.     wheelFL.steerAngle = newSteer;
  51.     wheelFR.steerAngle = newSteer;
  52.  
  53.     if (steerVector.magnitude <= distFromPath){
  54.     currentPathObj++;
  55.     if (currentPathObj >= path.length)
  56.     currentPathObj = 0;
  57.     }
  58.  
  59. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement