Hymn to Beauty
C++ 3D Engine
TriggerOnce.hpp
Go to the documentation of this file.
1#pragma once
2
3#include <string>
4#include "SuperTrigger.hpp"
5
6class Entity;
7
9class TriggerOnce : public SuperTrigger {
10 public:
14
17
20 void OnEnter();
21
24 void OnLeave();
25
28 void OnRemain();
29
31
34 const std::string& GetName() const;
35
37
40 void SetName(const std::string& value);
41
43
46 const std::string& GetTargetFunction() const;
47
49
52 void SetTargetFunction(const std::string& value);
53
55
58 bool GetStartActive() const;
59
61
64 void SetStartActive(bool value);
65
67
70 float GetDelay() const;
71
73
76 void SetDelay(float value);
77
79
83
85
88 void SetTargetEntity(Entity* value);
89
91
95
97
100 void SetCollidedEntity(Entity* value);
101
102 private:
103 std::string name = "DEBUG";
104 std::string targetFunction = "DEBUG";
105 bool startActive = false;
106 float delay = 0;
107 Entity* targetEntity = nullptr;
108 Entity* collidedEntity = nullptr;
109};
Entity containing various components.
Definition: Entity.hpp:16
Super class for triggers to inherit from.
Definition: SuperTrigger.hpp:8
Trigger that can be executed once before going inactive.
Definition: TriggerOnce.hpp:9
void SetTargetFunction(const std::string &value)
Set name of target function.
Definition: TriggerOnce.cpp:25
void SetName(const std::string &value)
Set the name of the trigger.
Definition: TriggerOnce.cpp:17
~TriggerOnce()
Definition: TriggerOnce.cpp:5
Entity * GetCollidedEntity()
Pointer to collided entity.
Definition: TriggerOnce.cpp:53
Entity * GetTargetEntity()
Pointer to target entity.
Definition: TriggerOnce.cpp:45
void SetStartActive(bool value)
Set if trigger is starting active or not.
Definition: TriggerOnce.cpp:33
void SetCollidedEntity(Entity *value)
Set pointer to collided entity.
Definition: TriggerOnce.cpp:57
void OnRemain()
Definition: TriggerOnce.cpp:11
void SetDelay(float value)
Set the delay before the trigger gets active.
Definition: TriggerOnce.cpp:41
void OnEnter()
Definition: TriggerOnce.cpp:7
bool GetStartActive() const
If trigger is starting active or not.
Definition: TriggerOnce.cpp:29
void SetTargetEntity(Entity *value)
Set pointer to target entity.
Definition: TriggerOnce.cpp:49
const std::string & GetName() const
Get the name of the trigger.
Definition: TriggerOnce.cpp:13
void OnLeave()
Definition: TriggerOnce.cpp:9
float GetDelay() const
Get the delay before the trigger gets active.
Definition: TriggerOnce.cpp:37
TriggerOnce()
Definition: TriggerOnce.cpp:3
const std::string & GetTargetFunction() const
Get name of target function.
Definition: TriggerOnce.cpp:21