galaxy 1.0.0
Real-Time C++23 Game Programming Framework. Built on data-driven design principles and agile software engineering.
Loading...
Searching...
No Matches
LuaScenes.cpp
Go to the documentation of this file.
1
7
8#include <entt/locator/locator.hpp>
9#include <sol/sol.hpp>
10
11#include "galaxy/scene/SceneManager.hpp"
12
13namespace galaxy
14{
15 namespace lua
16 {
18 {
19 auto& lua = entt::locator<sol::state>::value();
20
21 auto scene_type = lua.new_usertype<scene::Scene>("Scene", sol::no_constructor);
22 scene_type["add_system"] = &scene::Scene::add_system;
23 scene_type["load"] = &scene::Scene::load;
24 scene_type["name"] = &scene::Scene::name;
25 scene_type["render"] = &scene::Scene::render;
26 scene_type["unload"] = &scene::Scene::unload;
27 scene_type["update"] = &scene::Scene::update;
28
29 auto scenemanager_type = lua.new_usertype<scene::SceneManager>("SceneManager", sol::no_constructor);
30 scenemanager_type["clear"] = &scene::SceneManager::clear;
31 scenemanager_type["empty"] = &scene::SceneManager::empty;
32 scenemanager_type["load_app"] = &scene::SceneManager::load_app;
33 scenemanager_type["save_app"] = &scene::SceneManager::save_app;
34 scenemanager_type["create"] = &scene::SceneManager::create;
35 scenemanager_type["pop"] = &scene::SceneManager::pop;
36 scenemanager_type["pop_all"] = &scene::SceneManager::pop_all;
37 scenemanager_type["push"] = &scene::SceneManager::push;
38 scenemanager_type["render"] = &scene::SceneManager::render;
39 scenemanager_type["set"] = &scene::SceneManager::set;
40 scenemanager_type["top"] = &scene::SceneManager::top;
41 scenemanager_type["update"] = &scene::SceneManager::update;
42 }
43 } // namespace lua
44} // namespace galaxy
void inject_scene_control()
Definition LuaScenes.cpp:17
Animated.cpp galaxy.
Definition Animated.cpp:16