// Update is called once per frame void Update () { if (UnityEngine.Random.Range(1, 10001) > 9990) { AudioSource youreARascal = GetComponent<AudioSource>(); youreARascal.Play(); } if (myDoogooderJob == null) myDoogooderJob = JobQueue.TakeDoogooderJob(this); if (myDoogooderJob != null) { if (myDoogooderJob.target != null) { if (((int)myDoogooderJob.target.transform.position.y) != transform.position.y) { base.MoveToFloor((int)myDoogooderJob.target.transform.position.y); } else if (transform.position.x < myDoogooderJob.target.transform.position.x - 0.5f || transform.position.x > myDoogooderJob.target.transform.position.x + 0.5f) base.MoveToX((int)myDoogooderJob.tile.Pos.x); else { if ((watch.ElapsedMilliseconds / 1000) >= watchCooldown) { Attack(); watch.Reset(); } } } } }
public static void AddGoodyJob(DoogooderJob j) { InitOpenJobs(); openDoogooderJobs.AddLast(j); }
public static void MaxDoogooderPriority(DoogooderJob j) { if (openDoogooderJobs.Contains(j)) { openDoogooderJobs.Remove(j); } openDoogooderJobs.AddFirst(j); }