LumixEngine/src/script/script_system.h
2013-11-30 17:12:20 +01:00

46 lines
No EOL
902 B
C++

#pragma once
#include "core/lux.h"
#include "core/string.h"
#include "universe/universe.h"
namespace Lux
{
class Renderer;
class Navigation;
class InputSystem;
class LUX_ENGINE_API ScriptSystem
{
public:
ScriptSystem();
~ScriptSystem();
void start();
void stop();
void update(float time_delta);
void setUniverse(Universe* universe);
Universe* getUniverse() const;
Component createScript(Entity entity);
Renderer* getRenderer() const;
void setRenderer(Renderer* renderer);
void setInputSystem(InputSystem* input_system);
InputSystem* getInputSystem() const;
void deserialize(ISerializer& serializer);
void serialize(ISerializer& serializer);
void getScriptPath(Component cmp, string& str);
void setScriptPath(Component cmp, const string& str);
private:
struct ScriptSystemImpl* m_impl;
};
} // ~namespace Lux