diff options
Diffstat (limited to 'src/client/lua_api/scene/igeneric.cpp')
| -rw-r--r-- | src/client/lua_api/scene/igeneric.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/src/client/lua_api/scene/igeneric.cpp b/src/client/lua_api/scene/igeneric.cpp index 63bf4bc..dcac022 100644 --- a/src/client/lua_api/scene/igeneric.cpp +++ b/src/client/lua_api/scene/igeneric.cpp @@ -161,6 +161,23 @@ int iscenesetscale(lua_State *L){ } /*** +Sets the visibility of this scene element +@function iscenenode:setvisible(bool) +@tparam boolean visible Sets the visibility for this element +*/ +//setvisible(true|false) +int iscenesetvisible(lua_State *L){ + int visible = lua_toboolean(L,-1); + lua_pop(L,1); + lua_getfield(L, -1, "node"); + ISceneNode *i = (ISceneNode*)lua_touserdata(L,-1);//{node=ud_ISceneNode}, ud_ISceneNode + lua_pop(L,2); + + i->setVisible(visible == 1); + return 0; +} + +/*** Get the scale of this scene element. @function iscenenode:getscale() @treturn vector3d The scale scale of this element. @@ -208,5 +225,6 @@ extern const luaL_reg igeneric_m[] = { {"setscale", iscenesetscale}, {"getscale", iscenegetscale}, {"remove", isceneremove}, + {"setvisible", iscenesetvisible}, {0, 0}, }; |
