Ejemplo n.º 1
0
        private void doTasks()
        {
            if (currentTask != null)
            {
                if (currentTask.wantToDoTask())
                {
                }
                else
                {
                    currentTask = null;
                }
            }

            if (this.tasks != null)
            {
                LivingObjectTask var_TaskWantToDo = null;
                foreach (LivingObjectTask var_Task in this.tasks)
                {
                    if (var_Task.wantToDoTask())
                    {
                        if (currentTask == null)
                        {
                            if (var_TaskWantToDo == null)
                            {
                                var_TaskWantToDo = var_Task;
                            }
                            else if (var_TaskWantToDo.Priority < var_Task.Priority)
                            {
                                var_TaskWantToDo = var_Task;
                            }
                        }
                        else
                        {
                            if (var_TaskWantToDo == null)
                            {
                                if (this.currentTask.Priority < var_Task.Priority)
                                {
                                    var_TaskWantToDo = var_Task;
                                }
                            }
                            else if (var_TaskWantToDo.Priority < var_Task.Priority)
                            {
                                var_TaskWantToDo = var_Task;
                            }
                        }
                    }
                }
                if (var_TaskWantToDo != null)
                {
                    this.currentTask = var_TaskWantToDo;
                }
                if (this.currentTask != null)
                {
                    this.currentTask.update();
                }
            }
        }
Ejemplo n.º 2
0
 public LivingObject()
     : base()
 {
     this.healthPoints    = 20;
     this.maxHealthPoints = 20;
     this.aggroRange      = 300;
     this.isDead          = false;
     tasks              = new List <LivingObjectTask>();
     aggroSystem        = new Task.Aggro.AggroSystem <LivingObject>();
     MovementSpeed      = 1f;
     currentTask        = null;
     this.canBeEffected = true;
     this.interactions  = new List <LivingObjectInteraction>();
     this.path          = null;
 }