1
0
Fork 0
mirror of https://github.com/luanti-org/luanti.git synced 2025-06-27 16:36:03 +00:00

Add LuaVoxelManip

This commit is contained in:
kwolekr 2013-06-25 11:02:02 -04:00
parent e47f6fdfe9
commit d6ac3d8d9a
11 changed files with 413 additions and 8 deletions

View file

@ -457,12 +457,40 @@ int ModApiItemMod::l_register_alias_raw(lua_State *L)
return 0; /* number of results */
}
// get_content_id(name)
int ModApiItemMod::l_get_content_id(lua_State *L)
{
NO_MAP_LOCK_REQUIRED;
std::string name = luaL_checkstring(L, 1);
INodeDefManager *ndef = STACK_TO_SERVER(L)->getNodeDefManager();
content_t c = ndef->getId(name);
lua_pushnumber(L, c);
return 1; /* number of results */
}
// get_name_from_content_id(name)
int ModApiItemMod::l_get_name_from_content_id(lua_State *L)
{
NO_MAP_LOCK_REQUIRED;
content_t c = luaL_checkint(L, 1);
INodeDefManager *ndef = STACK_TO_SERVER(L)->getNodeDefManager();
const char *name = ndef->get(c).name.c_str();
lua_pushstring(L, name);
return 1; /* number of results */
}
bool ModApiItemMod::Initialize(lua_State *L,int top) {
bool retval = true;
retval &= API_FCT(register_item_raw);
retval &= API_FCT(register_alias_raw);
retval &= API_FCT(get_content_id);
retval &= API_FCT(get_name_from_content_id);
LuaItemStack::Register(L);