Advertisement
asqapro

AIMove

Aug 22nd, 2012
35
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #pragma strict
  2.  
  3. function Start () {
  4.      //Application.targetFrameRate = 60;
  5. }
  6.  
  7. var speed = 6;
  8. var xPoints = [300];
  9. var zPoints = [300];
  10. var idle = false;
  11. var turn = false;
  12. var walking = false;
  13. var counter : int;
  14.  
  15. function Update () {
  16.     if(!idle){
  17.         walking = true;
  18.         if(Random.Range(1,2)>1){ //Choose whether to go up or left/right
  19.             var xMove = xPoints[Random.Range(0,(xPoints.length - 1))];
  20.             var x = Time.deltaTime * speed;
  21.             transform.Translate(x,0,0); //Translate forward 6 units per second
  22.             counter++;  //How far translates fluxtuates because of timing or frames
  23.             if(counter>xMove-50){
  24.                 turn = false;
  25.             }
  26.             if(counter>xMove-150){
  27.                 turn = true;
  28.             }
  29.             if(counter>xMove){
  30.                 idle = true;
  31.                 walking = false;
  32.                 turn = false;
  33.             }
  34.         }
  35.         else{
  36.             var zMove = zPoints[Random.Range(0,(zPoints.length - 1))];
  37.             var z = Time.deltaTime * speed;
  38.             transform.Translate(0,0,z); //Same settings as x move
  39.             counter++;
  40.             if(counter>zMove-50){
  41.                 turn = false;
  42.             }
  43.             else if(counter>zMove-150){
  44.                 turn = true;
  45.             }
  46.             if(counter>zMove){
  47.                 idle = true;
  48.                 walking = false;
  49.                 turn = false;
  50.             }
  51.         }
  52.         if(turn){
  53.             var turnDegree = Random.Range(1,1);
  54.             if(turnDegree==1){
  55.                 var rotation = 52.55; //Change to negative to go other way
  56.                 transform.Rotate(Vector3.up*Time.deltaTime*rotation);
  57.                 //turn = false;
  58.             }
  59.             else if(turnDegree==2){
  60.                 //transform.Rotate(Vector3.left * Time.deltaTime);
  61.                 turn = false;
  62.             }
  63.             else if(turnDegree==3){
  64.                 //transform.Rotate(Vector3.right * Time.deltaTime);
  65.                 turn = false;
  66.             }
  67.         }
  68.     }
  69. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement