![]() |
Olympe Engine 2.0
2D Game Engine with ECS Architecture
|
Moves an entity toward a 2D (TargetX, TargetY) destination. More...
#include <Task_GotoPosition.h>
Inheritance diagram for Olympe::Task_GotoPosition:
Collaboration diagram for Olympe::Task_GotoPosition:Public Member Functions | |
| Task_GotoPosition () | |
| TaskStatus | ExecuteWithContext (const AtomicTaskContext &ctx, const ParameterMap ¶ms) override |
| Executes the atomic task for one frame with full runtime context. | |
| TaskStatus | Execute (const ParameterMap ¶ms) override |
| Executes the atomic task for one frame. | |
| void | Abort () override |
| Aborts the task, releasing any in-progress state. | |
Public Member Functions inherited from Olympe::IAtomicTask | |
| virtual | ~IAtomicTask ()=default |
Additional Inherited Members | |
Public Types inherited from Olympe::IAtomicTask | |
| using | ParameterMap = std::unordered_map< std::string, TaskValue > |
| Convenience alias for the parameter map passed to Execute(). | |
Moves an entity toward a 2D (TargetX, TargetY) destination.
Definition at line 37 of file Task_GotoPosition.h.
| Olympe::Task_GotoPosition::Task_GotoPosition | ( | ) |
Definition at line 24 of file Task_GotoPosition.cpp.
|
overridevirtual |
Aborts the task, releasing any in-progress state.
Called by the TaskSystem when execution is interrupted (e.g. a parent node is aborted or a new graph is bound while a task is Running). Concrete tasks must implement this to clean up timers, reservations, animations, or any other side-effects started in Execute().
Implements Olympe::IAtomicTask.
Definition at line 26 of file Task_GotoPosition.cpp.
References SYSTEM_LOG.
|
overridevirtual |
Executes the atomic task for one frame.
| params | Named parameters provided by the task graph node. |
Implements Olympe::IAtomicTask.
Definition at line 31 of file Task_GotoPosition.cpp.
References Olympe::Failure.
|
overridevirtual |
Executes the atomic task for one frame with full runtime context.
New tasks should override this method to access the richer context (World pointer, LocalBlackboard, EntityID, dt, StateTimer). The default implementation simply forwards to Execute(params) so all existing tasks remain compatible without any changes.
| ctx | Runtime context for this tick (Entity, World*, LocalBB, dt, StateTimer). |
| params | Named parameters provided by the task graph node. |
Reimplemented from Olympe::IAtomicTask.
Definition at line 36 of file Task_GotoPosition.cpp.
References Olympe::ARRIVAL_TOLERANCE, Olympe::TaskValue::AsVector(), Olympe::BB_KEY_POSITION, Olympe::DEFAULT_GOTO_SPEED, Olympe::Failure, Olympe::Float, GetComponentTypeID_Static(), Olympe::Int, Olympe::Running, Olympe::Success, SYSTEM_LOG, Olympe::Vector, and Vector::z.
Here is the call graph for this function: