// get_gen_notify() int ModApiMapgen::l_get_gen_notify(lua_State *L) { EmergeManager *emerge = getServer(L)->getEmergeManager(); push_flags_string(L, flagdesc_gennotify, emerge->gen_notify_on, emerge->gen_notify_on); lua_newtable(L); int i = 1; for (std::set<u32>::iterator it = emerge->gen_notify_on_deco_ids.begin(); it != emerge->gen_notify_on_deco_ids.end(); ++it) { lua_pushnumber(L, *it); lua_rawseti(L, -2, i); i++; } return 2; }
// get_gen_notify() int ModApiMapgen::l_get_gen_notify(lua_State *L) { NO_MAP_LOCK_REQUIRED; EmergeManager *emerge = getServer(L)->getEmergeManager(); push_flags_string(L, flagdesc_gennotify, emerge->gen_notify_on, emerge->gen_notify_on); lua_newtable(L); int i = 1; for (u32 gen_notify_on_deco_id : emerge->gen_notify_on_deco_ids) { lua_pushnumber(L, gen_notify_on_deco_id); lua_rawseti(L, -2, i); i++; } return 2; }
void push_noiseparams(lua_State *L, NoiseParams *np) { lua_newtable(L); lua_pushnumber(L, np->offset); lua_setfield(L, -2, "offset"); lua_pushnumber(L, np->scale); lua_setfield(L, -2, "scale"); lua_pushnumber(L, np->persist); lua_setfield(L, -2, "persistence"); lua_pushnumber(L, np->lacunarity); lua_setfield(L, -2, "lacunarity"); lua_pushnumber(L, np->seed); lua_setfield(L, -2, "seed"); lua_pushnumber(L, np->octaves); lua_setfield(L, -2, "octaves"); push_flags_string(L, flagdesc_noiseparams, np->flags, np->flags); lua_setfield(L, -2, "flags"); push_v3f(L, np->spread); lua_setfield(L, -2, "spread"); }