4#include "hellfire/ecs/ScriptComponent.h"
6#include "hellfire/ecs/TransformComponent.h"
8#include <glm/detail/type_mat.hpp>
17 for (
auto *script: script_components_) {
22 void Entity::update_scripts(
const float delta_time)
const {
23 for (
auto *script: script_components_) {
24 if (script->is_enabled()) {
25 script->update(delta_time);
31 for (
auto *script: script_components_) {
37 for (
auto *script: script_components_) {
38 script->trigger_event(event_name, data);
46 <<
"' missing TransformComponent, auto-creating\n";
const std::string & get_name() const
const TransformComponent * transform() const
TransformComponent * transform()
const std::vector< ScriptComponent * > & get_script_components() const
void initialize_scripts() const
void cleanup_scripts() const
std::vector< ScriptComponent * > script_components_
void broadcast_event(const std::string &event_name, void *data=nullptr) const