Brunot
Loading...
Searching...
No Matches
AddActionToEntityAction< a > Class Template Reference

Attaches an action to an entity passed into the constructor. More...

#include <AddActionToEntityAction.h>

Inheritance diagram for AddActionToEntityAction< a >:
[legend]
Collaboration diagram for AddActionToEntityAction< a >:
[legend]

Public Member Functions

 AddActionToEntityAction ()=default
 AddActionToEntityAction (const AddActionToEntityAction &)=default
auto operator= (const AddActionToEntityAction &) -> AddActionToEntityAction &=default
 ~AddActionToEntityAction () override=default
 AddActionToEntityAction (AddActionToEntityAction &&other) noexcept=default
auto operator= (AddActionToEntityAction &&other) noexcept -> AddActionToEntityAction &=default
 AddActionToEntityAction (Entity *intendedTargets, a intendedAction)
 AddActionToEntityAction (Entity *intendedTargets, a intendedAction, float duration)
 AddActionToEntityAction (Entity *intendedTargets, a intendedAction, float duration, const th::Bezier &easingFunction, float initialDelay, float endingDelay)
auto init () -> void override
 Virtual function that is called once, when the Action is first starting up.
auto execute () -> void override
 Virtual function that is called every frame to change a game object.
auto end () -> void override
 Virtual function that is called once, when an Action is finished executing.
auto ActionShowMenu () -> void override
 Displays a window in imgui.
auto render () const -> void override
 Function used to draw things to screen, useful for things such as debug drawing.
Public Member Functions inherited from Action
 Action ()=default
 Action (const Action &)=default
auto operator= (const Action &) -> Action &=default
virtual ~Action ()=default
 Action (Action &&other) noexcept=default
auto operator= (Action &&other) noexcept -> Action &=default
auto operator== (const Action &other) const -> bool
 Action (std::string name)
 Action (std::string name, float duration)
 Action (std::string name, float duration, const th::Bezier &bezierCurve, float initialDelay, float endingDelay)
auto update (float dt) -> void
 Universal update function that handles calling init, update, and end at the right time.
auto shouldRemove () const -> bool
auto getOwner () const -> Entity *
auto setOwner (Entity *newObject) -> void
auto getHasInitialized () const -> bool
auto getHasExecuted () const -> bool
auto getHasEnded () const -> bool
auto isPaused () const -> bool
auto setPaused (bool newState) -> void
auto isBlocking () const -> bool
auto setBlocking (bool newState) -> void
auto setInitialDelay (float delay) -> void
auto getInitialDelay () const -> float
auto setDuration (float duration) -> void
auto getDuration () const -> float
auto setEndingDelay (float delay) -> void
auto getEndingDelay () const -> float
auto getTotalLifetime () const -> float
auto getName () -> std::string
 Function used for displaying info about what an Action does.
auto getCompletionPercentage () const -> float
 Function used to see how much the action has completed.
auto getCurve () const -> th::Bezier
 Function used to see which type of curve an action has.
auto setCurve (const th::Bezier &curve) -> void
 set the curve of the function

Private Attributes

Entitytarget = nullptr
actionToAdd

Additional Inherited Members

Protected Member Functions inherited from Action
auto percentageComplete () const -> float
template<typename T>
auto lerpBasedOnTime (const T &start, const T &end) -> T
Protected Attributes inherited from Action
EntitychangingObject = nullptr
std::string actionName = "BaseAction"
bool blocking = false
 If an action is blocking, it stops all actions after it in an ActionList from updating.

Detailed Description

template<std::derived_from< Action > a>
class AddActionToEntityAction< a >

Attaches an action to an entity passed into the constructor.

Constructor & Destructor Documentation

◆ AddActionToEntityAction() [1/6]

template<std::derived_from< Action > a>
AddActionToEntityAction< a >::AddActionToEntityAction ( )
default
Here is the caller graph for this function:

◆ AddActionToEntityAction() [2/6]

template<std::derived_from< Action > a>
AddActionToEntityAction< a >::AddActionToEntityAction ( const AddActionToEntityAction< a > & )
default
Here is the call graph for this function:

◆ ~AddActionToEntityAction()

template<std::derived_from< Action > a>
AddActionToEntityAction< a >::~AddActionToEntityAction ( )
overridedefault

◆ AddActionToEntityAction() [3/6]

template<std::derived_from< Action > a>
AddActionToEntityAction< a >::AddActionToEntityAction ( AddActionToEntityAction< a > && other)
defaultnoexcept
Here is the call graph for this function:

◆ AddActionToEntityAction() [4/6]

template<std::derived_from< Action > a>
AddActionToEntityAction< a >::AddActionToEntityAction ( Entity * intendedTargets,
a intendedAction )
inline
Warning
ONLY pass in an action for the second parameter, as it is being pushed directly to the action list.
Here is the call graph for this function:

◆ AddActionToEntityAction() [5/6]

template<std::derived_from< Action > a>
AddActionToEntityAction< a >::AddActionToEntityAction ( Entity * intendedTargets,
a intendedAction,
float duration )
inline
Warning
ONLY pass in an action for the second parameter, as it is being pushed directly to the action list.
Here is the call graph for this function:

◆ AddActionToEntityAction() [6/6]

template<std::derived_from< Action > a>
AddActionToEntityAction< a >::AddActionToEntityAction ( Entity * intendedTargets,
a intendedAction,
float duration,
const th::Bezier & easingFunction,
float initialDelay,
float endingDelay )
inline
Warning
ONLY pass in an action for the second parameter, as it is being pushed directly to the action list.
Here is the call graph for this function:

Member Function Documentation

◆ ActionShowMenu()

template<std::derived_from< Action > a>
auto AddActionToEntityAction< a >::ActionShowMenu ( ) ->void
inlineoverridevirtual

Displays a window in imgui.

Reimplemented from Action.

Here is the call graph for this function:

◆ end()

template<std::derived_from< Action > a>
auto AddActionToEntityAction< a >::end ( ) ->void
inlineoverridevirtual

Virtual function that is called once, when an Action is finished executing.

Reimplemented from Action.

◆ execute()

template<std::derived_from< Action > a>
auto AddActionToEntityAction< a >::execute ( ) ->void
inlineoverridevirtual

Virtual function that is called every frame to change a game object.

Reimplemented from Action.

◆ init()

template<std::derived_from< Action > a>
auto AddActionToEntityAction< a >::init ( ) ->void
inlineoverridevirtual

Virtual function that is called once, when the Action is first starting up.

Reimplemented from Action.

Here is the call graph for this function:

◆ operator=() [1/2]

template<std::derived_from< Action > a>
auto AddActionToEntityAction< a >::operator= ( AddActionToEntityAction< a > && other) ->AddActionToEntityAction &=default
defaultnoexcept
Here is the call graph for this function:

◆ operator=() [2/2]

template<std::derived_from< Action > a>
auto AddActionToEntityAction< a >::operator= ( const AddActionToEntityAction< a > & ) ->AddActionToEntityAction &=default
default
Here is the call graph for this function:

◆ render()

template<std::derived_from< Action > a>
auto AddActionToEntityAction< a >::render ( ) const->void
inlineoverridevirtual

Function used to draw things to screen, useful for things such as debug drawing.

Todo
: Implement debug draw rendering

Reimplemented from Action.

Here is the call graph for this function:

Member Data Documentation

◆ actionToAdd

template<std::derived_from< Action > a>
a AddActionToEntityAction< a >::actionToAdd
private

◆ target

template<std::derived_from< Action > a>
Entity* AddActionToEntityAction< a >::target = nullptr
private

The documentation for this class was generated from the following file: