aboutsummaryrefslogtreecommitdiff
path: root/po/ru/minetest.po
Commit message (Expand)AuthorAge
...
* Update translationsTranslations2019-02-24
* Update minetest.conf.example, settings strings and locale files (#8230)Wuzzy2019-02-14
* Run updatepo.shTranslation2019-02-14
* Update translationsTranslations2019-02-14
* Update translationsTranslations2019-02-02
* Cleanup translation filesLoïc Blot2019-01-28
* Update translationsTranslations2019-01-27
* Run updatepo.shTranslations2019-01-06
* Update translations from WeblateTranslations2019-01-06
* Update minetest.conf.example and run updatepo.sh (#7947)Update Script2018-12-09
* Add translation of LANG_CODE in all languagesEkdohibs2017-08-24
* Fix updatepo.sh and run it.Ekdohibs2017-08-24
* Translated using Weblate (Russian)weqqr2017-06-03
* Translated using Weblate (Russian)Andrew Zyabin2017-06-03
* Translated using Weblate (Russian)Sergey2017-06-03
* Translated using Weblate (Russian)Andrew Zyabin2017-06-03
* Translated using Weblate (Russian)anonymous2017-06-03
* Translated using Weblate (Russian)weqqr2017-06-03
* Translated using Weblate (Russian)Alex “XShell” Schekoldin2017-06-03
* Translated using Weblate (Russian)weqqr2017-06-03
* Translated using Weblate (Russian)Pavel Sokolov2017-06-03
* Translated using Weblate (Russian)weqqr2017-06-03
* Translated using Weblate (Russian)Sergey2017-06-03
* Translated using Weblate (Russian)weqqr2017-06-03
* Translated using Weblate (Russian)Sergey2017-06-03
* Translated using Weblate (Russian)weqqr2017-06-03
* Run updatepo.shLoic Blot2017-05-21
* Translated using Weblate (Russian)weqqr2017-05-21
* Translated using Weblate (Russian)Andrey K2017-05-04
* Footsteps without view bobbing (#5645)Louis Pearson2017-04-25
* Translated using Weblate (Russian)Andrey K2017-04-06
* Translated using Weblate (Russian)Nikolay2016-12-22
* Run updatepo.shest312016-12-14
* Translated using Weblate (Russian)Andrey2016-12-14
* Translated using Weblate (Russian)Maksim Gamarnik2016-12-14
* Translated using Weblate (Russian)Stas Kies2016-12-14
* Run updatepo.shest312016-08-30
* Run updatepo.shest312016-07-12
* Translated using Weblate (Russian)Andrey K2016-05-30
* Translated using Weblate (Russian)Sergey2016-05-30
* Translated using Weblate (Russian)Vasily Pavlov2016-05-30
* Run updatepo.shest312016-05-05
* Translated using Weblate (Russian)Stas Kies2016-05-01
* Translated using Weblate (Russian)Pavel Sokolov2016-05-01
* Translated using Weblate (Russian)Anton Tsyganenko2016-05-01
* Translated using Weblate (Russian)Alex “XShell” Schekoldin2016-05-01
* Translated using Weblate (Russian)Stas Kies2016-05-01
* Update po files, minetest.conf.example and settings_translation_file.cppest312016-02-27
* Translated using Weblate (Russian)Dmitry Smirnov2016-02-27
* Translated using Weblate (Russian)Vasily Pavlov2016-02-27
pan> m_is_own_settings(true), m_write_allowed(write_allowed) { m_settings = new Settings(); m_settings->readConfigFile(filename.c_str()); } LuaSettings::~LuaSettings() { if (m_is_own_settings) delete m_settings; } void LuaSettings::create(lua_State *L, Settings *settings, const std::string &filename) { LuaSettings *o = new LuaSettings(settings, filename); *(void **)(lua_newuserdata(L, sizeof(void *))) = o; luaL_getmetatable(L, className); lua_setmetatable(L, -2); } // garbage collector int LuaSettings::gc_object(lua_State* L) { LuaSettings* o = *(LuaSettings **)(lua_touserdata(L, 1)); delete o; return 0; } // get(self, key) -> value int LuaSettings::l_get(lua_State* L) { NO_MAP_LOCK_REQUIRED; LuaSettings* o = checkobject(L, 1); std::string key = std::string(luaL_checkstring(L, 2)); if (o->m_settings->exists(key)) { std::string value = o->m_settings->get(key); lua_pushstring(L, value.c_str()); } else { lua_pushnil(L); } return 1; } // get_bool(self, key) -> boolean int LuaSettings::l_get_bool(lua_State* L) { NO_MAP_LOCK_REQUIRED; LuaSettings* o = checkobject(L, 1); std::string key = std::string(luaL_checkstring(L, 2)); if (o->m_settings->exists(key)) { bool value = o->m_settings->getBool(key); lua_pushboolean(L, value); } else { // Push default value if (lua_isboolean(L, 3)) lua_pushboolean(L, readParam<bool>(L, 3)); else lua_pushnil(L); } return 1; } // get_np_group(self, key) -> value int LuaSettings::l_get_np_group(lua_State *L) { NO_MAP_LOCK_REQUIRED; LuaSettings *o = checkobject(L, 1); std::string key = std::string(luaL_checkstring(L, 2)); if (o->m_settings->exists(key)) { NoiseParams np; o->m_settings->getNoiseParams(key, np); push_noiseparams(L, &np); } else { lua_pushnil(L); } return 1; } // set(self, key, value) int LuaSettings::l_set(lua_State* L) { NO_MAP_LOCK_REQUIRED; LuaSettings* o = checkobject(L, 1); std::string key = std::string(luaL_checkstring(L, 2)); const char* value = luaL_checkstring(L, 3); SET_SECURITY_CHECK(L, key); if (!o->m_settings->set(key, value)) throw LuaError("Invalid sequence found in setting parameters"); return 0; } // set_bool(self, key, value) int LuaSettings::l_set_bool(lua_State* L) { NO_MAP_LOCK_REQUIRED; LuaSettings* o = checkobject(L, 1); std::string key = std::string(luaL_checkstring(L, 2)); bool value = readParam<bool>(L, 3); SET_SECURITY_CHECK(L, key); o->m_settings->setBool(key, value); return 1; } // set(self, key, value) int LuaSettings::l_set_np_group(lua_State *L) { NO_MAP_LOCK_REQUIRED; LuaSettings *o = checkobject(L, 1); std::string key = std::string(luaL_checkstring(L, 2)); NoiseParams value; read_noiseparams(L, 3, &value); SET_SECURITY_CHECK(L, key); o->m_settings->setNoiseParams(key, value, false); return 0; } // remove(self, key) -> success int LuaSettings::l_remove(lua_State* L) { NO_MAP_LOCK_REQUIRED; LuaSettings* o = checkobject(L, 1); std::string key = std::string(luaL_checkstring(L, 2)); SET_SECURITY_CHECK(L, key); bool success = o->m_settings->remove(key); lua_pushboolean(L, success); return 1; } // get_names(self) -> {key1, ...} int LuaSettings::l_get_names(lua_State* L) { NO_MAP_LOCK_REQUIRED; LuaSettings* o = checkobject(L, 1); std::vector<std::string> keys = o->m_settings->getNames(); lua_newtable(L); for (unsigned int i=0; i < keys.size(); i++) { lua_pushstring(L, keys[i].c_str()); lua_rawseti(L, -2, i + 1); } return 1; } // write(self) -> success int LuaSettings::l_write(lua_State* L) { NO_MAP_LOCK_REQUIRED; LuaSettings* o = checkobject(L, 1); if (!o->m_write_allowed) { throw LuaError("Settings: writing " + o->m_filename + " not allowed with mod security on."); } bool success = o->m_settings->updateConfigFile(o->m_filename.c_str()); lua_pushboolean(L, success); return 1; } // to_table(self) -> {[key1]=value1,...} int LuaSettings::l_to_table(lua_State* L) { NO_MAP_LOCK_REQUIRED; LuaSettings* o = checkobject(L, 1); std::vector<std::string> keys = o->m_settings->getNames(); lua_newtable(L); for (const std::string &key : keys) { lua_pushstring(L, o->m_settings->get(key).c_str()); lua_setfield(L, -2, key.c_str()); } return 1; } void LuaSettings::Register(lua_State* L) { lua_newtable(L); int methodtable = lua_gettop(L); luaL_newmetatable(L, className); int metatable = lua_gettop(L); lua_pushliteral(L, "__metatable"); lua_pushvalue(L, methodtable); lua_settable(L, metatable); // hide metatable from Lua getmetatable() lua_pushliteral(L, "__index"); lua_pushvalue(L, methodtable); lua_settable(L, metatable); lua_pushliteral(L, "__gc"); lua_pushcfunction(L, gc_object); lua_settable(L, metatable); lua_pop(L, 1); // drop metatable luaL_openlib(L, 0, methods, 0); // fill methodtable lua_pop(L, 1); // drop methodtable // Can be created from Lua (Settings(filename)) lua_register(L, className, create_object); } // LuaSettings(filename) // Creates a LuaSettings and leaves it on top of the stack int LuaSettings::create_object(lua_State* L) { NO_MAP_LOCK_REQUIRED; bool write_allowed = true; const char* filename = luaL_checkstring(L, 1); CHECK_SECURE_PATH_POSSIBLE_WRITE(L, filename, &write_allowed); LuaSettings* o = new LuaSettings(filename, write_allowed); *(void **)(lua_newuserdata(L, sizeof(void *))) = o; luaL_getmetatable(L, className); lua_setmetatable(L, -2); return 1; } LuaSettings* LuaSettings::checkobject(lua_State* L, int narg) { NO_MAP_LOCK_REQUIRED; luaL_checktype(L, narg, LUA_TUSERDATA); void *ud = luaL_checkudata(L, narg, className); if (!ud) luaL_typerror(L, narg, className); return *(LuaSettings**) ud; // unbox pointer } const char LuaSettings::className[] = "Settings"; const luaL_Reg LuaSettings::methods[] = { luamethod(LuaSettings, get), luamethod(LuaSettings, get_bool), luamethod(LuaSettings, get_np_group), luamethod(LuaSettings, set), luamethod(LuaSettings, set_bool), luamethod(LuaSettings, set_np_group), luamethod(LuaSettings, remove), luamethod(LuaSettings, get_names), luamethod(LuaSettings, write), luamethod(LuaSettings, to_table), {0,0} };