Program Listing for File script_system.h

Return to documentation for file (rootex/framework/systems/script_system.h)

#pragma once

#include "system.h"

class ScriptSystem : public System
{
    ScriptSystem();
    ScriptSystem(const ScriptSystem&) = delete;

    Vector<Entity*> m_ScriptEntitiesToInit;
    Vector<Entity*> m_ScriptEntitiesToEnter;

    sol::table m_FluxTweener;

public:
    static ScriptSystem* GetSingleton();

    void addInitScriptEntity(Entity* e);
    void removeInitScriptEntity(Entity* e);

    void addEnterScriptEntity(Entity* e);
    void removeEnterScriptEntity(Entity* e);

    void update(float deltaMilliseconds) override;
    void end() override;
};