![]() |
Olympe Engine 2.0
2D Game Engine with ECS Architecture
|
Initiates an attack action on the current target entity. More...
#include <Task_Attack.h>
Inheritance diagram for Olympe::Task_Attack:
Collaboration diagram for Olympe::Task_Attack:Public Member Functions | |
| Task_Attack () | |
| 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(). | |
Initiates an attack action on the current target entity.
Definition at line 34 of file Task_Attack.h.
| Olympe::Task_Attack::Task_Attack | ( | ) |
Definition at line 20 of file Task_Attack.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 22 of file Task_Attack.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 27 of file Task_Attack.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 32 of file Task_Attack.cpp.
References Olympe::TaskValue::AsEntityID(), Olympe::DEFAULT_DAMAGE, Olympe::DEFAULT_RANGE, Olympe::EntityID, Olympe::Failure, Olympe::Float, GetComponentTypeID_Static(), INVALID_ENTITY_ID, Olympe::Success, and SYSTEM_LOG.
Here is the call graph for this function: