diff options
Diffstat (limited to 'source/game/scripting')
-rw-r--r-- | source/game/scripting/StarBehaviorLuaBindings.cpp | 2 | ||||
-rw-r--r-- | source/game/scripting/StarBehaviorLuaBindings.hpp | 2 | ||||
-rw-r--r-- | source/game/scripting/StarSongbookLuaBindings.cpp | 21 | ||||
-rw-r--r-- | source/game/scripting/StarSongbookLuaBindings.hpp | 11 |
4 files changed, 34 insertions, 2 deletions
diff --git a/source/game/scripting/StarBehaviorLuaBindings.cpp b/source/game/scripting/StarBehaviorLuaBindings.cpp index 8866746..4bf16f2 100644 --- a/source/game/scripting/StarBehaviorLuaBindings.cpp +++ b/source/game/scripting/StarBehaviorLuaBindings.cpp @@ -4,7 +4,7 @@ namespace Star { -LuaCallbacks LuaBindings::makeBehaviorLuaCallbacks(List<BehaviorStatePtr>* list) { +LuaCallbacks LuaBindings::makeBehaviorCallbacks(List<BehaviorStatePtr>* list) { LuaCallbacks callbacks; callbacks.registerCallback("behavior", [list](Json const& config, JsonObject const& parameters, LuaTable context, Maybe<LuaUserData> blackboard) -> BehaviorStateWeakPtr { diff --git a/source/game/scripting/StarBehaviorLuaBindings.hpp b/source/game/scripting/StarBehaviorLuaBindings.hpp index d2a882b..01c04ab 100644 --- a/source/game/scripting/StarBehaviorLuaBindings.hpp +++ b/source/game/scripting/StarBehaviorLuaBindings.hpp @@ -9,6 +9,6 @@ STAR_CLASS(Root); STAR_CLASS(UniverseClient); namespace LuaBindings { - LuaCallbacks makeBehaviorLuaCallbacks(List<BehaviorStatePtr>* list); + LuaCallbacks makeBehaviorCallbacks(List<BehaviorStatePtr>* list); } } diff --git a/source/game/scripting/StarSongbookLuaBindings.cpp b/source/game/scripting/StarSongbookLuaBindings.cpp new file mode 100644 index 0000000..e2f70a3 --- /dev/null +++ b/source/game/scripting/StarSongbookLuaBindings.cpp @@ -0,0 +1,21 @@ +#include "StarSongbookLuaBindings.hpp" +#include "StarLuaConverters.hpp" + +namespace Star { + +LuaCallbacks LuaBindings::makeSongbookCallbacks(Songbook* songbook) { + LuaCallbacks callbacks; + + callbacks.registerCallbackWithSignature<void, Json, String>("play", bind(mem_fn(&Songbook::play), songbook, _1, _2)); + callbacks.registerCallbackWithSignature<void, String, Vec2F>("keepAlive", bind(mem_fn(&Songbook::keepAlive), songbook, _1, _2)); + callbacks.registerCallbackWithSignature<void>("stop", bind(mem_fn(&Songbook::stop), songbook)); + callbacks.registerCallbackWithSignature<bool>("active", bind(mem_fn(&Songbook::active), songbook)); + callbacks.registerCallbackWithSignature<String>("band", bind(mem_fn(&Songbook::timeSource), songbook)); + callbacks.registerCallbackWithSignature<String>("instrument", bind(mem_fn(&Songbook::instrument), songbook)); + callbacks.registerCallbackWithSignature<bool>("instrumentPlaying", bind(mem_fn(&Songbook::instrumentPlaying), songbook)); + callbacks.registerCallbackWithSignature<Json>("song", bind(mem_fn(&Songbook::song), songbook)); + + return callbacks; +} + +} diff --git a/source/game/scripting/StarSongbookLuaBindings.hpp b/source/game/scripting/StarSongbookLuaBindings.hpp new file mode 100644 index 0000000..cc55ec6 --- /dev/null +++ b/source/game/scripting/StarSongbookLuaBindings.hpp @@ -0,0 +1,11 @@ +#pragma once + +#include "StarLua.hpp" +#include "StarSongbook.hpp" + +namespace Star { + +namespace LuaBindings { + LuaCallbacks makeSongbookCallbacks(Songbook* songbook); +} +} |