Advertisement
kasru

AI Minion Update 3

Jan 26th, 2013
2,015
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //****** Donations are greatly appreciated.  ******
  2. //****** You can donate directly to Jesse through paypal at  https://www.paypal.me/JEtzler   ******
  3.  
  4. var target : Transform;
  5. var rotationSpeed = 5;
  6. var myTransform : Transform;
  7. var canMove : boolean = true;
  8. var inCombat : boolean = false;
  9. var fireSpell : Transform;
  10. var pathingCooldown : boolean = false;
  11. var atTower1 : boolean = false;
  12. var attackCooldown : boolean = false;
  13.  
  14. function Awake() {
  15.  
  16.     myTransform = transform;
  17. }
  18.  
  19. function Start() {
  20.  
  21.     target = GameObject.FindWithTag("node2").transform;
  22. }
  23.  
  24. function Update () {
  25.  
  26.     if(TowerScript.tower1destroyed == false && atTower1 == true && attackCooldown == false) {
  27.  
  28.         Instantiate(fireSpell,this.transform.position,Quaternion.identity);
  29.         minionAttackCooldown();
  30.     }
  31.  
  32.     else if( TowerScript.tower1destroyed == true && atTower1 == true) {
  33.  
  34.         canMove = true;
  35.     }
  36.  
  37.     if(canMove == true && inCombat == false ) {
  38.         var moveSpeed = Random.Range(10,150);
  39.         var randomPathing = Random.Range(0,2);
  40.         var randomSpeed = Random.Range(-160,160);
  41.  
  42.         myTransform.rotation = Quaternion.Slerp(myTransform.rotation,
  43.         Quaternion.LookRotation(target.position - myTransform.position), rotationSpeed*Time.deltaTime);
  44.  
  45.         if(randomPathing == 0) {
  46.         myTransform.position += myTransform.forward * moveSpeed * Time.deltaTime;
  47.     }
  48.  
  49.         if(randomPathing == 1) {
  50.         myTransform.position += myTransform.right * randomSpeed * Time.deltaTime;
  51.     }
  52.     }
  53. }
  54.  
  55. function OnTriggerEnter (col : Collider) {
  56.  
  57.     if(col.gameObject.tag == "tower1trigger") {
  58.         if(TowerScript.tower1destroyed == false) {
  59.              Debug.Log("entered tower1");
  60.             this.canMove = false;
  61.             this.atTower1 = true;
  62.         }
  63.     }
  64. }
  65.  
  66. function minionAttackCooldown () {
  67.  
  68.     attackCooldown = true;
  69.     yield WaitForSeconds(5);
  70.     attackCooldown = false;
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement