Tramway SDK
entities.h
Go to the documentation of this file.
1// Tramway Drifting and Dungeon Exploration Simulator SDK Runtime
2
3#ifndef TRAM_SDK_EXTENSIONS_KITCHENSINK_ENTITIES_H
4#define TRAM_SDK_EXTENSIONS_KITCHENSINK_ENTITIES_H
5
6#include <framework/entity.h>
9
10namespace tram {
11 class RenderComponent;
12 class PhysicsComponent;
13}
14
15namespace tram::Ext::Kitchensink {
16
17class Button : public Entity {
18public:
19 Button(const SharedEntityData&, const ValueArray&);
20 void UpdateParameters(); void SetParameters();
21 void Load(); void Unload(); void Serialize();
22 void EventHandler(Event &event); void MessageHandler(Message& msg);
24 static void Register();
25protected:
28
29 void SwitchState(int);
30
32
33 uint32_t flags;
38 float speed;
39 float pause;
40 float distance;
43
46
47 float progress;
48 float timer;
49 int state;
51};
52
53class Breakable : public Entity {
54public:
57 void Load(); void Unload(); void Serialize();
59 static void Register();
60protected:
63
66};
67
68class Water : public Entity {
69public:
72 void Load(); void Unload(); void Serialize();
74 static void Register();
75protected:
78
81};
82
83class Train : public Entity {
84public:
87 void Load(); void Unload(); void Serialize();
89 static void Register();
90protected:
93
96};
97
98class Pickup : public Entity {
99public:
102 void Load(); void Unload(); void Serialize();
104 static void Register();
105protected:
108
111};
112
113class DebugText : public Entity {
114public:
117 void Load(); void Unload(); void Serialize();
119 static void Register();
120protected:
123
126};
127
128class DebugShape : public Entity {
129public:
132 void Load(); void Unload(); void Serialize();
134 static void Register();
135protected:
138
141};
142
143class TriggerAutosave : public Entity {
144public:
147 void Load(); void Unload(); void Serialize();
149 static void Register();
150protected:
153
156};
157
158class TriggerHurt : public Entity {
159public:
162 void Load(); void Unload(); void Serialize();
164 static void Register();
165protected:
168
171};
172
173class TriggerOnce : public Entity {
174public:
177 void Load(); void Unload(); void Serialize();
179 static void Register();
180protected:
183
186};
187
188class TriggerMultiple : public Entity {
189public:
192 void Load(); void Unload(); void Serialize();
194 static void Register();
195protected:
198
201};
202
203class TriggerPush : public Entity {
204public:
207 void Load(); void Unload(); void Serialize();
209 static void Register();
210protected:
213
216};
217
218class TriggerRemove : public Entity {
219public:
222 void Load(); void Unload(); void Serialize();
224 static void Register();
225protected:
228
231};
232
233class TriggerTeleport : public Entity {
234public:
237 void Load(); void Unload(); void Serialize();
239 static void Register();
240protected:
243
246};
247
249public:
252 void Load(); void Unload(); void Serialize();
254 static void Register();
255protected:
258
261};
262
263}
264
265#endif // TRAM_SDK_EXTENSIONS_KITCHENSINK_ENTITIES_H
Wrapper for an EntityComponent pointer.
Definition: entitycomponent.h:51
Entity base class.
Definition: entity.h:23
Smart wrapper class for Event listeners.
Definition: event.h:69
Definition: entities.h:53
Breakable(const SharedEntityData &, const ValueArray &)
void Load()
Loads an entity.
name_t model
Definition: entities.h:64
Component< RenderComponent > rendercomponent
Definition: entities.h:61
name_t collmodel
Definition: entities.h:65
void UpdateParameters()
Called when Entity::UpdateTransform is called.
Component< PhysicsComponent > physicscomponent
Definition: entities.h:62
void MessageHandler(Message &msg)
Allows entities to receive messages.
void Unload()
Unloads an entity.
void SetParameters()
Called when either Entity::SetLocation or Entity::SetRotation is called.
Essentially a func_door.
Definition: entities.h:17
Component< RenderComponent > rendercomponent
Definition: entities.h:26
float timer
Definition: entities.h:48
float distance
Definition: entities.h:40
vec3 start_pos
Definition: entities.h:44
Button(const SharedEntityData &, const ValueArray &)
Definition: entities.cpp:115
name_t model
Definition: entities.h:34
uint32_t flags
Definition: entities.h:33
void SetParameters()
Called when either Entity::SetLocation or Entity::SetRotation is called.
Definition: entities.cpp:186
void EventHandler(Event &event)
Allows entities to receive events.
Definition: entities.cpp:229
Component< PhysicsComponent > physicscomponent
Definition: entities.h:27
void UpdateParameters()
Called when Entity::UpdateTransform is called.
Definition: entities.cpp:149
name_t GetType()
Returns the type of the entity.
Definition: entities.cpp:111
void MessageHandler(Message &msg)
Allows entities to receive messages.
Definition: entities.cpp:304
float pause
Definition: entities.h:39
void Unload()
Unloads an entity.
Definition: entities.cpp:214
float progress
Definition: entities.h:47
int state
Definition: entities.h:49
vec3 direction
Definition: entities.h:37
name_t sound
Definition: entities.h:41
name_t lightmap
Definition: entities.h:35
void Load()
Loads an entity.
Definition: entities.cpp:191
vec3 origin
Definition: entities.h:36
void Serialize()
Definition: entities.cpp:223
EventListener tick
Definition: entities.h:31
float speed
Definition: entities.h:38
int last_activate
Definition: entities.h:50
static void Register()
Definition: entities.cpp:101
name_t parent
Definition: entities.h:42
quat start_rot
Definition: entities.h:45
Definition: entities.h:128
name_t model
Definition: entities.h:139
void SetParameters()
Called when either Entity::SetLocation or Entity::SetRotation is called.
DebugShape(const SharedEntityData &, const ValueArray &)
void UpdateParameters()
Called when Entity::UpdateTransform is called.
void MessageHandler(Message &msg)
Allows entities to receive messages.
Component< PhysicsComponent > physicscomponent
Definition: entities.h:137
name_t collmodel
Definition: entities.h:140
Component< RenderComponent > rendercomponent
Definition: entities.h:136
void Load()
Loads an entity.
void Unload()
Unloads an entity.
Definition: entities.h:113
Component< PhysicsComponent > physicscomponent
Definition: entities.h:122
void Load()
Loads an entity.
void SetParameters()
Called when either Entity::SetLocation or Entity::SetRotation is called.
DebugText(const SharedEntityData &, const ValueArray &)
name_t collmodel
Definition: entities.h:125
void MessageHandler(Message &msg)
Allows entities to receive messages.
name_t model
Definition: entities.h:124
void UpdateParameters()
Called when Entity::UpdateTransform is called.
void Unload()
Unloads an entity.
Component< RenderComponent > rendercomponent
Definition: entities.h:121
Definition: entities.h:98
name_t collmodel
Definition: entities.h:110
void MessageHandler(Message &msg)
Allows entities to receive messages.
void Unload()
Unloads an entity.
Component< RenderComponent > rendercomponent
Definition: entities.h:106
void Load()
Loads an entity.
void SetParameters()
Called when either Entity::SetLocation or Entity::SetRotation is called.
Component< PhysicsComponent > physicscomponent
Definition: entities.h:107
Pickup(const SharedEntityData &, const ValueArray &)
name_t model
Definition: entities.h:109
void UpdateParameters()
Called when Entity::UpdateTransform is called.
Definition: entities.h:83
name_t collmodel
Definition: entities.h:95
void UpdateParameters()
Called when Entity::UpdateTransform is called.
void SetParameters()
Called when either Entity::SetLocation or Entity::SetRotation is called.
Train(const SharedEntityData &, const ValueArray &)
Component< RenderComponent > rendercomponent
Definition: entities.h:91
name_t model
Definition: entities.h:94
void Load()
Loads an entity.
Component< PhysicsComponent > physicscomponent
Definition: entities.h:92
void MessageHandler(Message &msg)
Allows entities to receive messages.
void Unload()
Unloads an entity.
Definition: entities.h:143
name_t collmodel
Definition: entities.h:155
Component< RenderComponent > rendercomponent
Definition: entities.h:151
void SetParameters()
Called when either Entity::SetLocation or Entity::SetRotation is called.
Component< PhysicsComponent > physicscomponent
Definition: entities.h:152
void MessageHandler(Message &msg)
Allows entities to receive messages.
TriggerAutosave(const SharedEntityData &, const ValueArray &)
name_t model
Definition: entities.h:154
void UpdateParameters()
Called when Entity::UpdateTransform is called.
Definition: entities.h:158
name_t model
Definition: entities.h:169
Component< PhysicsComponent > physicscomponent
Definition: entities.h:167
Component< RenderComponent > rendercomponent
Definition: entities.h:166
void SetParameters()
Called when either Entity::SetLocation or Entity::SetRotation is called.
name_t collmodel
Definition: entities.h:170
void UpdateParameters()
Called when Entity::UpdateTransform is called.
void Unload()
Unloads an entity.
void MessageHandler(Message &msg)
Allows entities to receive messages.
TriggerHurt(const SharedEntityData &, const ValueArray &)
Definition: entities.h:188
void SetParameters()
Called when either Entity::SetLocation or Entity::SetRotation is called.
void UpdateParameters()
Called when Entity::UpdateTransform is called.
TriggerMultiple(const SharedEntityData &, const ValueArray &)
name_t collmodel
Definition: entities.h:200
name_t model
Definition: entities.h:199
Component< RenderComponent > rendercomponent
Definition: entities.h:196
Component< PhysicsComponent > physicscomponent
Definition: entities.h:197
void MessageHandler(Message &msg)
Allows entities to receive messages.
Definition: entities.h:173
Component< PhysicsComponent > physicscomponent
Definition: entities.h:182
void SetParameters()
Called when either Entity::SetLocation or Entity::SetRotation is called.
Component< RenderComponent > rendercomponent
Definition: entities.h:181
void UpdateParameters()
Called when Entity::UpdateTransform is called.
name_t collmodel
Definition: entities.h:185
name_t model
Definition: entities.h:184
void Unload()
Unloads an entity.
TriggerOnce(const SharedEntityData &, const ValueArray &)
void MessageHandler(Message &msg)
Allows entities to receive messages.
void MessageHandler(Message &msg)
Allows entities to receive messages.
Component< PhysicsComponent > physicscomponent
Definition: entities.h:257
name_t collmodel
Definition: entities.h:260
TriggerPlayerMovement(const SharedEntityData &, const ValueArray &)
Component< RenderComponent > rendercomponent
Definition: entities.h:256
void SetParameters()
Called when either Entity::SetLocation or Entity::SetRotation is called.
name_t model
Definition: entities.h:259
void UpdateParameters()
Called when Entity::UpdateTransform is called.
Definition: entities.h:203
void SetParameters()
Called when either Entity::SetLocation or Entity::SetRotation is called.
void MessageHandler(Message &msg)
Allows entities to receive messages.
TriggerPush(const SharedEntityData &, const ValueArray &)
name_t model
Definition: entities.h:214
name_t collmodel
Definition: entities.h:215
Component< RenderComponent > rendercomponent
Definition: entities.h:211
void Unload()
Unloads an entity.
void UpdateParameters()
Called when Entity::UpdateTransform is called.
Component< PhysicsComponent > physicscomponent
Definition: entities.h:212
Definition: entities.h:218
Component< PhysicsComponent > physicscomponent
Definition: entities.h:227
name_t model
Definition: entities.h:229
TriggerRemove(const SharedEntityData &, const ValueArray &)
void MessageHandler(Message &msg)
Allows entities to receive messages.
Component< RenderComponent > rendercomponent
Definition: entities.h:226
void Unload()
Unloads an entity.
name_t collmodel
Definition: entities.h:230
void SetParameters()
Called when either Entity::SetLocation or Entity::SetRotation is called.
void UpdateParameters()
Called when Entity::UpdateTransform is called.
Definition: entities.h:233
Component< RenderComponent > rendercomponent
Definition: entities.h:241
TriggerTeleport(const SharedEntityData &, const ValueArray &)
void MessageHandler(Message &msg)
Allows entities to receive messages.
name_t collmodel
Definition: entities.h:245
Component< PhysicsComponent > physicscomponent
Definition: entities.h:242
name_t model
Definition: entities.h:244
void UpdateParameters()
Called when Entity::UpdateTransform is called.
void SetParameters()
Called when either Entity::SetLocation or Entity::SetRotation is called.
Definition: entities.h:68
Component< PhysicsComponent > physicscomponent
Definition: entities.h:77
void Load()
Loads an entity.
Component< RenderComponent > rendercomponent
Definition: entities.h:76
Water(const SharedEntityData &, const ValueArray &)
name_t collmodel
Definition: entities.h:80
void Unload()
Unloads an entity.
void MessageHandler(Message &msg)
Allows entities to receive messages.
name_t model
Definition: entities.h:79
void UpdateParameters()
Called when Entity::UpdateTransform is called.
void SetParameters()
Called when either Entity::SetLocation or Entity::SetRotation is called.
Definition: value.h:314
Extension containing random stuff that doesn't fit in anywhere else.
Definition: ai.cpp:15
Serialization, i.e.
glm::vec3 vec3
Definition: math.h:11
glm::quat quat
Definition: math.h:12
Event data.
Definition: event.h:24
Message data.
Definition: message.h:16
Basic Entity parameters.
Definition: entity.h:132
Interned string type.
Definition: uid.h:10