Class ShootTask

java.lang.Object
com.csse3200.game.ai.tasks.DefaultTask
com.csse3200.game.components.tasks.ShootTask
All Implemented Interfaces:
PriorityTask, Task

public class ShootTask extends DefaultTask implements PriorityTask
A task that allows an entity to wait for a set time and then shoot a projectile at a target.
  • Constructor Details

    • ShootTask

      public ShootTask(float waitTime, Entity target, float range)
      A task that allows an entity to wait for a set time and then shoot a projectile at a target.
      Parameters:
      waitTime - Time in seconds to wait between shots.
      target - The target entity to shoot at.
      range - The distance within which the entity will stop chasing and start shooting.
  • Method Details

    • getPriority

      public int getPriority()
      Specified by:
      getPriority in interface PriorityTask
    • start

      public void start()
      Description copied from interface: Task
      Start running this task. This will usually be called by an AI controller.
      Specified by:
      start in interface Task
      Overrides:
      start in class DefaultTask
    • update

      public void update()
      Description copied from interface: Task
      Run one frame of the task. Similar to the update() in Components.
      Specified by:
      update in interface Task
      Overrides:
      update in class DefaultTask