Class WanderTask
java.lang.Object
com.csse3200.game.ai.tasks.DefaultTask
com.csse3200.game.components.tasks.WanderTask
- All Implemented Interfaces:
PriorityTask
,Task
Wander around by moving a random position within a range of the starting position. Wait a little
bit between movements. Requires an entity with a PhysicsMovementComponent.
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.csse3200.game.ai.tasks.Task
Task.Status
-
Field Summary
Fields inherited from class com.csse3200.game.ai.tasks.DefaultTask
owner, status
-
Constructor Summary
Constructors -
Method Summary
Methods inherited from class com.csse3200.game.ai.tasks.DefaultTask
create, getStatus, stop
-
Constructor Details
-
WanderTask
public WanderTask(com.badlogic.gdx.math.Vector2 wanderRange, float waitTime) - Parameters:
wanderRange
- Distance in X and Y the entity can move from its position when start() is called.waitTime
- How long in seconds to wait between wandering.
-
-
Method Details
-
getPriority
public int getPriority()Gets the priority level of the wander task.- Specified by:
getPriority
in interfacePriorityTask
- Returns:
- The priority level (1 for low priority).
-
start
public void start()Starts the wander task by initializing movement and waiting tasks, and triggering relevant events.- Specified by:
start
in interfaceTask
- Overrides:
start
in classDefaultTask
-
update
public void update()Updates the wander task by handling task switching based on the current task's status.- Specified by:
update
in interfaceTask
- Overrides:
update
in classDefaultTask
-