7#include "../Entity/ComponentContainer.hpp"
10class asIScriptContext;
90 const std::vector<Component::Script*>&
GetScripts()
const;
125 asIScriptContext* CreateContext();
126 void CallMessageReceived(
const Message& message);
127 void CallUpdate(
Entity* entity,
float deltaTime);
128 void LoadScriptFile(
const char* fileName, std::string& script);
129 void ExecuteCall(asIScriptContext* context,
const std::string& scriptName);
130 asITypeInfo* GetClass(
const std::string& moduleName,
const std::string& className);
132 bool IsIntersect(
Entity* checker,
Entity* camera)
const;
134 asIScriptEngine* engine;
136 std::vector<Entity*> updateEntities;
137 std::vector<Message> messages;
139 void GetBreakpoints(
const ScriptFile* script);
140 void ClearBreakpoints();
141 std::map<std::string, std::set<int>> breakpoints;
Component controlled by a script.
Definition: Script.hpp:13
Stores components.
Definition: ComponentContainer.hpp:7
Entity containing various components.
Definition: Entity.hpp:16
Singleton class that holds all subsystems.
Definition: Managers.hpp:16
Information about a file containing a script.
Definition: ScriptFile.hpp:8
Handles scripting.
Definition: ScriptManager.hpp:23
const std::vector< Component::Script * > & GetScripts() const
Get all script components.
Definition: ScriptManager.cpp:777
void FillFunctionVector(ScriptFile *scriptFile)
Fetches the functions from the script and fills the scriptfiles vector.
Definition: ScriptManager.cpp:651
Component::Script * CreateScript()
Create script component.
Definition: ScriptManager.cpp:769
void FillPropertyMap(Component::Script *script)
Fetches the properties from the script and fills the map.
Definition: ScriptManager.cpp:598
int GetStringDeclarationID()
Used to get the string identifier used to check if a property is a string.
Definition: ScriptManager.cpp:773
const std::vector< Entity * > & GetUpdateEntities()
Definition: ScriptManager.cpp:965
void ExecuteScriptMethod(const Entity *entity, const std::string &method)
Execute a method on a script.
Definition: ScriptManager.cpp:785
void Update(World &world, float deltaTime)
Update all script entities in the game world.
Definition: ScriptManager.cpp:666
int BuildScript(ScriptFile *script)
Build a script that can later be run.
Definition: ScriptManager.cpp:489
void RegisterUpdate(Entity *entity)
Register an entity to recieve update callbacks.
Definition: ScriptManager.cpp:724
void ClearKilledComponents()
Remove all killed components.
Definition: ScriptManager.cpp:781
void RegisterInput()
Register the input enum.
Definition: ScriptManager.cpp:728
void BuildAllScripts()
Build all scripts in the hymn.
Definition: ScriptManager.cpp:523
Entity * currentEntity
The entity currently being executed.
Definition: ScriptManager.hpp:103
void SendMessage(Entity *recipient, Entity *sender, int type)
Send a message to an entity.
Definition: ScriptManager.cpp:761
Definition: Window.hpp:14
The game world containing all entities.
Definition: World.hpp:14
Definition: BoxShapeEditor.hpp:5
Definition: ResourceView.hpp:12