Class ChaseTask
java.lang.Object
com.deco2800.game.ai.tasks.DefaultTask
com.deco2800.game.components.tasks.ChaseTask
- All Implemented Interfaces:
PriorityTask,Task
public class ChaseTask extends DefaultTask implements PriorityTask
Chases a target entity until they get too far away or line of sight is lost
-
Nested Class Summary
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and Type Method Description intgetPriority()voidstart()Start running this task.voidstop()Stop the task immediately.voidupdate()Run one frame of the task.
-
Constructor Details
-
ChaseTask
- Parameters:
target- The entity to chase.priority- Task priority when chasing (0 when not chasing).viewDistance- Maximum distance from the entity at which chasing can start.maxChaseDistance- Maximum distance from the entity while chasing before giving up.
-
-
Method Details
-
start
public void start()Description copied from interface:TaskStart running this task. This will usually be called by an AI controller.- Specified by:
startin interfaceTask- Overrides:
startin classDefaultTask
-
update
public void update()Description copied from interface:TaskRun one frame of the task. Similar to the update() in Components.- Specified by:
updatein interfaceTask- Overrides:
updatein classDefaultTask
-
stop
public void stop()Description copied from interface:TaskStop the task immediately. This can be called at any time by the AI controller.- Specified by:
stopin interfaceTask- Overrides:
stopin classDefaultTask
-
getPriority
public int getPriority()- Specified by:
getPriorityin interfacePriorityTask
-