diff options
Diffstat (limited to 'source/game/scripting/StarRootLuaBindings.hpp')
-rw-r--r-- | source/game/scripting/StarRootLuaBindings.hpp | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/source/game/scripting/StarRootLuaBindings.hpp b/source/game/scripting/StarRootLuaBindings.hpp new file mode 100644 index 0000000..8d1bda4 --- /dev/null +++ b/source/game/scripting/StarRootLuaBindings.hpp @@ -0,0 +1,60 @@ +#ifndef STAR_ROOT_LUA_BINDINGS_HPP +#define STAR_ROOT_LUA_BINDINGS_HPP + +#include "StarRect.hpp" +#include "StarGameTypes.hpp" +#include "StarLua.hpp" + +namespace Star { + +STAR_CLASS(Root); + +namespace LuaBindings { + LuaCallbacks makeRootCallbacks(); + + namespace RootCallbacks { + Json assetJson(Root* root, String const& path); + Json makeCurrentVersionedJson(Root* root, String const& identifier, Json const& content); + Json loadVersionedJson(Root* root, Json const& versionedJson, String const& expectedIdentifier); + double evalFunction(Root* root, String const& arg1, double arg2); + double evalFunction2(Root* root, String const& arg1, double arg2, double arg3); + Vec2U imageSize(Root* root, String const& arg1); + List<Vec2I> imageSpaces(Root* root, String const& arg1, Vec2F const& arg2, float arg3, bool arg4); + RectU nonEmptyRegion(Root* root, String const& arg1); + Json npcConfig(Root* root, String const& arg1); + float projectileGravityMultiplier(Root* root, String const& arg1); + Json projectileConfig(Root* root, String const& arg1); + Json recipesForItem(Root* root, String const& arg1); + String itemType(Root* root, String const& itemName); + Json itemTags(Root* root, String const& itemName); + bool itemHasTag(Root* root, String const& itemName, String const& itemTag); + Json itemConfig(Root* root, Json const& descriptor, Maybe<float> const& level, Maybe<uint64_t> const& seed); + Json createItem(Root* root, Json const& descriptor, Maybe<float> const& level, Maybe<uint64_t> const& seed); + Json tenantConfig(Root* root, String const& tenantName); + JsonArray getMatchingTenants(Root* root, StringMap<unsigned> const& colonyTags); + Json liquidStatusEffects(Root* root, LiquidId arg1); + String generateName(Root* root, String const& rulesAsset, Maybe<uint64_t> seed); + Json questConfig(Root* root, String const& templateId); + JsonArray npcPortrait(Root* root, + String const& portraitMode, + String const& species, + String const& typeName, + float level, + Maybe<uint64_t> seed, + Maybe<JsonObject> const& parameters); + Json npcVariant(Root* root, + String const& species, + String const& typeName, + float level, + Maybe<uint64_t> seed, + Maybe<JsonObject> const& parameters); + JsonArray monsterPortrait(Root* root, String const& typeName, Maybe<JsonObject> const& parameters); + bool isTreasurePool(Root* root, String const& pool); + JsonArray createTreasure(Root* root, String const& pool, float level, Maybe<uint64_t> seed); + Maybe<String> materialMiningSound(Root* root, String const& materialName, Maybe<String> const& modName); + Maybe<String> materialFootstepSound(Root* root, String const& materialName, Maybe<String> const& modName); + } +} +} + +#endif |